ソースを参照

unit tests for topologicalsort errors

Charlie Kindel 5 年 前
コミット
3ab20b658d
1 ファイル変更28 行追加0 行削除
  1. 28 0
      UnitTests/ViewTests.cs

+ 28 - 0
UnitTests/ViewTests.cs

@@ -107,5 +107,33 @@ namespace Terminal.Gui {
 
 			// TODO: Add more
 		}
+
+		[Fact]
+		public void TopologicalSort_Missing_Add ()
+		{
+			var root = new View ();
+			var sub1 = new View ();
+			root.Add (sub1);
+			var sub2 = new View ();
+			sub1.Width = Dim.Width(sub2);
+
+			Assert.Throws<InvalidOperationException> (() => root.LayoutSubviews ());
+
+			sub2.Width = Dim.Width (sub1);
+
+			Assert.Throws<InvalidOperationException> (() => root.LayoutSubviews ());
+		}
+
+		[Fact]
+		public void TopologicalSort_Recursive_Ref ()
+		{
+			var root = new View ();
+			var sub1 = new View ();
+			root.Add (sub1);
+			var sub2 = new View ();
+			root.Add (sub2);
+			sub2.Width = Dim.Width (sub2);
+			Assert.Throws<InvalidOperationException> (() => root.LayoutSubviews ());
+		}
 	}
 }