Skip to content

Commit 140fc2d

Browse files
author
thk123
committed
Added regression tests for arrays and the main function
The array ones fail as don't initalise arrays to anything other than NULL The main fails as we try to assign &argv ' to params which is at best a type mismatch
1 parent d832bea commit 140fc2d

File tree

6 files changed

+97
-0
lines changed

6 files changed

+97
-0
lines changed

regression/test-c-gen/array1/main.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
2+
int fun(int array[5])
3+
{
4+
return array[1] + array[4];
5+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
CORE
2+
main.c
3+
--function fun --cover branch --gen-c-test-case
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
^#include <assert\.h>$
7+
^#include <stdio\.h>$
8+
^#include <stdlib\.h>$
9+
10+
^#include "main\.c"$
11+
^int test_main(int argc, char\* argv)$
12+
^\{$
13+
^ signed int \* arg_fun_array = ((signed int \*)NULL);$
14+
15+
^ signed int arg_fun_array\[\] = {1, 2, 3, 4, 5};$
16+
17+
^ signed int ret_fun;$
18+
^ ret_fun = fun();$
19+
20+
^ assert(ret_fun == 7);$
21+
^ exit(0);$
22+
^\}$
23+
^ return 0;$
24+
^\}$
25+
26+
27+
--
28+
^warning: ignoring

regression/test-c-gen/array2/main.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
int fun(int array[])
2+
{
3+
return array[1] + array[4];
4+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
CORE
2+
main.c
3+
--function fun --cover branch --gen-c-test-case
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
^#include <assert\.h>$
7+
^#include <stdio\.h>$
8+
^#include <stdlib\.h>$
9+
10+
^#include "main\.c"$
11+
^int test_main(int argc, char\* argv)$
12+
^\{$
13+
^ signed int \* arg_fun_array = ((signed int \*)NULL);$
14+
15+
^ signed int arg_fun_array\[\] = {1, 2, 3, 4, 5};$
16+
17+
^ signed int ret_fun;$
18+
^ ret_fun = fun();$
19+
20+
^ assert(ret_fun == 7);$
21+
^ exit(0);$
22+
^\}$
23+
^ return 0;$
24+
^\}$
25+
26+
27+
--
28+
^warning: ignoring
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
//int fun(int* array[])
2+
int main(int argc, char* params[])
3+
{
4+
//return (*array[1]) + (*array[4]);
5+
return 45;
6+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
CORE
2+
main.c
3+
--function main --cover branch --gen-c-test-case
4+
^EXIT=0$
5+
^SIGNAL=0$
6+
^#include <assert\.h>$
7+
^#include <stdio\.h>$
8+
^#include <stdlib\.h>$
9+
10+
^#include "main\.c"$
11+
^int test_main(int argc, char\* argv)$
12+
^\{$
13+
^ signed int arg_main_argc = 4098;$
14+
^ char \*\*arg_main_params = ((char \*\*)NULL);$
15+
^ signed int ret_main;$
16+
^ ret_main = main(arg_main_argc, arg_main_params);$
17+
18+
^ assert(ret_main == 45);$
19+
^ exit(0);$
20+
^\}$
21+
^ return 0;$
22+
^\}$
23+
24+
25+
--
26+
^warning: ignoring

0 commit comments

Comments
 (0)