aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorMarco Paland <marco@paland.com>2017-10-31 14:38:31 +0100
committerMarco Paland <marco@paland.com>2017-10-31 14:38:31 +0100
commit06b080dc45439cb94a23ef894fff33079095adda (patch)
tree9e2b1b1718f765179cd5869f7de581963a1c8620 /test
parent922e66d85fef36e8cefcb9207984f067345ced9c (diff)
downloadprintf-06b080dc45439cb94a23ef894fff33079095adda.tar.gz
printf-06b080dc45439cb94a23ef894fff33079095adda.tar.bz2
printf-06b080dc45439cb94a23ef894fff33079095adda.zip
Added test cases to improve coverage tests
Diffstat (limited to 'test')
-rw-r--r--test/test_suite.cpp31
1 files changed, 21 insertions, 10 deletions
diff --git a/test/test_suite.cpp b/test/test_suite.cpp
index 0b2f680..97ce87f 100644
--- a/test/test_suite.cpp
+++ b/test/test_suite.cpp
@@ -50,17 +50,10 @@ int test::_putchar(char)
TEST_CASE("printf", "[]" ) {
char buffer[100] ;
- test::sprintf(buffer, "%.*f", 2, 0.33333333);
- REQUIRE(!strcmp(buffer, "0.33"));
-
- test::sprintf(buffer, "%.3s", "foobar");
- REQUIRE(!strcmp(buffer, "foo"));
-
- test::sprintf(buffer, "%10.5d", 4);
- REQUIRE(!strcmp(buffer, " 00004"));
+ REQUIRE(test::printf("% d", 4232) == 5);
- test::sprintf(buffer, "%*sx", -3, "hi");
- REQUIRE(!strcmp(buffer, "hi x"));
+ test::snprintf(buffer, 100U, "%d", -1000);
+ REQUIRE(!strcmp(buffer, "-1000"));
}
@@ -861,6 +854,9 @@ TEST_CASE("float", "[]" ) {
test::sprintf(buffer, "%.9f", 42.8952);
REQUIRE(!strcmp(buffer, "42.895200000"));
+ test::sprintf(buffer, "%.10f", 42.895223);
+ REQUIRE(!strcmp(buffer, "42.895223000"));
+
test::sprintf(buffer, "%6.2f", 42.8952);
REQUIRE(!strcmp(buffer, " 42.90"));
@@ -878,6 +874,9 @@ TEST_CASE("float", "[]" ) {
test::sprintf(buffer, "%f", (float)42167);
REQUIRE(!strcmp(buffer, "42167.000000"));
+
+ test::sprintf(buffer, "%.9f", -12345.987654321);
+ REQUIRE(!strcmp(buffer, "-12345.987654321"));
}
@@ -968,4 +967,16 @@ TEST_CASE("misc", "[]" ) {
test::sprintf(buffer, "%u%u%ctest%d %s", 5, 3000, 'a', -20, "bit");
REQUIRE(!strcmp(buffer, "53000atest-20 bit"));
+
+ test::sprintf(buffer, "%.*f", 2, 0.33333333);
+ REQUIRE(!strcmp(buffer, "0.33"));
+
+ test::sprintf(buffer, "%.3s", "foobar");
+ REQUIRE(!strcmp(buffer, "foo"));
+
+ test::sprintf(buffer, "%10.5d", 4);
+ REQUIRE(!strcmp(buffer, " 00004"));
+
+ test::sprintf(buffer, "%*sx", -3, "hi");
+ REQUIRE(!strcmp(buffer, "hi x"));
}