GCC Code Coverage Report


Directory: src/gate/
File: src/gate/tests/gatecore_platform_test/test_times.c
Date: 2026-02-03 22:06:38
Exec Total Coverage
Lines: 37 37 100.0%
Functions: 1 1 100.0%
Branches: 17 34 50.0%

Line Branch Exec Source
1 #include "gate/tests.h"
2 #include "test_times.h"
3 #include "gate/times.h"
4
5 1 GATE_TEST_FUNCTION(test_times)
6 {
7 gate_datetime_t dt, dt2;
8 gate_time_t tm, tm2;
9 gate_day_id_t did, did2;
10 char buffer[1024];
11 1 gate_size_t buffer_len = sizeof(buffer);
12
13 1 GATE_TEST_UNIT_BEGIN(test_times);
14
15 1 gate_mem_clear(&dt, sizeof(dt));
16 1 gate_mem_clear(&dt2, sizeof(dt2));
17 1 gate_mem_clear(&tm, sizeof(tm));
18 1 gate_mem_clear(&tm2, sizeof(tm2));
19
20 1 dt.date.year = 2018;
21 1 dt.date.month = 10;
22 1 dt.date.day = 1;
23 1 dt.time.hour = 12;
24 1 dt.time.minute = 30;
25 1 dt.time.second = 45;
26 1 dt.time.microsecond = 500000;
27
28
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_time(&dt, &tm));
29
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_time_to_datetime(&tm, &dt2));
30
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK(gate_mem_compare(&dt, &dt2, sizeof(dt)) == 0);
31
32 1 did = gate_date_to_day_id(&dt.date);
33
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
1 GATE_TEST_CHECK(did != 0);
34
35
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_from_day_id(did, &dt2.date));
36
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK(gate_mem_compare(&dt.date, &dt2.date, sizeof(gate_date_t)) == 0);
37 1 gate_date_day_of_week(did);
38
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK(gate_date_day_of_year(&dt.date) > 0);
39
40 1 gate_date_week_of_year(&dt.date, true);
41 1 gate_date_week_of_year(&dt.date, false);
42
43
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_time(&dt, &tm));
44 1 did2 = gate_time_to_day_id(tm.timestamp);
45
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
1 GATE_TEST_CHECK_EQUAL(did, did2);
46
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_time_from_day_id(did, &tm2.timestamp));
47
1/2
✓ Branch 2 taken 1 times.
✗ Branch 3 not taken.
1 GATE_TEST_CHECK(tm.timestamp > tm2.timestamp);
48
49
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_string(&dt, 60, NULL, buffer, &buffer_len));
50
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_string(&dt, 60, "{YYYY}-{MNA}-{D} {k}:{m}:{s}.{S} {ampm} / {bias}", buffer, &buffer_len));
51
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_string(&dt, 60, "{YY}-{MN}-{DD} {kk}:{mm}:{ss}.{SS} {ampm} / {bias}", buffer, &buffer_len));
52
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_string(&dt, 60, "{YYYY}-{M}-{D} {h}:{m}:{s}.{SSSS}", buffer, &buffer_len));
53
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_string(&dt, 60, "{YYYY}-{MM}-{DD} {hh}:{mm}:{ss}.{SSSSS}", buffer, &buffer_len));
54
1/2
✓ Branch 3 taken 1 times.
✗ Branch 4 not taken.
1 GATE_TEST_CHECK_OK(gate_date_to_string(&dt, 60, "{YYYY}-{MM}-{DD} {hh}:{mm}:{ss}.{SSSSSS}", buffer, &buffer_len));
55
56 1 GATE_TEST_UNIT_END;
57 }
58