From 90015b93cd8d06f35d211ce65e2c9000e5fb4336 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Bruyère Date: Tue, 28 Jan 2020 07:24:29 +0100 Subject: unit test with iFace updates (layouting/clipping/drawing), chmod clean --- Samples/BasicTests/BasicTests.cs | 220 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 220 insertions(+) create mode 100644 Samples/BasicTests/BasicTests.cs (limited to 'Samples/BasicTests/BasicTests.cs') diff --git a/Samples/BasicTests/BasicTests.cs b/Samples/BasicTests/BasicTests.cs new file mode 100644 index 00000000..1360b652 --- /dev/null +++ b/Samples/BasicTests/BasicTests.cs @@ -0,0 +1,220 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Reflection; +using Crow; + +namespace tests +{ + public class BasicTests : Interface + { + [STAThread] + static void Main () + { + using (BasicTests app = new BasicTests ()) { + app.Run (); + } + } + + protected override void Startup () + { + Commands = new List (new Crow.Command [] { + new Crow.Command(new Action(() => command1())) { Caption = "command1"}, + new Crow.Command(new Action(() => command2())) { Caption = "command2"}, + new Crow.Command(new Action(() => command3())) { Caption = "command3"}, + new Crow.Command(new Action(() => command4())) { Caption = "command4"}, + }); + + // += KeyboardKeyDown1; + + //testFiles = new string [] { @"Interfaces/Experimental/testDock.crow" }; + testFiles = new string [] { @"Interfaces/Divers/welcome.crow" }; + //testFiles = new string [] { @"Interfaces/Divers/testSlider.crow" }; + //testFiles = new string [] { @"Interfaces/Divers/colorPicker.crow" }; + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/GraphicObject", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Container", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Group", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Stack", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/TemplatedControl", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/TemplatedContainer", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/TemplatedGroup", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Splitter", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Wrapper", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Divers", "*.crow")).ToArray (); + testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/DragAndDrop", "*.crow")).ToArray (); + //testFiles = testFiles.Concat (Directory.GetFiles (@"Interfaces/Experimental", "*.crow")).ToArray (); + + Load (testFiles [idx]).DataSource = this; + } + + int idx = 0; + string [] testFiles; + + public Version CrowVersion { + get { + return System.Reflection.Assembly.GetAssembly (typeof (Widget)).GetName ().Version; + } + } + + public override bool OnKeyDown (Key key) + { + try { + switch (key) { + case Key.Escape: + Quit (); + break; + case Key.F2: + idx--; + break; + case Key.F3: + idx++; + break; + case Key.F1: + TestList.Add ("new string"); + NotifyValueChanged ("TestList", TestList); + break; + case Key.F4: + Load ("Interfaces/TemplatedContainer/testWindow.goml").DataSource = this; + return false; + case Key.F5: + Load ("Interfaces/Divers/testFileDialog.crow").DataSource = this; + return false; + case Key.F6: + Load ("Interfaces/Divers/0.crow").DataSource = this; + return false; + case Key.F7: + Load ("Interfaces/Divers/perfMeasures.crow").DataSource = this; + return false; + default: + return base.OnKeyDown (key); + } + + ClearInterface (); + + if (idx == testFiles.Length) + idx = 0; + else if (idx < 0) + idx = testFiles.Length - 1; + + Console.WriteLine ($"Loading {testFiles [idx]}."); + + Load (testFiles [idx]).DataSource = this; + } catch (Exception ex) { + (LoadIMLFragment ($"