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" <astav...@yahoo.co.uk> escribió:

>
>
> ----- Original Message -----
> > From: Felipe Lavratti <felipe...@gmail.com>
> > 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

Reply via email to