diff options
| author | Donald Lee <dlqs@gmx.com> | 2021-07-05 05:25:49 +0800 |
|---|---|---|
| committer | Donald Lee <dlqs@gmx.com> | 2021-07-18 06:32:03 +0800 |
| commit | 7948c5d27ac5313841a0f8e0b88ecc090932dffe (patch) | |
| tree | b1d79d98f5602f74c93968dc923ab2ec7f398da1 /tests/lib/test_frrscript.c | |
| parent | cb5de2314056e81854715c1835612445736e0a03 (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.c | 28 |
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; } |
