1 /*******************************************************
2 * Unit test for the hour class
4 * test hour add and subtract expressions
5 ******************************************************
15 hour period0(11, 45, 30);
20 std::cout << h0 << " + " << period0 << " = " << h2 << "\n";
21 assert(h2 == hour(26, 8, 15));
23 std::cout << h0 << " += " << period0 << " = ";
25 std::cout << h0 << "\n";
26 assert(h0 == hour(26, 8, 15));
28 // 11:05:30 - 1:20:40 = 9:44:50
30 hour period1(1, 20, 40);
33 std::cout << h1 << " - " << period1 << " = " << h2 << "\n";
34 assert(h2 == hour(9, 44, 50));
36 std::cout << h1 << " -= " << period1 << " = ";
38 std::cout << h1 << "\n";
40 assert(h1 == hour(9, 44, 50));
42 // The increment operator
45 std::cout << h3 << "++ = ";
47 std::cout << h3 << "\n";
48 assert(h3 == hour(23, 0, 0));
51 std::cout << "++" << h4 << " = ";
53 std::cout << h4 << "\n";
54 assert(h4 == hour(23, 0, 0));
56 // The decrement operator
59 std::cout << h5 << "-- = ";
61 std::cout << h5 << "\n";
62 assert(h5 == hour(21, 59, 59));
65 std::cout << "--" << h6 << " = ";
67 std::cout << h6 << "\n";
68 assert(h6 == hour(21, 59, 59));
70 // Adding an integer number of seconds
77 std::cout << h7 << " + " << s7 << " seconds = " << h8 << "\n";
78 assert(h8 == hour(16, 19, 25));
80 std::cout << h7 << " += " << s7 << " seconds = ";
82 std::cout << h7 << "\n";
83 assert(h7 == hour(16, 19, 25));
85 // Subtracting an integer number of seconds
92 std::cout << h11 << " - " << s11 << " seconds = " << h12 << "\n";
93 assert(h12 == hour(12, 26, 05));
95 std::cout << h11 << " -= " << s11 << " seconds = ";
97 std::cout << h11 << "\n";
98 assert(h11 == hour(12, 26, 05));