5 #include <gtest/gtest.h> 17 return this->key < other.
key;
21 return this->key > other.
key;
25 return this->key == other.
key;
46 bool res_ = in == expected[count];
71 EXPECT_EQ(e1, tree.
max());
94 EXPECT_EQ(e2, tree.
max());
100 EXPECT_EQ(e2, tree.
max());
106 EXPECT_EQ(e3, tree.
max());
112 EXPECT_EQ(e4, tree.
max());
125 EXPECT_EQ(e4, tree.
max());
133 EXPECT_EQ(e3, tree.
max());
163 EXPECT_EQ(e1_0, tree.
max());
188 EXPECT_EQ(e1, tree.
max());
197 EXPECT_EQ(e1_1, tree.
max());
218 EXPECT_EQ(e2, tree.
max());
229 EXPECT_EQ(e1, tree.
max());
234 EXPECT_EQ(e1, tree.
max());
257 EXPECT_TRUE(tree.
insert(e1));
260 EXPECT_FALSE(tree.
insert(e2));
304 Entry* match_1l[] = {a, c, b};
325 Entry* match_1r[] = {a,c,b};
346 Entry* match_2l[] = {a,c,b};
368 Entry* match_2r[] = {a,c,b};
395 Entry* match_pre_del_1l[] = {a,d,c,b};
400 Entry* match_post_del_1l[] = {b,d,c};
423 Entry* match_pre_del_1r[] = {a,b,d,c};
428 Entry* match_post_del_1r[] = {a,c,b};
449 Entry* match_pre_del_2l[] = {a,c,d,b};
454 Entry* match_post_del_2l[] = {b,d,c};
476 Entry* match_pre_del_2r[] = {b,a,d,c};
481 Entry* match_post_del_2r[] = {a,c,b};
513 Entry* match_c_pre_del_1r[] = {a,b,d,g,f,e,c};
518 Entry* match_c_post_del_1r[] = {b,d,c,g,f,e};
550 Entry* match_c2_pre_del_1r[] = {a,b,d,c,g,f,e};
555 Entry* match_c2_post_del_1r[] = {a,b,d,f,e,c};
594 Entry* match_c_pre_del_2l[] = {b,a,d,c,f,g,i,h,l,k,j,e};
599 Entry* match_c_post_del_2l[] = {a,d,c,f,g,e,i,l,k,j,h};
641 Entry* match_c_pre_del_2r[] = {a,b,d,g,f,e,c,j,i,l,k,h};
646 Entry* match_c_post_del_2r[] = {a,b,d,c,g,f,i,l,k,h,e};
Entry * makeEntry(uavcan::PoolAllocator< 64 *24, 64 > *allocator, int key, int payload)
bool operator>(const Entry &other) const
bool matchPostOrder(Entry *expected[], AvlTree< Entry > *tree)
virtual void * allocate(std::size_t size)
bool operator<(const Entry &other) const
bool operator==(const Entry &other) const
void walkPostOrder(std::function< void(T *&)> forEach)
uint16_t getNumUsedBlocks() const
void removeEntry(T *data)
bool contains(const T *data) const