From 252f4121f3c104601ee9d624188740a33b12ebc5 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Wed, 21 Dec 2016 23:47:26 -0500 Subject: [PATCH] turn on unit tests for iterators instead of cursors --- test/src/test_Buffer.cc | 57 +++++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 31 deletions(-) diff --git a/test/src/test_Buffer.cc b/test/src/test_Buffer.cc index 495920b..7ee5ad5 100644 --- a/test/src/test_Buffer.cc +++ b/test/src/test_Buffer.cc @@ -31,44 +31,39 @@ TEST(BufferTest, writes_an_empty_file_for_an_empty_buffer) TestSupport::compare_files("test/files/empty.txt", "test/tmp/f"); } -#if 0 -TEST(BufferTest, allows_navigating_using_cursors) +TEST(BufferTest, allows_navigating_using_iterators) { Buffer b("test/files/line_endings/lf_format.txt"); - auto cursor = b.add_cursor(); + auto iterator = b.add_iterator(); - EXPECT_EQ(0u, cursor->column()); - EXPECT_EQ(0u, cursor->line()); - ASSERT_EQ((uint32_t)'H', **cursor); + EXPECT_EQ(0u, iterator->line()); + ASSERT_EQ((uint32_t)'H', **iterator); - EXPECT_FALSE(cursor->go_up(cursor->column())); - EXPECT_EQ(0u, cursor->column()); - EXPECT_EQ(0u, cursor->line()); - ASSERT_EQ((uint32_t)'H', **cursor); + EXPECT_FALSE(iterator->go_previous_line()); + EXPECT_EQ(0u, iterator->line()); + ASSERT_EQ((uint32_t)'H', **iterator); - EXPECT_TRUE(cursor->go_right(false)); - EXPECT_EQ(1u, cursor->column()); - EXPECT_EQ(0u, cursor->line()); - ASSERT_EQ((uint32_t)'e', **cursor); + EXPECT_TRUE(iterator->go_right_in_line(false)); + EXPECT_EQ(0u, iterator->line()); + ASSERT_EQ((uint32_t)'e', **iterator); - EXPECT_TRUE(cursor->go_down(cursor->column())); - EXPECT_EQ(1u, cursor->column()); - EXPECT_EQ(1u, cursor->line()); - ASSERT_EQ((uint32_t)'h', **cursor); + EXPECT_TRUE(iterator->go_next_line()); + EXPECT_EQ(1u, iterator->line()); + ASSERT_EQ((uint32_t)'T', **iterator); - EXPECT_TRUE(cursor->go_left()); - EXPECT_EQ(0u, cursor->column()); - EXPECT_EQ(1u, cursor->line()); - ASSERT_EQ((uint32_t)'T', **cursor); + EXPECT_FALSE(iterator->go_left_in_line()); + EXPECT_EQ(1u, iterator->line()); + ASSERT_EQ((uint32_t)'T', **iterator); - EXPECT_FALSE(cursor->go_left()); - EXPECT_EQ(0u, cursor->column()); - EXPECT_EQ(1u, cursor->line()); - ASSERT_EQ((uint32_t)'T', **cursor); + EXPECT_TRUE(iterator->go_right_in_line(true)); + EXPECT_EQ(1u, iterator->line()); + ASSERT_EQ((uint32_t)'h', **iterator); - EXPECT_FALSE(cursor->go_down(cursor->column())); - EXPECT_EQ(0u, cursor->column()); - EXPECT_EQ(1u, cursor->line()); - ASSERT_EQ((uint32_t)'T', **cursor); + EXPECT_FALSE(iterator->go_next_line()); + EXPECT_EQ(1u, iterator->line()); + ASSERT_EQ((uint32_t)'h', **iterator); + + EXPECT_TRUE(iterator->go_previous_line()); + EXPECT_EQ(0u, iterator->line()); + ASSERT_EQ((uint32_t)'H', **iterator); } -#endif