add initial cursor movement support

This commit is contained in:
josh committed 2016-08-08 22:40:47 -04:00
1 parent 81e6a53c08
commit 3c5a7b7341
3 files changed
+208 -19

No files matched your search

+13 -1
View File
@@ -27,5 +27,17 @@ TEST(BufferTest, allows_navigating_using_cursors)
Buffer b;
ASSERT_TRUE(b.load_from_file("test/files/line_endings/lf_format.txt"));
std::shared_ptr<PieceTable::Cursor> cursor = b.piece_table->add_cursor();
EXPECT_EQ((uint32_t)'H', **cursor);
ASSERT_EQ((uint32_t)'H', **cursor);
cursor->go_up();
ASSERT_EQ((uint32_t)'H', **cursor);
cursor->go_right();
ASSERT_EQ((uint32_t)'e', **cursor);
cursor->go_down();
ASSERT_EQ((uint32_t)'h', **cursor);
cursor->go_left();
ASSERT_EQ((uint32_t)'T', **cursor);
cursor->go_left();
ASSERT_EQ((uint32_t)'T', **cursor);
cursor->go_down();
ASSERT_EQ((uint32_t)'T', **cursor);
}