elua lib: test some util APIs
authorDaniel Kolesa <d.kolesa@osg.samsung.com>
Thu, 16 Apr 2015 14:23:33 +0000 (15:23 +0100)
committerDaniel Kolesa <d.kolesa@osg.samsung.com>
Wed, 6 May 2015 14:05:21 +0000 (15:05 +0100)
src/tests/elua/elua_lib.c

index 98fca1a..5a87929 100644 (file)
@@ -9,11 +9,6 @@
 #include "Elua.h"
 #include "elua_suite.h"
 
-/* Untestable APIs:
- *
- * void elua_state_include_path_add(Elua_State *, const char *);
- */
-
 START_TEST(elua_api)
 {
     Elua_State *st;
@@ -39,6 +34,9 @@ START_TEST(elua_api)
     fail_if(strcmp(elua_state_mod_dir_get(st), ELUA_MODULES_DIR));
     fail_if(strcmp(elua_state_apps_dir_get(st), ELUA_APPS_DIR));
 
+    /* needed for later setup, but untestable alone */
+    elua_state_include_path_add(st, ELUA_BINDINGS_DIR);
+
     lst = elua_state_lua_state_get(st);
     fail_if(!lst);
 
@@ -58,6 +56,10 @@ START_TEST(elua_api)
     fail_if(lua_type(lst, -1) != LUA_TFUNCTION);
     lua_pop(lst, 1);
 
+    fail_if(elua_util_require(st, "util"));
+    fail_if(elua_util_string_run(st, "return 1337", "foo"));
+    fail_if(!elua_util_string_run(st, "foo bar", "foo")); /* invalid code */
+
     elua_state_free(st);
 
     elua_shutdown();