From e96c32bc6a6c627488df506b4e006197acf38d87 Mon Sep 17 00:00:00 2001 From: Brendan Taylor Date: Mon, 6 Jul 2009 19:22:00 -0600 Subject: simple tests for all expansions except DOMAIN --- tests/test-expand.c | 121 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 119 insertions(+), 2 deletions(-) (limited to 'tests/test-expand.c') diff --git a/tests/test-expand.c b/tests/test-expand.c index d77c42e..03b9b27 100644 --- a/tests/test-expand.c +++ b/tests/test-expand.c @@ -29,20 +29,137 @@ extern Uzbl uzbl; extern gchar* expand_template(const char*, gboolean); -static void +void test_URI (void) { - setup_scanner(); uzbl.state.uri = g_strdup("http://www.uzbl.org/"); g_assert_cmpstr(expand_template("URI", FALSE), ==, uzbl.state.uri); g_free(uzbl.state.uri); } +void +test_LOAD_PROGRESS (void) { + uzbl.gui.sbar.load_progress = 50; + g_assert_cmpstr(expand_template("LOAD_PROGRESS", FALSE), ==, "50"); +} + +void +test_LOAD_PROGRESSBAR (void) { + uzbl.gui.sbar.load_progress = 75; + uzbl.gui.sbar.progress_w = 4; + + uzbl.gui.sbar.progress_s = "*"; + uzbl.gui.sbar.progress_u = "-"; + + g_assert_cmpstr(expand_template("LOAD_PROGRESSBAR", FALSE), ==, "***-"); +} + +void +test_TITLE (void) { + uzbl.gui.main_title = "Lorem Ipsum"; + g_assert_cmpstr(expand_template("TITLE", FALSE), ==, "Lorem Ipsum"); +} + +void +test_SELECTED_URI (void) { + uzbl.state.selected_url = "http://example.org/"; + g_assert_cmpstr(expand_template("SELECTED_URI", FALSE), ==, "http://example.org/"); +} + +void +test_NAME (void) { + uzbl.state.instance_name = "12345"; + g_assert_cmpstr(expand_template("NAME", FALSE), ==, "12345"); +} + +void +test_KEYCMD (void) { + uzbl.state.keycmd = g_string_new("gg winslow"); + g_assert_cmpstr(expand_template("KEYCMD", FALSE), ==, "gg winslow"); + g_string_free(uzbl.state.keycmd, TRUE); +} + +void +test_MODE (void) { + uzbl.behave.cmd_indicator = "C"; + uzbl.behave.insert_indicator = "I"; + + uzbl.behave.insert_mode = 0; + g_assert_cmpstr(expand_template("MODE", FALSE), ==, "C"); + + uzbl.behave.insert_mode = 1; + g_assert_cmpstr(expand_template("MODE", FALSE), ==, "I"); +} + +void +test_MSG (void) { + uzbl.gui.sbar.msg = "Hello from frosty Edmonton!"; + g_assert_cmpstr(expand_template("MSG", FALSE), ==, "Hello from frosty Edmonton!"); +} + +void +test_WEBKIT_VERSION (void) { + GString* expected = g_string_new(""); + g_string_append(expected, itos(WEBKIT_MAJOR_VERSION)); + g_string_append(expected, " "); + g_string_append(expected, itos(WEBKIT_MINOR_VERSION)); + g_string_append(expected, " "); + g_string_append(expected, itos(WEBKIT_MICRO_VERSION)); + + g_assert_cmpstr(expand_template("WEBKIT_MAJOR WEBKIT_MINOR WEBKIT_MICRO", FALSE), ==, g_string_free(expected, FALSE)); +} + +void +test_UNAMEINFO (void) { + GString* expected = g_string_new(""); + + if(uname(&uzbl.state.unameinfo) == -1) + g_printerr("Can't retrieve unameinfo. This test might fail.\n"); + + g_string_append(expected, uzbl.state.unameinfo.sysname); + g_string_append(expected, " "); + g_string_append(expected, uzbl.state.unameinfo.nodename); + g_string_append(expected, " "); + g_string_append(expected, uzbl.state.unameinfo.release); + g_string_append(expected, " "); + g_string_append(expected, uzbl.state.unameinfo.version); + g_string_append(expected, " "); + g_string_append(expected, uzbl.state.unameinfo.machine); + + g_assert_cmpstr(expand_template("SYSNAME NODENAME KERNREL KERNVER ARCH_SYSTEM", FALSE), ==, g_string_free(expected, FALSE)); +} + +void +test_ARCH_UZBL (void) { + g_assert_cmpstr(expand_template("ARCH_UZBL", FALSE), ==, ARCH); +} + +void +test_COMMIT (void) { + g_assert_cmpstr(expand_template("COMMIT", FALSE), ==, COMMIT); +} + int main (int argc, char *argv[]) { g_type_init(); g_test_init(&argc, &argv, NULL); g_test_add_func("/test-expand/URI", test_URI); + g_test_add_func("/test-expand/LOAD_PROGRESS", test_LOAD_PROGRESS); + g_test_add_func("/test-expand/LOAD_PROGRESSBAR", test_LOAD_PROGRESSBAR); + g_test_add_func("/test-expand/TITLE", test_TITLE); + g_test_add_func("/test-expand/SELECTED_URI", test_SELECTED_URI); + g_test_add_func("/test-expand/NAME", test_NAME); + g_test_add_func("/test-expand/KEYCMD", test_KEYCMD); + g_test_add_func("/test-expand/MODE", test_MODE); + g_test_add_func("/test-expand/MSG", test_MSG); + g_test_add_func("/test-expand/WEBKIT_VERSION", test_WEBKIT_VERSION); + g_test_add_func("/test-expand/UNAMEINFO", test_UNAMEINFO); + g_test_add_func("/test-expand/ARCH_UZBL", test_ARCH_UZBL); + /* this only exists on _GNU_SOURCE i guess */ + /* g_test_add_func("/test-expand/DOMAINNAME", test_DOMAINNAME); */ + g_test_add_func("/test-expand/COMMIT", test_COMMIT); + + setup_scanner(); return g_test_run(); } -- cgit v1.2.3