Steven, Since you brought it, I took the liberty to commit a project template with my current setup of using Atom + Vala + Gee TestCase + Cmake.
It is here: https://github.com/felipe-lavratti/vala-unittests-cmake Hope it helps. On Thu, Feb 4, 2016 at 9:09 PM, Steven Oliver <oliver.ste...@gmail.com> wrote: > I'm in the process of implementing the gee test suite into my project. So far > so good. The test suite was easy to figure out. So far my biggest problem has > been trying to figure out how to setup CMake for it all to work. > > Thank you, > Steven N. Oliver > > > > > > On Thu, Feb 4, 2016 at 3:07 PM -0800, "Chris Daley" <chebiza...@gmail.com> > wrote: > > > > > > > > > > > You may also find the Gee.TestCase class suits your needs - it certainly > makes the tests easier to read and is more xUnit like in its approach than > the 'naked' GLib Test classes. > > https://esite.ch/2012/06/writing-tests-for-vala/ > > Gives a good overview - and if I recall the GXml tests that Daniel > mentioned uses it as well. > > Cheers > Chris D > > 2016-02-04 14:09 GMT-08:00 Daniel Espinosa : > >> GXml have a test suite may you want to check. I has more than 50 tests >> cases. >> El feb. 4, 2016 3:04 PM, "Al Thomas" escribió: >> >> > >> > >> > ----- Original Message ----- >> > > From: Felipe Lavratti >> > > Sent: Thursday, 4 February 2016, 20:18 >> > > Subject: [Vala] Using TestCase class: assert (this is Object) fails in >> > method, but not in constructor >> > > >> > > Have a look at this code: >> > > >> > > public class Tests : Object { >> > > >> > > public Tests () { >> > > assert (this is Object); // THIS ASSERTION PASSES >> > > ts = new TestSuite ("dot_cap_dimmer") ; >> > > ts.add (new TestCase ("construction", (TestFixtureFunc) >> > > setup, (TestFixtureFunc) test_construction, (TestFixtureFunc) >> > > teardown)) ; >> > > TestSuite.get_root ().add_suite (ts) ; >> > > } >> > > >> > > void setup(void * fixture) { >> > > assert (this is Object); // THIS ASSERTION FAILS >> > > this.cut = new DotCapDimmer () ; >> > > this.cut.on_change.connect (slot) ; >> > > this.called = false ; >> > > } >> > > ... >> > > } >> > > >> > > Would anyone know what happens to the `this` variable when called >> > > from the TestCase ? How came it is no longer an Object anymore ? >> > >> > >> > You need to instantiate your fixture so it has `this` to act upon. >> > Your fixture should be a separate object to the test. >> > As an outline; >> > >> > >> > void main( string[] args ) { >> > >> > Test.init(ref args); >> > TestSuite suite = new TestSuite( "DotCapDimmer" ); >> > TestSuite.get_root ().add_suite (suite); >> > >> > MyTestFixture fixture = new MyTestFixture(); >> > suite.add( new TestCase ( "MyFirstTestCase", fixture.set_up, >> > (TestFixtureFunc)test_my_first_test, fixture.tear_down )); >> > Test.run(); >> > } >> > >> > void test_my_first_test( MyTestFixture fixture ) { >> > // do testing >> > >> > } >> > >> > >> > >> > I put the test in a namespace like >> > UnitTest.ModuleDirectory.FilenameOfClassToBeTested >> > >> > There is also g_test_add_data_func_full () instead, but I haven't used >> > that yet. >> > >> > Al >> > _______________________________________________ >> > vala-list mailing list >> > vala-list@gnome.org >> > https://mail.gnome.org/mailman/listinfo/vala-list >> > >> _______________________________________________ >> vala-list mailing list >> vala-list@gnome.org >> https://mail.gnome.org/mailman/listinfo/vala-list >> > > > > -- > Chris Daley > Pacific Northwest > > e: chebiza...@gmail.com > w: http://chrisdaley.biz > m: +1601 980 1249 > s: chebizarro > tw: chebizarro > tz: PDT > _______________________________________________ > vala-list mailing list > vala-list@gnome.org > https://mail.gnome.org/mailman/listinfo/vala-list > > > > > > _______________________________________________ > vala-list mailing list > vala-list@gnome.org > https://mail.gnome.org/mailman/listinfo/vala-list -- Skype: felipeanl _______________________________________________ vala-list mailing list vala-list@gnome.org https://mail.gnome.org/mailman/listinfo/vala-list