testing/scanftest: add number of correct/incorrect tests

Verbose output for CI testing with OK and FAILED number of tests. File
name is also now configurable with TESTING_SCANFTEST_FNAME.

Signed-off-by: Michal Lenc <michallenc@seznam.cz>
This commit is contained in:
Michal Lenc 2023-10-17 13:55:02 +02:00 committed by Alan Carvalho de Assis
parent 8398297518
commit cd1d855a71
2 changed files with 27 additions and 1 deletions

View File

@ -30,4 +30,10 @@ config TESTING_SCANFTEST_STACKSIZE
int "Scanftest stack size" int "Scanftest stack size"
default DEFAULT_TASK_STACKSIZE default DEFAULT_TASK_STACKSIZE
config TESTING_SCANFTEST_FNAME
string "Scanftest file name"
default "/mnt/fs/test.txt"
---help---
Path to the file for test writes/reads.
endif endif

View File

@ -1083,8 +1083,11 @@ int main(int argc, FAR char *argv[])
double d2; double d2;
FAR FILE *fp; FAR FILE *fp;
int tests_ok = 0;
int tests_err = 0;
FAR const char *teststring = "teststring a"; FAR const char *teststring = "teststring a";
FAR const char *fname = "/mnt/fs/test.txt"; FAR const char *fname = CONFIG_TESTING_SCANFTEST_FNAME;
/* Test that scanf() can recognize percent-signs in the input. ** Test that /* Test that scanf() can recognize percent-signs in the input. ** Test that
* integer converters skip white-space. ** Test that "%i" can scan a single * integer converters skip white-space. ** Test that "%i" can scan a single
@ -1129,20 +1132,24 @@ int main(int argc, FAR char *argv[])
if (strcmp(s1, teststring) != 0) if (strcmp(s1, teststring) != 0)
{ {
tests_err += 1;
printf("Error %s != %s.\n", teststring, s1); printf("Error %s != %s.\n", teststring, s1);
} }
else else
{ {
tests_ok += 1;
printf("Test PASSED.\n"); printf("Test PASSED.\n");
} }
} }
else else
{ {
tests_err += 1;
printf("Error opening %s for read.\n", fname); printf("Error opening %s for read.\n", fname);
} }
} }
else else
{ {
tests_err += 1;
printf("Error opening %s for write.\n", fname); printf("Error opening %s for write.\n", fname);
} }
} }
@ -1171,6 +1178,7 @@ int main(int argc, FAR char *argv[])
} }
else else
{ {
tests_err += 1;
printf("Error opening %s for write.\n", fname); printf("Error opening %s for write.\n", fname);
break; break;
} }
@ -1320,8 +1328,13 @@ int main(int argc, FAR char *argv[])
if (ok) if (ok)
{ {
tests_ok += 1;
printf("Test #%u PASSED.\n", t + 1); printf("Test #%u PASSED.\n", t + 1);
} }
else
{
tests_err += 1;
}
} }
} }
@ -1457,9 +1470,16 @@ int main(int argc, FAR char *argv[])
if (ok) if (ok)
{ {
tests_ok += 1;
printf("Test #%u PASSED.\n", t + 1); printf("Test #%u PASSED.\n", t + 1);
} }
else
{
tests_err += 1;
}
} }
printf("Scanf tests done... OK: %d, FAILED: %d\n", tests_ok, tests_err);
return OK; return OK;
} }