50 lines
1.3 KiB
C++
50 lines
1.3 KiB
C++
#include "utils/chunk.hpp"
|
|
#include "catch2/catch_test_macros.hpp"
|
|
#include <vector>
|
|
|
|
TEST_CASE("chunk 5") {
|
|
const std::vector<int> input = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
|
|
const auto output = utils::chunk(input, 5);
|
|
|
|
CHECK( output.size() == 2 );
|
|
CHECK( output.at(0).size() == 5 );
|
|
CHECK( output.at(1).size() == 5 );
|
|
|
|
CHECK( output.at(0).at(0) == 1 );
|
|
CHECK( output.at(0).at(1) == 2 );
|
|
|
|
CHECK( output.at(1).at(0) == 6 );
|
|
CHECK( output.at(1).at(1) == 7 );
|
|
}
|
|
|
|
TEST_CASE("chunk 7") {
|
|
const std::vector<int> input = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
|
|
const auto output = utils::chunk(input, 7);
|
|
|
|
CHECK( output.size() == 2 );
|
|
CHECK( output.at(0).size() == 7 );
|
|
CHECK( output.at(1).size() == 3 );
|
|
|
|
CHECK( output.at(0).at(0) == 1 );
|
|
CHECK( output.at(0).at(1) == 2 );
|
|
|
|
CHECK( output.at(1).at(0) == 8 );
|
|
CHECK( output.at(1).at(1) == 9 );
|
|
}
|
|
|
|
TEST_CASE("chunk 1") {
|
|
const std::vector<int> input = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
|
|
const auto output = utils::chunk(input, 1);
|
|
|
|
CHECK( output.size() == 10 );
|
|
CHECK( output.at(0).size() == 1 );
|
|
CHECK( output.at(1).size() == 1 );
|
|
|
|
CHECK( output.at(0).at(0) == 1 );
|
|
CHECK( output.at(1).at(0) == 2 );
|
|
CHECK( output.at(2).at(0) == 3 );
|
|
CHECK( output.at(3).at(0) == 4 );
|
|
CHECK( output.at(8).at(0) == 9 );
|
|
CHECK( output.at(9).at(0) == 10 );
|
|
}
|