summaryrefslogtreecommitdiff
path: root/tests/lib/test_frrscript.c
diff options
context:
space:
mode:
authorDonald Lee <dlqs@gmx.com>2021-07-04 23:13:32 +0800
committerDonald Lee <dlqs@gmx.com>2021-07-18 06:32:03 +0800
commit4535b6113cf105287e060042b956251d4cbf4198 (patch)
treebf75bf7e33fbdea099c750bb99754eed33332643 /tests/lib/test_frrscript.c
parentbf938fdb9dafa3c330026394d9b6d291559ec993 (diff)
tests: Add test for calling Lua function
Signed-off-by: Donald Lee <dlqs@gmx.com>
Diffstat (limited to 'tests/lib/test_frrscript.c')
-rw-r--r--tests/lib/test_frrscript.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/tests/lib/test_frrscript.c b/tests/lib/test_frrscript.c
index bd75cc5552..4d34b58832 100644
--- a/tests/lib/test_frrscript.c
+++ b/tests/lib/test_frrscript.c
@@ -24,14 +24,30 @@
int main(int argc, char **argv)
{
frrscript_init("./lib");
+ struct frrscript *fs = frrscript_new("script1");
+ int result;
- struct frrscript *fs = frrscript_load("script1", NULL);
long long a = 100, b = 200;
- int result = frrscript_call(fs, ("a", &a), ("b", &b));
+ result = frrscript_load(fs, "foo", NULL);
+ assert(result == 0);
+ result = frrscript_call(fs, "foo", ("a", &a), ("b", &b));
assert(result == 0);
assert(a == 300);
assert(b == 200);
+ result = frrscript_load(fs, "does_not_exist", NULL);
+ assert(result == 1);
+
+ result = frrscript_call(fs, "does_not_exist", ("a", &a), ("b", &b));
+ assert(result == 1);
+
+ frrscript_load(fs, "fact", NULL);
+ long long n = 5;
+
+ result = frrscript_call(fs, "fact", ("n", &n));
+ assert(result == 0);
+ assert(n == 120);
+
return 0;
}