#include "gtest/gtest.h" #include "pivector2d.h" void assert_fill_with(PIVector2D vec, int rows, int cols, int val) { for(int r = 0; r < rows; r++) { for(int c = 0; c < cols; c++) { ASSERT_EQ(vec.element(r, c), val); } } } int ROWS_COUNT_INIT = 200; int ROWS_COUNT_INCREASE = 300; int ROWS_COUNT_REDUCE = 100; int COLS_COUNT_INIT = 200; int COLS_COUNT_INCREASE = 300; int COLS_COUNT_REDUCE = 100; TEST(PIVector2D_Test, resize_is_increase_col_count) { PIVector2D vec(ROWS_COUNT_INIT, COLS_COUNT_INIT, INT32_MAX); vec.resize(ROWS_COUNT_INIT, COLS_COUNT_INCREASE, 0); ASSERT_EQ(vec.cols(), COLS_COUNT_INCREASE); } TEST(PIVector2D_Test, resize_is_reduce_col_count) { PIVector2D vec(ROWS_COUNT_INIT, COLS_COUNT_INIT, INT32_MAX); vec.resize(ROWS_COUNT_INIT, COLS_COUNT_REDUCE, 0); ASSERT_EQ(vec.cols(), COLS_COUNT_REDUCE); } TEST(PIVector2D_Test, resize_is_increase_rows_count) { PIVector2D vec(ROWS_COUNT_INIT, COLS_COUNT_INIT, INT32_MAX); vec.resize(ROWS_COUNT_INCREASE, COLS_COUNT_INIT, 0); ASSERT_EQ(vec.rows(), ROWS_COUNT_INCREASE); } TEST(PIVector2D_Test, resize_is_reduce_rows_count) { PIVector2D vec(ROWS_COUNT_INIT, COLS_COUNT_INIT, INT32_MAX); vec.resize(ROWS_COUNT_REDUCE, COLS_COUNT_INIT, 0); ASSERT_EQ(vec.rows(), ROWS_COUNT_REDUCE); } TEST(PIVector2D_Test, resize_increase_is_data_stay_consistent) { PIVector2D vec(ROWS_COUNT_INIT, COLS_COUNT_INIT, INT32_MAX); vec.resize(ROWS_COUNT_INCREASE, COLS_COUNT_INCREASE, 0); assert_fill_with(vec, ROWS_COUNT_INIT, COLS_COUNT_INIT, INT32_MAX); } TEST(PIVector2D_Test, resize_reduce_is_data_stay_consistent) { PIVector2D vec(ROWS_COUNT_INIT, COLS_COUNT_INIT, INT32_MAX); vec.resize(ROWS_COUNT_REDUCE, COLS_COUNT_REDUCE, 0); assert_fill_with(vec, ROWS_COUNT_REDUCE, COLS_COUNT_REDUCE, INT32_MAX); }