Exemplo n.º 1
0
TEST(IntervalTest, Merging3)
{
    IntervalTree tree;

    tree.Insert(Interval(1, 3));
    tree.Insert(Interval(5, 6));
    tree.Insert(Interval(4, 6));

    EXPECT_EQ(tree.size(), 2);
}
Exemplo n.º 2
0
TEST(IntervalTest, Gaps2)
{
    IntervalTree tree;

    tree.Insert(Interval(3, 9));

    IntervalTree gaps = tree.Gaps(Interval(5, 11));

    EXPECT_EQ(gaps.size(), 1);

    for (auto& i : gaps)
    {
        EXPECT_EQ(i.Left(),  9);
        EXPECT_EQ(i.Right(), 11);
    }

    gaps = tree.Gaps(Interval(1, 11));

    EXPECT_EQ(gaps.size(), 2);

    size_t l = 1;
    size_t r = 3;

    for (const auto& i : gaps)
    {
        EXPECT_EQ(i.Left(),  l);
        EXPECT_EQ(i.Right(), r);

        l += 8;
        r += 8;
    }

    gaps = tree.Gaps(Interval(11, 15));

    EXPECT_EQ(gaps.size(), 1);

    for (const auto& i : gaps)
    {
        EXPECT_EQ(i.Left(),  11);
        EXPECT_EQ(i.Right(), 15);
    }
}
Exemplo n.º 3
0
TEST(IntervalTest, Merging2)
{
    IntervalTree tree;

    tree.Insert(Interval(1, 3));
    tree.Insert(Interval(5, 7));
    tree.Insert(Interval(9, 11));

    EXPECT_EQ(tree.size(), 3);

    tree.Insert(Interval(3, 9));

    EXPECT_EQ(tree.size(), 1);

    for (const auto& i : tree)
    {
        EXPECT_EQ(i.Right(), 11);
        EXPECT_EQ(i.Left(),  1);
    }
}
Exemplo n.º 4
0
TEST(IntervalTest, Gaps3)
{
    IntervalTree tree;

    tree.Insert(Interval(3, 5));
    tree.Insert(Interval(7, 9));

    IntervalTree gaps = tree.Gaps(Interval(4, 9));

    EXPECT_EQ(gaps.size(), 1);

    for (const auto& i : gaps)
    {
        EXPECT_EQ(i.Left(),  5);
        EXPECT_EQ(i.Right(), 7);
    }
}
Exemplo n.º 5
0
TEST(IntervalTest, Gaps)
{
    IntervalTree tree;

    tree.Insert(Interval(1, 3));
    tree.Insert(Interval(5, 7));
    tree.Insert(Interval(9, 11));

    IntervalTree gaps = tree.Gaps();

    EXPECT_EQ(gaps.size(), 2);

    size_t l = 3;
    size_t r = 5;

    for (const auto& i : gaps)
    {
        EXPECT_EQ(i.Left(),  l);
        EXPECT_EQ(i.Right(), r);

        l += 4;
        r += 4;
    }
}