@@ -37,4 +37,25 @@ public void Reject_traversals_with_repeated_items()
3737 {
3838 Assert . Throws < ArgumentException > ( ( ) => Satellite . TreeFromTraversals ( [ 'a' , 'b' , 'a' ] , [ 'b' , 'a' , 'a' ] ) ) ;
3939 }
40+
41+ [ Fact ( Skip = "Remove this Skip property to run this test" ) ]
42+ public void A_degenerate_binary_tree ( )
43+ {
44+ var expected = new Tree ( 'a' , new Tree ( 'b' , new Tree ( 'c' , new Tree ( 'd' , null , null ) , null ) , null ) , null ) ;
45+ Assert . Equal ( expected , Satellite . TreeFromTraversals ( [ 'a' , 'b' , 'c' , 'd' ] , [ 'd' , 'c' , 'b' , 'a' ] ) ) ;
46+ }
47+
48+ [ Fact ( Skip = "Remove this Skip property to run this test" ) ]
49+ public void Another_degenerate_binary_tree ( )
50+ {
51+ var expected = new Tree ( 'a' , null , new Tree ( 'b' , null , new Tree ( 'c' , null , new Tree ( 'd' , null , null ) ) ) ) ;
52+ Assert . Equal ( expected , Satellite . TreeFromTraversals ( [ 'a' , 'b' , 'c' , 'd' ] , [ 'a' , 'b' , 'c' , 'd' ] ) ) ;
53+ }
54+
55+ [ Fact ( Skip = "Remove this Skip property to run this test" ) ]
56+ public void Tree_with_many_more_items ( )
57+ {
58+ 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 ) ) ) ;
59+ Assert . Equal ( expected , Satellite . TreeFromTraversals ( [ 'a' , 'b' , 'd' , 'g' , 'h' , 'c' , 'e' , 'f' , 'i' ] , [ 'g' , 'd' , 'h' , 'b' , 'a' , 'e' , 'c' , 'i' , 'f' ] ) ) ;
60+ }
4061}
0 commit comments