Skip to content

Commit

Permalink
Adapt tests for timestamps
Browse files Browse the repository at this point in the history
Signed-off-by: Julien Jerphanion <git@jjerphan.xyz>
  • Loading branch information
jjerphan committed May 23, 2024
1 parent e13ae41 commit 411eb4c
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 12 deletions.
9 changes: 7 additions & 2 deletions test/array_data_creation.cpp
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
#include "array_data_creation.hpp"

Check notice on line 1 in test/array_data_creation.cpp

View workflow job for this annotation

GitHub Actions / build

Run clang-format on test/array_data_creation.cpp

File test/array_data_creation.cpp does not conform to Custom style guidelines. (lines 19, 20, 30)

#include <date/date.h>
#include <date/tz.h>

namespace sparrow::test
{
using sys_time = std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds>;

using namespace date::literals;

template <>
sparrow::array_data
make_test_array_data<sparrow::timestamp>(size_t n, size_t offset, const std::vector<size_t>& false_bitmap)
Expand All @@ -22,7 +27,7 @@ namespace sparrow::test

for (uint8_t i = 0; i < n; ++i)
{
b.data<sparrow::timestamp>()[i] = sparrow::timestamp(sys_time(std::chrono::system_clock::now()));
b.data<sparrow::timestamp>()[i] = sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(i));
}

ad.buffers.push_back(b);
Expand All @@ -31,4 +36,4 @@ namespace sparrow::test
ad.child_data.emplace_back();
return ad;
}
} // namespace sparrow::test
} // namespace sparrow::test
20 changes: 10 additions & 10 deletions test/test_typed_array_timestamp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,14 +28,14 @@

using namespace sparrow;

// TODO: find a way to create timepoints from integral types.

namespace
{
constexpr size_t n = 10;
constexpr size_t offset = 1;
const std::vector<size_t> false_bitmap = {9};
using sys_time = std::chrono::time_point<std::chrono::system_clock, std::chrono::nanoseconds>;

using namespace date::literals;
}

TEST_SUITE("typed_array_timestamp")
Expand All @@ -57,7 +57,7 @@ TEST_SUITE("typed_array_timestamp")
typed_array<sparrow::timestamp> ta{array_data};
for (typename typed_array<sparrow::timestamp>::size_type i = 0; i < ta.size() - 1; ++i)
{
CHECK_EQ(ta.at(i).value(), sparrow::timestamp(sys_time(std::chrono::system_clock::now())));
CHECK_EQ(ta.at(i).value(), sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(i + 1)));
}
CHECK_FALSE(ta.at(false_bitmap[0] - offset).has_value());

Expand All @@ -70,7 +70,7 @@ TEST_SUITE("typed_array_timestamp")
const typed_array<sparrow::timestamp> ta{array_data};
for (typename typed_array<sparrow::timestamp>::size_type i = 0; i < ta.size() - 1; ++i)
{
CHECK_EQ(ta.at(i).value(), sparrow::timestamp(sys_time(std::chrono::system_clock::now())));
CHECK_EQ(ta.at(i).value(), sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(i + 1)));
}
CHECK_FALSE(ta.at(false_bitmap[0] - offset).has_value());

Expand All @@ -83,7 +83,7 @@ TEST_SUITE("typed_array_timestamp")
typed_array<sparrow::timestamp> ta{array_data};
for (typename typed_array<sparrow::timestamp>::size_type i = 0; i < ta.size() - 1; ++i)
{
CHECK_EQ(ta[i].value(), sparrow::timestamp(sys_time(std::chrono::system_clock::now())));
CHECK_EQ(ta[i].value(), sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(i + 1)));
}
CHECK_FALSE(ta[ta.size() - 1].has_value());
}
Expand All @@ -94,7 +94,7 @@ TEST_SUITE("typed_array_timestamp")
const typed_array<sparrow::timestamp> ta{array_data};
for (typename typed_array<sparrow::timestamp>::size_type i = 0; i < ta.size() - 1; ++i)
{
CHECK_EQ(ta[i].value(), sparrow::timestamp(sys_time(std::chrono::system_clock::now())));
CHECK_EQ(ta[i].value(), sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(i + 1)));
}
CHECK_FALSE(ta[false_bitmap[0] - offset].has_value());
}
Expand All @@ -103,14 +103,14 @@ TEST_SUITE("typed_array_timestamp")
{
const auto array_data = sparrow::test::make_test_array_data<sparrow::timestamp>(n, offset, false_bitmap);
typed_array<sparrow::timestamp> ta{array_data};
CHECK_EQ(ta.front().value(), sparrow::timestamp(sys_time(std::chrono::system_clock::now())));
CHECK_EQ(ta.front().value(), sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(1)));
}

TEST_CASE("const front")
{
const auto array_data = sparrow::test::make_test_array_data<sparrow::timestamp>(n, offset, false_bitmap);
const typed_array<sparrow::timestamp> ta{array_data};
CHECK_EQ(ta.front().value(), sparrow::timestamp(sys_time(std::chrono::system_clock::now())));
CHECK_EQ(ta.front().value(), sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(1)));
}

TEST_CASE("back")
Expand Down Expand Up @@ -178,9 +178,9 @@ TEST_SUITE("typed_array_timestamp")
const typed_array<sparrow::timestamp> ta{array_data};
const auto values = ta.values();
CHECK_EQ(values.size(), n - offset);
for (size_t i = 0; i < values.size(); ++i)
for (typename typed_array<sparrow::timestamp>::size_type i = 0; i < values.size(); ++i)
{
CHECK_EQ(values[i], sparrow::timestamp(sys_time(std::chrono::system_clock::now())));
CHECK_EQ(values[i], sparrow::timestamp(date::sys_days(1970_y/date::January/1_d) + date::days(i + 1)));
}
}

Expand Down

0 comments on commit 411eb4c

Please sign in to comment.