]> rtime.felk.cvut.cz Git - frescor/forb.git/blobdiff - src/tests/sequence.c
test: Sequence is initilized to zero
[frescor/forb.git] / src / tests / sequence.c
index 5bf48a3c35036c2e7e0c048fe28d79de8cb50a56..92c544806f645fb959449060d0c767a355c1ea6a 100644 (file)
@@ -17,17 +17,27 @@ WVTEST_MAIN("sequence manipulation")
        int i, *e, foreach_retuned_sum = 0;
        forb_sequence_alloc(s, 10);
        WVPASS(s);
+       WVPASS(forb_sequence_allocated(s) == 10);
+       bool initialized_to_zero = true;
+       for (i=0; i<10; i++)
+               initialized_to_zero &= forb_sequence_elem(s, i) == 0;
+       WVPASS(initialized_to_zero);
+       WVPASS(forb_sequence_elem(s, 9) = 1);
+       WVPASS(forb_sequence_ensure_allocated(s, 1000) != NULL);
+       WVPASS(forb_sequence_allocated(s) == 1000);
+       WVPASS(forb_sequence_elem(s, 9) == 1);
+       WVPASS(forb_sequence_elem(s, 999) = 1);
        CORBA_sequence_set_release(s, 1);
-       WVPASS(forb_sequence_length(*s) == 0);
+       WVPASS(forb_sequence_length(s) == 0);
        forb_sequence_free(s, destructor);
        WVPASS(destructor_called == 0);
 
        forb_sequence_alloc(s, 10);
        WVPASS(s);
        for (i=0; i<10; i++)
-               forb_sequence_elem(*s, i) = i;
-       forb_sequence_length(*s) = 10;
-       WVPASS(forb_sequence_length(*s) == 10);
+               forb_sequence_elem(s, i) = i;
+       forb_sequence_length(s) = 10;
+       WVPASS(forb_sequence_length(s) == 10);
        forb_sequence_free(s, destructor);
        WVPASS(destructor_called == 0);
 
@@ -35,11 +45,11 @@ WVTEST_MAIN("sequence manipulation")
        WVPASS(s);
        CORBA_sequence_set_release(s, 1);
        for (i=0; i<10; i++)
-               forb_sequence_elem(*s, i) = i;
-       forb_sequence_length(*s) = 10;
-       WVPASS(forb_sequence_length(*s) == 10);
+               forb_sequence_elem(s, i) = i;
+       forb_sequence_length(s) = 10;
+       WVPASS(forb_sequence_length(s) == 10);
 
-       forb_sequence_foreach(*s, e) {
+       forb_sequence_foreach(s, e) {
                foreach_retuned_sum += *e;
        }
        WVPASS(foreach_retuned_sum == 45);