svnno****@sourc*****
svnno****@sourc*****
Sun Jan 25 07:12:27 JST 2009
Revision: 3559 http://svn.sourceforge.jp/view?root=kazehakase&view=rev&rev=3559 Author: ikezoe Date: 2009-01-25 07:12:27 +0900 (Sun, 25 Jan 2009) Log Message: ----------- more tests. Modified Paths: -------------- kazehakase/trunk/test/test-bookmark-folder.c Modified: kazehakase/trunk/test/test-bookmark-folder.c =================================================================== --- kazehakase/trunk/test/test-bookmark-folder.c 2009-01-24 10:35:49 UTC (rev 3558) +++ kazehakase/trunk/test/test-bookmark-folder.c 2009-01-24 22:12:27 UTC (rev 3559) @@ -2,18 +2,28 @@ #include <gcutter.h> -static KzBookmark *folder; - void test_new (void); void test_current_position (void); void test_lock (void); void test_auto_refresh (void); void test_javascript (void); +void test_append (void); +void test_prepend (void); +void test_insert_before (void); +void test_remove (void); +static KzBookmark *folder; +static KzBookmark *child; +static KzBookmark *another_child; +static GList *children; + void setup (void) { folder = NULL; + child = NULL; + another_child = NULL; + children = NULL; } void @@ -21,6 +31,12 @@ { if (folder) g_object_unref(folder); + if (child) + g_object_unref(child); + if (children) + g_list_free(children); + if (another_child) + g_object_unref(another_child); } void @@ -66,6 +82,77 @@ cut_assert_true(kz_bookmark_get_auto_refresh(folder)); } +void +test_append (void) +{ + cut_trace(test_new()); + + cut_assert_false(kz_bookmark_has_children(folder)); + child = kz_bookmark_new_with_attrs("Title", "URI", "Description"); + kz_bookmark_append(folder, child); + + cut_assert_true(kz_bookmark_has_children(folder)); + + children = kz_bookmark_get_children(folder); + cut_assert_equal_int(1, g_list_length(children)); + + cut_assert_equal_pointer(children->data, child); +} + +void +test_prepend (void) +{ + cut_trace(test_append()); + + g_object_unref(child); + child = kz_bookmark_new_with_attrs("Title", "URI", "Description"); + kz_bookmark_prepend(folder, child); + + children = kz_bookmark_get_children(folder); + cut_assert_equal_int(2, g_list_length(children)); + + cut_assert_equal_pointer(children->data, child); +} + +void +test_insert_before (void) +{ + KzBookmark *another_child; + + cut_trace(test_new()); + + cut_assert_false(kz_bookmark_has_children(folder)); + child = kz_bookmark_new_with_attrs("Title", "URI", "Description"); + kz_bookmark_append(folder, child); + + another_child = kz_bookmark_new_with_attrs("Title", "URI", "Description"); + kz_bookmark_insert_before(folder, another_child, child); + + children = kz_bookmark_get_children(folder); + cut_assert_equal_int(2, g_list_length(children)); + + cut_assert_equal_pointer(children->data, another_child); +} + +void +test_remove (void) +{ + cut_trace(test_new()); + + cut_assert_false(kz_bookmark_has_children(folder)); + child = kz_bookmark_new_with_attrs("Title", "URI", "Description"); + kz_bookmark_append(folder, child); + + cut_assert_true(kz_bookmark_has_children(folder)); + + children = kz_bookmark_get_children(folder); + cut_assert_equal_int(1, g_list_length(children)); + + cut_assert_equal_pointer(children->data, child); + + kz_bookmark_remove(folder, child); + cut_assert_false(kz_bookmark_has_children(folder)); +} /* vi:ts=4:nowrap:ai:expandtab:sw=4 */