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

📄 check_money.c

📁 c unit test framework
💻 C
字号:
#include <stdlib.h>#include <check.h>#include "money.h"Money *five_dollars;void setup (void){  five_dollars = money_create(5, "USD");}void teardown (void){  money_free (five_dollars);}START_TEST(test_create){  fail_unless (money_amount(five_dollars) == 5,	       "Amount not set correctly on creation");  fail_unless (strcmp(money_currency(five_dollars),"USD") == 0,	       "Currency not set correctly on creation");}END_TESTSTART_TEST(test_neg_create){  Money *m = money_create(-1, "USD");  fail_unless (m == NULL, "NULL should be returned on attempt to create with a negative amount");}END_TESTSTART_TEST(test_zero_create){  Money *m = money_create(0, "USD");  fail_unless (money_amount(m) == 0,	       "Zero is a valid amount of money");}END_TESTSuite *money_suite (void){  Suite *s = suite_create("Money");  TCase *tc_core = tcase_create("Core");  TCase *tc_limits = tcase_create("Limits");  suite_add_tcase (s, tc_core);  suite_add_tcase (s, tc_limits);  tcase_add_test (tc_core, test_create);  tcase_add_checked_fixture (tc_core, setup, teardown);  tcase_add_test (tc_limits, test_neg_create);  tcase_add_test (tc_limits, test_zero_create);  return s;}int main (void){  int nf;  Suite *s = money_suite();  SRunner *sr = srunner_create(s);  srunner_run_all (sr, CK_NORMAL);  nf = srunner_ntests_failed(sr);  srunner_free(sr);  return (nf == 0) ? EXIT_SUCCESS : EXIT_FAILURE;}

⌨️ 快捷键说明

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