Skip to content

Commit 5a29c22

Browse files
authored
Merge pull request #30 from NordSecurity/remove_test_hack
Remove workaround for chronological scaffolding test
2 parents 1a5121a + a8baafa commit 5a29c22

File tree

3 files changed

+9
-31
lines changed

3 files changed

+9
-31
lines changed

cpp-tests/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@ target_include_directories(uniffi_${TEST_NAME} PRIVATE scaffolding_tests/${TEST_
4747
add_executable(${TEST_NAME}-scaffolding-test tests/${TEST_NAME}/main.cpp ${BINDINGS_SRC_DIR}/${TEST_NAME}.cpp)
4848
target_include_directories(${TEST_NAME}-scaffolding-test PRIVATE ${BINDINGS_SRC_DIR} include)
4949
target_link_libraries(${TEST_NAME}-scaffolding-test uniffi_${TEST_NAME} Threads::Threads)
50-
target_compile_definitions(${TEST_NAME}-scaffolding-test PRIVATE SCAFFOLDING_TEST=1)
5150

5251
add_test(NAME ${TEST_NAME}-scaffolding-test COMMAND ${TEST_NAME}-scaffolding-test)
5352
memcheck_test(${TEST_NAME}-scaffolding-test)

cpp-tests/scaffolding_tests/chronological/lib_chronological.cpp

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,18 @@ chronological::duration chronological::return_duration(chronological::duration a
1414

1515
std::string chronological::to_string_timestamp(chronological::timestamp a) {
1616
std::time_t time = std::chrono::system_clock::to_time_t(a);
17+
auto ns = std::chrono::duration_cast<std::chrono::nanoseconds>(a.time_since_epoch()).count() % 1000000000;
18+
if (ns < 0) {
19+
ns += 1000000000;
20+
time -= 1;
21+
}
22+
1723
std::tm tm = *std::gmtime(&time);
1824
std::stringstream ss;
1925
ss << std::put_time(&tm, "%Y-%m-%dT%H:%M:%S");
26+
ss<< "." << std::setfill('0') << std::setw(9) << ns;
27+
ss << "Z";
28+
2029
return ss.str();
2130
}
2231

cpp-tests/tests/chronological/main.cpp

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -53,32 +53,6 @@ void test_string_timestamps() {
5353
}
5454
}
5555

56-
void test_scaffolding_string_timestamps() {
57-
{
58-
auto time_str = "1970-01-01T00:00:00";
59-
auto time = time_from_string(time_str);
60-
61-
ASSERT_EQ(time_str, chronological::to_string_timestamp(time));
62-
}
63-
64-
{
65-
auto time_str = "1970-12-31T23:59:58";
66-
auto time = time_from_string(time_str);
67-
68-
ASSERT_EQ(time_str, chronological::to_string_timestamp(time));
69-
}
70-
71-
{
72-
auto time = time_from_string("1979-11-05T00:06:01") + 283000200ns;
73-
auto time2 = time_from_string("1979-11-05T00:06:00") + 283000100ns;
74-
75-
ASSERT_EQ(
76-
time,
77-
chronological::add(time2, time_span_seconds(1, 100))
78-
);
79-
}
80-
}
81-
8256
int main() {
8357
ASSERT_EQ(
8458
epoch_second(101, 110),
@@ -110,11 +84,7 @@ int main() {
11084
chronological::return_duration(std::chrono::nanoseconds::max())
11185
);
11286

113-
#ifdef SCAFFOLDING_TEST
114-
test_scaffolding_string_timestamps();
115-
#else
11687
test_string_timestamps();
117-
#endif
11888

11989
auto before = std::chrono::system_clock::now();
12090
std::this_thread::sleep_for(1s);

0 commit comments

Comments
 (0)