Exemplo n.º 1
0
static void test_stSortedSetIterator(CuTest* testCase) {
    sonLibSortedSetTestSetup();
    int32_t i;
    for(i=0; i<size; i++) {
        stSortedSet_insert(sortedSet, stIntTuple_construct(1, input[i]));
    }
    stSortedSetIterator *iterator = stSortedSet_getIterator(sortedSet);
    CuAssertTrue(testCase, iterator != NULL);

    for(i=0; i<sortedSize; i++) {
        CuAssertIntEquals(testCase, sortedInput[i], stIntTuple_getPosition(stSortedSet_getNext(iterator), 0));
    }
    CuAssertTrue(testCase, stSortedSet_getNext(iterator) == NULL);
    stSortedSetIterator *iterator2 = stSortedSet_copyIterator(iterator);
    CuAssertTrue(testCase, iterator2 != NULL);
    for(i=0; i<sortedSize; i++) {
        CuAssertIntEquals(testCase, sortedInput[sortedSize - 1 - i], stIntTuple_getPosition(stSortedSet_getPrevious(iterator), 0));
        CuAssertIntEquals(testCase, sortedInput[sortedSize - 1 - i], stIntTuple_getPosition(stSortedSet_getPrevious(iterator2), 0));
    }
    CuAssertTrue(testCase, stSortedSet_getPrevious(iterator) == NULL);
    CuAssertTrue(testCase, stSortedSet_getPrevious(iterator2) == NULL);
    stSortedSet_destructIterator(iterator);
    stSortedSet_destructIterator(iterator2);
    sonLibSortedSetTestTeardown();
}
Exemplo n.º 2
0
stSortedSetIterator *stSortedSet_getIteratorFrom(stSortedSet *items, void *item) {
    stSortedSetIterator *iterator = stSortedSet_getIterator(items);
    if(avl_t_find(&iterator->traverser, items->sortedSet, item) == NULL) {
        stThrowNew(SORTED_SET_EXCEPTION_ID, "Tried to create an iterator with an item that is not in the list of items");
    }
    stSortedSet_getPrevious(iterator);
    return iterator;
}
Exemplo n.º 3
0
Segment *block_getPrevious(Block_InstanceIterator *iterator) {
	return block_getInstanceP(iterator->block, stSortedSet_getPrevious(iterator->iterator));
}
Exemplo n.º 4
0
Event *eventTree_getPrevious(EventTree_Iterator *iterator) {
	return stSortedSet_getPrevious(iterator);
}
Exemplo n.º 5
0
Face *flower_getPreviousFace(Flower_FaceIterator *faceIterator) {
    return stSortedSet_getPrevious(faceIterator);
}
Exemplo n.º 6
0
Chain *flower_getPreviousChain(Flower_ChainIterator *chainIterator) {
    return stSortedSet_getPrevious(chainIterator);
}
Exemplo n.º 7
0
Group *flower_getPreviousGroup(Flower_GroupIterator *groupIterator) {
    return stSortedSet_getPrevious(groupIterator);
}
Exemplo n.º 8
0
Block *flower_getPreviousBlock(Flower_BlockIterator *blockIterator) {
    return stSortedSet_getPrevious(blockIterator);
}
Exemplo n.º 9
0
Segment *flower_getPreviousSegment(Flower_SegmentIterator *segmentIterator) {
    return stSortedSet_getPrevious(segmentIterator);
}
Exemplo n.º 10
0
End *flower_getPreviousEnd(Flower_EndIterator *endIterator) {
    return stSortedSet_getPrevious(endIterator);
}
Exemplo n.º 11
0
Cap *flower_getPreviousCap(Flower_CapIterator *capIterator) {
    return stSortedSet_getPrevious(capIterator);
}
Exemplo n.º 12
0
Sequence *flower_getPreviousSequence(Flower_SequenceIterator *sequenceIterator) {
    return stSortedSet_getPrevious(sequenceIterator);
}