Improves SkipWhitespace coverage

This commit is contained in:
Milo Yip 2015-04-15 20:38:46 +08:00
parent ee505261c1
commit 998e76fecc

View File

@ -46,16 +46,18 @@ using namespace rapidjson_simd;
#endif #endif
TEST(SIMD, SIMD_SUFFIX(SkipWhitespace)) { TEST(SIMD, SIMD_SUFFIX(SkipWhitespace)) {
char buffer[258]; char buffer[257];
for (size_t i = 0; i < 256; i++) for (size_t i = 0; i < 256; i++)
buffer[i] = " \t\r\n"[i % 4]; buffer[i] = " \t\r\n"[i % 4];
buffer[256] = 'X'; for (size_t i = 0; i < 256; i += 15)
buffer[257] = '\0'; buffer[i] = 'X';
buffer[256] = '\0';
// Try to start from different position, to test different memory alignments StringStream s(buffer);
for (size_t i = 0; i < 256; i++) { for(;;) {
StringStream s(buffer + i);
SkipWhitespace(s); SkipWhitespace(s);
EXPECT_EQ('X', s.Peek()); if (s.Peek() == '\0')
break;
EXPECT_EQ('X', s.Take());
} }
} }