15 #include <gtest/gtest.h>
25 TEST(LinearGrid2, InvalidSize) {
26 constexpr std::size_t kWidth = 4;
30 TEST(LinearGrid2, Indices) {
31 constexpr std::size_t kWidth = 4;
34 EXPECT_EQ(grid.index_at(0, 0), 0);
35 EXPECT_EQ(grid.index_at(3, 1), 7);
37 EXPECT_EQ(grid.index_at(Eigen::Vector2i(0, 0)), 0);
38 EXPECT_EQ(grid.index_at(Eigen::Vector2i(3, 1)), 7);
41 TEST(LinearGrid2, CoordinatesAtIndex) {
42 constexpr std::size_t kWidth = 4;
43 constexpr std::size_t kResolution = 1;
47 EXPECT_EQ(grid.coordinates_at(0), Eigen::Vector2d(0.5, 0.5));
48 EXPECT_EQ(grid.coordinates_at(3), Eigen::Vector2d(3.5, 0.5));
49 EXPECT_EQ(grid.coordinates_at(5), Eigen::Vector2d(1.5, 1.5));
52 TEST(LinearGrid2, DataAtIndex) {
53 constexpr std::size_t kWidth = 4;
54 constexpr std::size_t kResolution = 1;
58 EXPECT_TRUE(grid.data_at(0).value());
59 EXPECT_FALSE(grid.data_at(3).value());
60 EXPECT_TRUE(grid.data_at(5).value());
61 EXPECT_EQ(grid.data_at(10), std::nullopt);