libcryfs/test/implementations/onblocks/datatreestore/shrinking/DataTreeShrinkingTest_DepthFlags.cpp

69 lines
2.0 KiB
C++
Raw Normal View History

#include "testutils/DataTreeShrinkingTest.h"
using blobstore::onblocks::datatreestore::DataTree;
using blockstore::Key;
class DataTreeShrinkingTest_DepthFlags: public DataTreeShrinkingTest {
public:
};
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkATwoLeafTree) {
auto key = CreateTwoLeaf()->key();
Shrink(key);
CHECK_DEPTH(0, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkAFourNodeThreeLeafTree) {
auto key = CreateFourNodeThreeLeaf()->key();
Shrink(key);
CHECK_DEPTH(1, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkATwoInnerNodeOneTwoLeavesTree) {
auto key = CreateTwoInnerNodeOneTwoLeaves()->key();
Shrink(key);
CHECK_DEPTH(2, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkATwoInnerNodeTwoOneLeavesTree) {
auto key = CreateTwoInnerNodeTwoOneLeaves()->key();
Shrink(key);
CHECK_DEPTH(1, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkAThreeLevelMinDataTree) {
auto key = CreateThreeLevelMinData()->key();
Shrink(key);
CHECK_DEPTH(1, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkAFourLevelMinDataTree) {
auto key = CreateFourLevelMinData()->key();
Shrink(key);
CHECK_DEPTH(2, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkAFourLevelTreeWithTwoSiblingLeaves1) {
auto key = CreateFourLevelWithTwoSiblingLeaves1()->key();
Shrink(key);
CHECK_DEPTH(3, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkAFourLevelTreeWithTwoSiblingLeaves2) {
auto key = CreateFourLevelWithTwoSiblingLeaves2()->key();
Shrink(key);
CHECK_DEPTH(3, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkATreeWithFirstChildOfRootFullThreelevelAndSecondChildMindataThreelevel) {
auto key = CreateWithFirstChildOfRootFullThreelevelAndSecondChildMindataThreelevel()->key();
Shrink(key);
CHECK_DEPTH(3, key);
}
TEST_F(DataTreeShrinkingTest_DepthFlags, ShrinkAThreeLevelTreeWithThreeChildrenOfRoot) {
auto key = CreateThreeLevelWithThreeChildrenOfRoot()->key();
Shrink(key);
CHECK_DEPTH(2, key);
}