more BufferView tests, 100% coverage
This commit is contained in:
parent
f3604e1850
commit
74dfb7ce78
@ -189,3 +189,96 @@ TEST(BufferViewTest, adjusts_cursor_row_as_cursor_moves)
|
||||
bv.update();
|
||||
EXPECT_EQ(0, bv.cursor_screen_row());
|
||||
}
|
||||
|
||||
TEST(BufferViewTest, adjusts_cursor_row_as_cursor_moves_with_scroll_offset_1)
|
||||
{
|
||||
auto b = buffer1();
|
||||
auto iterator = b->add_iterator();
|
||||
BufferView bv(b, iterator, Cwd);
|
||||
bv.resize(5, 5);
|
||||
bv.set_scroll_offset(1);
|
||||
bv.update();
|
||||
EXPECT_EQ(0, bv.cursor_screen_row());
|
||||
iterator->go_next_line(); // to 1
|
||||
bv.update();
|
||||
EXPECT_EQ(1, bv.cursor_screen_row());
|
||||
iterator->go_next_line(); // to 2
|
||||
bv.update();
|
||||
EXPECT_EQ(2, bv.cursor_screen_row());
|
||||
iterator->go_next_line(); // to 3
|
||||
bv.update();
|
||||
EXPECT_EQ(3, bv.cursor_screen_row());
|
||||
iterator->go_next_line(); // to 4
|
||||
bv.update();
|
||||
EXPECT_EQ(3, bv.cursor_screen_row());
|
||||
iterator->go_next_line(); // to 5
|
||||
bv.update();
|
||||
EXPECT_EQ(3, bv.cursor_screen_row());
|
||||
iterator->go_next_line(); // to 6
|
||||
bv.update();
|
||||
EXPECT_EQ(3, bv.cursor_screen_row());
|
||||
iterator->go_next_line(); // to 7
|
||||
bv.update();
|
||||
EXPECT_EQ(3, bv.cursor_screen_row());
|
||||
iterator->go_previous_line(); // to 6
|
||||
bv.update();
|
||||
EXPECT_EQ(1, bv.cursor_screen_row());
|
||||
iterator->go_previous_line(); // to 5
|
||||
bv.update();
|
||||
EXPECT_EQ(1, bv.cursor_screen_row());
|
||||
iterator->go_previous_line(); // to 4
|
||||
bv.update();
|
||||
EXPECT_EQ(1, bv.cursor_screen_row());
|
||||
iterator->go_previous_line(); // to 3
|
||||
bv.update();
|
||||
EXPECT_EQ(1, bv.cursor_screen_row());
|
||||
iterator->go_previous_line(); // to 2
|
||||
bv.update();
|
||||
EXPECT_EQ(1, bv.cursor_screen_row());
|
||||
iterator->go_previous_line(); // to 1
|
||||
bv.update();
|
||||
EXPECT_EQ(1, bv.cursor_screen_row());
|
||||
iterator->go_previous_line(); // to 0
|
||||
bv.update();
|
||||
EXPECT_EQ(0, bv.cursor_screen_row());
|
||||
}
|
||||
|
||||
TEST(BufferViewTest, moves_view_down_while_traversing_a_wrapped_line)
|
||||
{
|
||||
auto b = buffer1();
|
||||
auto iterator = b->add_iterator();
|
||||
BufferView bv(b, iterator, Cwd);
|
||||
bv.resize(4, 10);
|
||||
for (int i = 0; i < 9; i++)
|
||||
{
|
||||
iterator->go_next_line();
|
||||
bv.update();
|
||||
}
|
||||
EXPECT_EQ(9, bv.cursor_screen_row());
|
||||
EXPECT_EQ(0, bv.cursor_screen_column());
|
||||
EXPECT_EQ(0, bv.cursor_virtual_column());
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
iterator->go_forward();
|
||||
bv.update();
|
||||
EXPECT_EQ(9, bv.cursor_screen_row());
|
||||
EXPECT_EQ(1 + i, bv.cursor_screen_column());
|
||||
EXPECT_EQ(1 + i, bv.cursor_virtual_column());
|
||||
}
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
iterator->go_forward();
|
||||
bv.update();
|
||||
EXPECT_EQ(9, bv.cursor_screen_row());
|
||||
EXPECT_EQ(i, bv.cursor_screen_column());
|
||||
EXPECT_EQ(4 + i, bv.cursor_virtual_column());
|
||||
}
|
||||
for (int i = 0; i < 4; i++)
|
||||
{
|
||||
iterator->go_forward();
|
||||
bv.update();
|
||||
EXPECT_EQ(9, bv.cursor_screen_row());
|
||||
EXPECT_EQ(i, bv.cursor_screen_column());
|
||||
EXPECT_EQ(8 + i, bv.cursor_virtual_column());
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user