⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 check_list.c

📁 c unit test framework
💻 C
字号:
#include <string.h>#include <stdlib.h>#include "check.h"#include "check_list.h"#include "check_check.h"START_TEST(test_create){  List *lp;  lp = check_list_create();  fail_unless (list_val(lp) == NULL,	       "Current list value should be NULL for newly created list");  fail_unless (list_at_end(lp),	       "Newly created list should be at end");  list_advance(lp);  fail_unless (list_at_end(lp),	       "Advancing a list at end should produce a list at end");  list_free (lp);}END_TESTSTART_TEST(test_free){  List *lp = check_list_create();  list_add_end (lp, "abc");  list_add_end (lp, "123");  list_add_end (lp, NULL);  list_free (lp);}END_TESTSTART_TEST(test_add_end){  List * lp = check_list_create();  const char * tval = "abc";    list_add_end (lp, tval);    fail_unless (list_val (lp) != NULL,	       "List current val should not be null after new insertion");  fail_unless (!list_at_end (lp),	       "List should be at end after new insertion");  fail_unless (strcmp(tval, (char *) list_val (lp)) == 0,	       "List current val should equal newly inserted val");}END_TESTSTART_TEST(test_add_a_bunch){  List *lp;  int i, j;  for (i = 0; i < 3; i++) {    lp = check_list_create();    for (j = 0; j < 1000; j++)      list_add_end (lp, "abc");    list_free(lp);  }}END_TESTSTART_TEST(test_add_end_and_next){  List *lp = check_list_create();  const char *tval1 = "abc";  const char *tval2 = "123";    list_add_end (lp, tval1);  list_add_end (lp, tval2);  list_front(lp);  fail_unless (strcmp (tval1, list_val (lp)) == 0,	       "List head val should equal first inserted val");  list_advance (lp);  fail_unless (!list_at_end (lp),	       "List should not be at end after two adds and one next");  fail_unless (strcmp (tval2, list_val (lp)) == 0,	       "List val should equal second inserted val");  list_advance(lp);  fail_unless (list_at_end (lp),	       "List should be at and after two adds and two nexts");  list_free (lp);}END_TESTSuite *make_list_suite (void){  Suite *s = suite_create("Lists");  TCase * tc = tcase_create("Core");  suite_add_tcase (s, tc);  tcase_add_test (tc, test_create);  tcase_add_test (tc, test_add_end);  tcase_add_test (tc, test_add_end_and_next);  tcase_add_test (tc, test_add_a_bunch);  tcase_add_test (tc, test_free);  return s;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -