Blame src/test.c

Ivan Mahonin d1f083
Ivan Mahonin d1f083
#include "private.h"
Ivan Mahonin d1f083
Ivan Mahonin d1f083
//#define HELI_DO_TESTS
Ivan Mahonin d1f083
Ivan Mahonin d1f083
#ifndef HELI_DO_TESTS
Ivan Mahonin d1f083
void heliDoTests() { }
Ivan Mahonin d1f083
#else
Ivan Mahonin d1f083
Ivan Mahonin d1f083
Ivan Mahonin da4619
static void printStringset(HeliArray *a) {
Ivan Mahonin d1f083
	for(int i = 0; i < a->count; ++i)
Ivan Mahonin d1f083
		printf("  %s\n", (const char*)a->items[i].key);
Ivan Mahonin d1f083
}
Ivan Mahonin d1f083
Ivan Mahonin d1f083
static void testStringSet() {
Ivan Mahonin d1f083
	printf("-- testStringSet\n");
Ivan Mahonin d1f083
	
Ivan Mahonin d1f083
	static char *strings[] = {
Ivan Mahonin d1f083
		"hello",
Ivan Mahonin d1f083
		"apple",
Ivan Mahonin d1f083
		"orange",
Ivan Mahonin d1f083
		"pineapple",
Ivan Mahonin d1f083
		"potato",
Ivan Mahonin d1f083
		"carrot",
Ivan Mahonin d1f083
		"grape",
Ivan Mahonin d1f083
		"cucumber"
Ivan Mahonin d1f083
	};
Ivan Mahonin d1f083
	
Ivan Mahonin d1f083
	HeliArray a = {};
Ivan Mahonin d1f083
	for(int i = 0; i < (int)(sizeof(strings)/sizeof(*strings)); ++i)
Ivan Mahonin d1f083
		heliStringmapAdd(&a, strings[i], NULL, NULL);
Ivan Mahonin d1f083
	
Ivan Mahonin d1f083
	printf("  fill:\n");
Ivan Mahonin d1f083
	printStringset(&a);
Ivan Mahonin d1f083
	
Ivan Mahonin d1f083
	printf("\n -remove %s:\n", "hello");
Ivan Mahonin d1f083
	heliStringmapRemove(&a, "hello");
Ivan Mahonin d1f083
	printStringset(&a);
Ivan Mahonin d1f083
Ivan Mahonin d1f083
	printf("\n -remove %s:\n", "apple");
Ivan Mahonin d1f083
	heliStringmapRemove(&a, "apple");
Ivan Mahonin d1f083
	printStringset(&a);
Ivan Mahonin d1f083
	
Ivan Mahonin d1f083
	printf("\n -remove %s:\n", "potato");
Ivan Mahonin d1f083
	heliStringmapRemove(&a, "potato");
Ivan Mahonin d1f083
	printStringset(&a);
Ivan Mahonin d1f083
	
Ivan Mahonin d1f083
	heliArrayDestroy(&a);
Ivan Mahonin d1f083
Ivan Mahonin d1f083
	printf("-- end\n");
Ivan Mahonin d1f083
}
Ivan Mahonin d1f083
Ivan Mahonin d1f083
void heliDoTests() {
Ivan Mahonin d1f083
	printf("---- doTests\n");
Ivan Mahonin d1f083
	testStringSet();
Ivan Mahonin d1f083
	printf("---- end\n");
Ivan Mahonin d1f083
}
Ivan Mahonin d1f083
Ivan Mahonin d1f083
#endif