#include #include "array.h" #include TEST(ArrayTest, Append) { array arr; int SIZE = 10 * 1000; EXPECT_EQ(arr.getLength(), 0); // First try inserting sorted ints for(int i=0; i < SIZE; i++) { arr.append(i); } EXPECT_EQ(arr.getLength(), SIZE); for(int i=0; i < SIZE; i++) { EXPECT_EQ(arr.at(i), i); EXPECT_EQ(arr.indexOf(i), i); EXPECT_EQ(arr.contains(i), true); } EXPECT_EQ(arr.contains(SIZE), false); EXPECT_EQ(arr.indexOf(SIZE), SIZE); EXPECT_EQ(arr.indexOf(SIZE+1), SIZE); // Insert in unsorted fashion array arr2; std::vector unsorted; for(int i=0; i < SIZE; i++) { uint32_t r = (uint32_t) rand(); unsorted.push_back(r); arr2.append(r); } EXPECT_EQ(arr2.getLength(), SIZE); for(int i=0; i < SIZE; i++) { uint32_t value = unsorted.at(i); EXPECT_EQ(arr2.at(i), value); } } TEST(ArrayTest, Uncompress) { const size_t SIZE = 10*1000; array unsorted_arr; std::vector unsorted; for(size_t i=0; i unsorted; for(size_t i=0; i