Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/miloyip/rapidjson.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMilo Yip <miloyip@gmail.com>2016-04-16 10:19:34 +0300
committerMilo Yip <miloyip@gmail.com>2016-04-16 10:19:34 +0300
commit3da4afd259667ce57b5b41db4a0e589ba861d1a9 (patch)
tree4241535c174954cde7a015ad41fb67270dffb4ca
parent8fcc65bf581b6da1c3fc04a5c39222f2dbdce08f (diff)
Another trial on writer coverage
-rw-r--r--test/unittest/simdtest.cpp40
-rw-r--r--test/unittest/writertest.cpp6
2 files changed, 27 insertions, 19 deletions
diff --git a/test/unittest/simdtest.cpp b/test/unittest/simdtest.cpp
index 1b6fcef3..84f8cb05 100644
--- a/test/unittest/simdtest.cpp
+++ b/test/unittest/simdtest.cpp
@@ -105,24 +105,28 @@ struct ScanCopyUnescapedStringHandler : BaseReaderHandler<UTF8<>, ScanCopyUnesca
template <unsigned parseFlags, typename StreamType>
void TestScanCopyUnescapedString() {
- for (size_t step = 0; step < 1024; step++) {
- char json[1024 + 5];
- char *p = json;
- *p ++= '\"';
- for (size_t i = 0; i < step; i++)
- *p++= "ABCD"[i % 4];
- *p++ = '\\';
- *p++ = '\\';
- *p++ = '\"';
- *p++ = '\0';
-
- StreamType s(json);
- Reader reader;
- ScanCopyUnescapedStringHandler h;
- reader.Parse<parseFlags>(s, h);
- EXPECT_TRUE(memcmp(h.buffer, json + 1, step) == 0);
- EXPECT_EQ('\\', h.buffer[step]); // escaped
- EXPECT_EQ('\0', h.buffer[step + 1]);
+ char buffer[1024 + 5 + 32];
+
+ for (size_t offset = 0; offset < 32; offset++) {
+ for (size_t step = 0; step < 1024; step++) {
+ char* json = buffer + offset;
+ char *p = json;
+ *p++ = '\"';
+ for (size_t i = 0; i < step; i++)
+ *p++ = "ABCD"[i % 4];
+ *p++ = '\\';
+ *p++ = '\\';
+ *p++ = '\"';
+ *p++ = '\0';
+
+ StreamType s(json);
+ Reader reader;
+ ScanCopyUnescapedStringHandler h;
+ reader.Parse<parseFlags>(s, h);
+ EXPECT_TRUE(memcmp(h.buffer, json + 1, step) == 0);
+ EXPECT_EQ('\\', h.buffer[step]); // escaped
+ EXPECT_EQ('\0', h.buffer[step + 1]);
+ }
}
}
diff --git a/test/unittest/writertest.cpp b/test/unittest/writertest.cpp
index af09f8b3..9c68c539 100644
--- a/test/unittest/writertest.cpp
+++ b/test/unittest/writertest.cpp
@@ -448,6 +448,10 @@ TEST(Writer, NaN) {
StringBuffer buffer;
Writer<StringBuffer> writer(buffer);
EXPECT_FALSE(writer.Double(nan));
+
+ GenericStringBuffer<UTF16<> > buffer2;
+ Writer<GenericStringBuffer<UTF16<> > > writer2(buffer2);
+ EXPECT_FALSE(writer2.Double(nan));
}
TEST(Writer, Inf) {
@@ -456,7 +460,7 @@ TEST(Writer, Inf) {
StringBuffer buffer;
{
Writer<StringBuffer> writer(buffer);
- EXPECT_FALSE(writer.Double(inf));
+ EXPECT_FALSE(writer.Double(inf));
}
{
Writer<StringBuffer> writer(buffer);