From c827bf878268574860643b36f596929bc640b3c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A1s=20B=20Nagy?= <20251272+BNAndras@users.noreply.github.com> Date: Sun, 4 Jan 2026 18:13:35 -0800 Subject: [PATCH] sync `satellite` tests --- exercises/practice/satellite/.meta/tests.toml | 9 ++++++++ .../practice/satellite/SatelliteTests.cs | 21 +++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/exercises/practice/satellite/.meta/tests.toml b/exercises/practice/satellite/.meta/tests.toml index b32dc3b136..d0ed5b6ac5 100644 --- a/exercises/practice/satellite/.meta/tests.toml +++ b/exercises/practice/satellite/.meta/tests.toml @@ -26,3 +26,12 @@ description = "Reject inconsistent traversals of same length" [d86a3d72-76a9-43b5-9d3a-e64cb1216035] description = "Reject traversals with repeated items" + +[af31ae02-7e5b-4452-a990-bccb3fca9148] +description = "A degenerate binary tree" + +[ee54463d-a719-4aae-ade4-190d30ce7320] +description = "Another degenerate binary tree" + +[87123c08-c155-4486-90a4-e2f75b0f3e8f] +description = "Tree with many more items" diff --git a/exercises/practice/satellite/SatelliteTests.cs b/exercises/practice/satellite/SatelliteTests.cs index fbb286d9bd..5a56729418 100644 --- a/exercises/practice/satellite/SatelliteTests.cs +++ b/exercises/practice/satellite/SatelliteTests.cs @@ -37,4 +37,25 @@ public void Reject_traversals_with_repeated_items() { Assert.Throws(() => Satellite.TreeFromTraversals(['a', 'b', 'a'], ['b', 'a', 'a'])); } + + [Fact(Skip = "Remove this Skip property to run this test")] + public void A_degenerate_binary_tree() + { + var expected = new Tree('a', new Tree('b', new Tree('c', new Tree('d', null, null), null), null), null); + Assert.Equal(expected, Satellite.TreeFromTraversals(['a', 'b', 'c', 'd'], ['d', 'c', 'b', 'a'])); + } + + [Fact(Skip = "Remove this Skip property to run this test")] + public void Another_degenerate_binary_tree() + { + var expected = new Tree('a', null, new Tree('b', null, new Tree('c', null, new Tree('d', null, null)))); + Assert.Equal(expected, Satellite.TreeFromTraversals(['a', 'b', 'c', 'd'], ['a', 'b', 'c', 'd'])); + } + + [Fact(Skip = "Remove this Skip property to run this test")] + public void Tree_with_many_more_items() + { + var expected = new Tree('a', new Tree('b', new Tree('d', new Tree('g', null, null), new Tree('h', null, null)), null), new Tree('c', new Tree('e', null, null), new Tree('f', new Tree('i', null, null), null))); + Assert.Equal(expected, Satellite.TreeFromTraversals(['a', 'b', 'd', 'g', 'h', 'c', 'e', 'f', 'i'], ['g', 'd', 'h', 'b', 'a', 'e', 'c', 'i', 'f'])); + } }