errors/unit-test/Days-in-month/3/all-tests.c - Testdriver (uændret) og en alsidig variant af main som både rummer normal kørsel og testkørsel. | Lektion 7 - slide 18 : 25 Program 8 |
#include <stdio.h> #include "CuTest.h" int daysInMonth(int month, int yr); int isLeapYear(int yr); void RunAllTests(void) { CuString *output = CuStringNew(); CuSuite* suite = CuSuiteNew(); // Adding test suites: CuSuiteAddSuite(suite, (CuSuite*)daysInMonthGetSuite()); CuSuiteAddSuite(suite, (CuSuite*)isLeapYearGetSuite()); CuSuiteRun(suite); CuSuiteSummary(suite, output); CuSuiteDetails(suite, output); printf("%s\n", output->buffer); } int main(int argc, char *argv[]) { int mth, yr, i; if (argc == 2 && strcmp(argv[1], "--test") == 0) RunAllTests(); else { do{ printf("Enter a month - a number between 1 and 12: "); scanf("%d", &mth); printf("Enter a year: "); scanf("%d", &yr); printf("There are %d days in month %d in year %d\n", daysInMonth(mth, yr), mth, yr); } while (yr != 0); } return 0; }