コード例 #1
0
ファイル: main.c プロジェクト: KeKoFra/SS2013_INF
void test_many_list_SearchId(void)
{
	int id;

	id = 136645; list_Insert (&l, "Stud 1", id);
	id = 346356; list_Insert (&l, "Stud 2", id);
	id = 758476; list_Insert (&l, "Stud 3", id);
	id = 245653; list_Insert (&l, "Stud 4", id);
	id = 567468; list_Insert (&l, "Stud 5", id);

	CU_ASSERT_EQUAL(list_SearchId(l, 758476)->id, 758476);
	CU_ASSERT_NOT_EQUAL(list_SearchId(l, 245653)->id, 346356);

	free(l);
	l = NULL;
}
コード例 #2
0
ファイル: main.c プロジェクト: KeKoFra/SS2013_INF
void test_one_list_SearchId(void)
{
	int id = 354543;
	list_Insert (&l, "Stud", id);

	CU_ASSERT_EQUAL(list_SearchId(l, 354543)->id, 354543);
	CU_ASSERT_NOT_EQUAL(list_SearchId(l, 354543)->id, 346356);

	free(l);
	l = NULL;
}
コード例 #3
0
ファイル: main.c プロジェクト: KeKoFra/SS2013_INF
int main (void)
{
	#ifdef CUNIT_TEST
	
	CU_pSuite Suite1 = NULL; 
	CU_pTest Test1,Test2,Test3 = NULL;

	if (CUE_NOMEMORY == CU_initialize_registry())
	{
		printf("\n Initialisierung der Test Registry fehlgeschlagen.");
		return -1;
	}
	
	Suite1 = CU_add_suite("list_searchId",NULL,NULL);
	
	Test1 = CU_add_test(Suite1,"Teste Funktion list_SearchId wenn Liste leer", test_empty_list_SearchId);
	Test2 = CU_add_test(Suite1,"Teste Funktion list_SearchId wenn ein Element in Liste", test_one_list_SearchId);
	Test3 = CU_add_test(Suite1,"Teste Funktion list_SearchId wenn mehrere Elemente in Liste", test_many_list_SearchId);

	CU_automated_run_tests();

	CU_cleanup_registry();

	#endif

	#ifdef USE_ORIGINAL

	int n;
	int i, id;
	Student * p;

	//assert(0);

    srand (time(NULL)); /* Zufallsgenerator initialisieren */

	printf ("\nAnzahl der Elemente fuer die Liste: ");
	scanf ("%i", &n);

	/* Einfügen von Studenten in die Liste */
	
		for (i = 0; i < n; i++)
		{ 
			id = rand()+1;
			list_Insert (&l, "Dummy, Yummy", id);
		}

	/* Testausgabe der Liste, bei groesserer Zahl auskommentieren */
	list_Print (l, stdout);

	/* Testen der Suchfunktion, bei Messungen auskommentieren */
	printf ("\nMatrikelnummer eingeben: ");
	scanf ("%i", &id);
	p = list_SearchId (l, id);
	if (!p) 
		printf ("Matrikelnummer %i nicht gefunden!\n", id);
	else
		printf("%06d %s\n", p->id, p->name); 
	  
	/* Suchen von Studenten nach zufaelliger Matr. Nr. */
	for (i = 0; i < 1000000; i++) 
	{ 
		id = rand()+1;
		p = list_SearchId (l, id);
	}

	#endif

	#ifdef SPEED_TEST

	int i, c, lp, id;
	int num[16] = { 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768, 65536 };
	int curTest = 0;
	const int requests = 500000;
	clock_t start;

	printf("SPEED-TEST - %i\n=============================", requests);

	for (c = 0; c < 16; c++)
	{
		printf("\n\n%i. %i Elemente\n-----------------------------\n\n", c+1, num[c]);
		
		for (i = 0; i < num[c]; i++)
		{ 
			id = rand()+1;
			list_Insert (&l, "Dummy, Yummy", id);
		}

		start = clock();

		for (lp = 0; lp < requests; lp++)
		{
			id = rand()+1;
			list_SearchId (l, id);
		}

		printf("Dauer: %i\n", clock() - start);

		free(l);
		l = NULL;
	}

	#endif

	return 0;
}
コード例 #4
0
ファイル: list.c プロジェクト: JudeSeide/razer_chroma_drivers
void list_Queue(list *l, void *obj)
{
	list_Insert(l, 0, obj);
}