|
|
@@ -2,6 +2,7 @@
|
|
|
using Gtk;
|
|
|
using crown_tests.tests;
|
|
|
using Newtonsoft.Json;
|
|
|
+using crown_tests.GtkExt;
|
|
|
|
|
|
namespace crown_tests
|
|
|
{
|
|
|
@@ -14,31 +15,41 @@ namespace crown_tests
|
|
|
{
|
|
|
this.Build ();
|
|
|
|
|
|
- twTests.AppendColumn("Name", new Gtk.CellRendererText(), "text", 0);
|
|
|
- twTests.AppendColumn("State", new Gtk.CellRendererText(), "text", 1);
|
|
|
+ twTests.AppendColumn ("Name", new Gtk.CellRendererText ());
|
|
|
+ twTests.AppendColumn ("State", new Gtk.CellRendererText ());
|
|
|
+ TreeViewTemplating.AddRowTemplate(twTests,
|
|
|
+ TreeViewRowTemplate.Create (typeof (TestCategory))
|
|
|
+ .SetBinding ("Name", "Name"));
|
|
|
+ TreeViewTemplating.AddRowTemplate(twTests,
|
|
|
+ TreeViewRowTemplate.Create (typeof (Test))
|
|
|
+ .SetBinding ("Name", "Name")
|
|
|
+ .SetBinding ("State", "LastResult", (x) => object.Equals(x, 0) ? "Passed" : "Failed"));
|
|
|
+ TreeViewTemplating.ApplyTemplating (twTests);
|
|
|
+
|
|
|
|
|
|
LoadConfigData ();
|
|
|
LoadTestsData ();
|
|
|
}
|
|
|
|
|
|
- protected void OnDeleteEvent (object sender, DeleteEventArgs a)
|
|
|
+ protected void OnDeleteEvent(object sender, DeleteEventArgs a)
|
|
|
{
|
|
|
Application.Quit ();
|
|
|
a.RetVal = true;
|
|
|
}
|
|
|
|
|
|
#region "My Code"
|
|
|
+
|
|
|
private void btnCreate_Click(object o, EventArgs args)
|
|
|
{
|
|
|
- var creator = new TestSourceCreator(mContainer, txtTestFolder.Text);
|
|
|
- creator.Create();
|
|
|
+ var creator = new TestSourceCreator (mContainer, txtTestFolder.Text);
|
|
|
+ creator.Create ();
|
|
|
}
|
|
|
|
|
|
private void btnExecute_Click(object o, EventArgs args)
|
|
|
{
|
|
|
- var executor = new TestExecutor(mContainer, txtCrownTestsExe.Text);
|
|
|
- executor.ExecuteAll();
|
|
|
- RefreshData();
|
|
|
+ var executor = new TestExecutor (mContainer, txtCrownTestsExe.Text);
|
|
|
+ executor.ExecuteAll ();
|
|
|
+ RefreshData ();
|
|
|
}
|
|
|
|
|
|
private void LoadConfigData()
|
|
|
@@ -49,29 +60,28 @@ namespace crown_tests
|
|
|
|
|
|
private void LoadTestsData()
|
|
|
{
|
|
|
- var testsJsonFullfileName = System.IO.Path.Combine(txtTestFolder.Text, "tests.json");
|
|
|
- mContainer = JsonConvert.DeserializeObject<TestContainer>(System.IO.File.ReadAllText(testsJsonFullfileName));
|
|
|
+ var testsJsonFullfileName = System.IO.Path.Combine (txtTestFolder.Text, "tests.json");
|
|
|
+ mContainer = JsonConvert.DeserializeObject<TestContainer> (System.IO.File.ReadAllText (testsJsonFullfileName));
|
|
|
|
|
|
- RefreshData();
|
|
|
+ RefreshData ();
|
|
|
}
|
|
|
|
|
|
private void RefreshData()
|
|
|
{
|
|
|
- var treeStore = twTests.Model as Gtk.TreeStore; // new Gtk.TreeStore(typeof(string), typeof(string));
|
|
|
+ var treeStore = twTests.Model as Gtk.TreeStore;
|
|
|
if (treeStore == null)
|
|
|
- treeStore = new Gtk.TreeStore(typeof(string), typeof(string));
|
|
|
- treeStore.Clear();
|
|
|
- foreach (var category in mContainer.Categories)
|
|
|
- {
|
|
|
- var iter = treeStore.AppendValues(category.Name);
|
|
|
- foreach (var test in category.Tests)
|
|
|
- {
|
|
|
- treeStore.AppendValues(iter, test.Name, test.LastResult == 0 ? "Passed" : "Failed");
|
|
|
+ treeStore = new Gtk.TreeStore (typeof(object));
|
|
|
+ treeStore.Clear ();
|
|
|
+ foreach (var category in mContainer.Categories) {
|
|
|
+ var iter = treeStore.AppendValues (category);
|
|
|
+ foreach (var test in category.Tests) {
|
|
|
+ treeStore.AppendValues (iter, test);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
twTests.Model = treeStore;
|
|
|
}
|
|
|
+
|
|
|
#endregion
|
|
|
}
|
|
|
}
|