summaryrefslogtreecommitdiff
path: root/tests/lib/test_frrscript.c
diff options
context:
space:
mode:
authorDonald Lee <dlqs@gmx.com>2021-07-05 05:25:49 +0800
committerDonald Lee <dlqs@gmx.com>2021-07-18 06:32:03 +0800
commit7948c5d27ac5313841a0f8e0b88ecc090932dffe (patch)
treeb1d79d98f5602f74c93968dc923ab2ec7f398da1 /tests/lib/test_frrscript.c
parentcb5de2314056e81854715c1835612445736e0a03 (diff)
tests: Add errorneous test cases
Signed-off-by: Donald Lee <dlqs@gmx.com>
Diffstat (limited to 'tests/lib/test_frrscript.c')
-rw-r--r--tests/lib/test_frrscript.c28
1 files changed, 23 insertions, 5 deletions
diff --git a/tests/lib/test_frrscript.c b/tests/lib/test_frrscript.c
index 4d34b58832..3bb45a2651 100644
--- a/tests/lib/test_frrscript.c
+++ b/tests/lib/test_frrscript.c
@@ -36,18 +36,36 @@ int main(int argc, char **argv)
assert(a == 300);
assert(b == 200);
+ frrscript_load(fs, "fact", NULL);
+ long long n = 5;
+
+ result = frrscript_call(fs, "fact", ("n", &n));
+ assert(result == 0);
+ assert(n == 120);
+
+ /* Function does not exist in script file*/
+ result = frrscript_load(fs, "does_not_exist", NULL);
+ assert(result == 1);
+
+ /* Function does not exist in script file*/
result = frrscript_load(fs, "does_not_exist", NULL);
assert(result == 1);
+ /* Function was not (successfully) loaded */
result = frrscript_call(fs, "does_not_exist", ("a", &a), ("b", &b));
assert(result == 1);
- frrscript_load(fs, "fact", NULL);
- long long n = 5;
+ /* Function returns void */
+ result = frrscript_call(fs, "bad_return1");
+ assert(result == 1);
- result = frrscript_call(fs, "fact", ("n", &n));
- assert(result == 0);
- assert(n == 120);
+ /* Function returns number */
+ result = frrscript_call(fs, "bad_return2");
+ assert(result == 1);
+
+ /* Function throws exception */
+ result = frrscript_call(fs, "bad_return3");
+ assert(result == 1);
return 0;
}