MCPcopy Create free account
hub / github.com/CppCXY/EmmyLuaCodeStyle / testToStringCharsRequiredHelper

Function testToStringCharsRequiredHelper

3rd/uriparser/test/test.cpp:1244–1282  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1242
1243namespace {
1244 bool testToStringCharsRequiredHelper(const wchar_t * text) {
1245 // Parse
1246 UriParserStateW state;
1247 UriUriW uri;
1248 state.uri = &uri;
1249 int res = uriParseUriW(&state, text);
1250 if (res != 0) {
1251 uriFreeUriMembersW(&uri);
1252 return false;
1253 }
1254
1255 // Required space?
1256 int charsRequired;
1257 if (uriToStringCharsRequiredW(&uri, &charsRequired) != 0) {
1258 uriFreeUriMembersW(&uri);
1259 return false;
1260 }
1261
1262 EXPECT_EQ(charsRequired, wcslen(text));
1263
1264 // Minimum
1265 wchar_t * buffer = new wchar_t[charsRequired + 1];
1266 if (uriToStringW(buffer, &uri, charsRequired + 1, NULL) != 0) {
1267 uriFreeUriMembersW(&uri);
1268 delete [] buffer;
1269 return false;
1270 }
1271
1272 // One less than minimum
1273 if (uriToStringW(buffer, &uri, charsRequired, NULL) == 0) {
1274 uriFreeUriMembersW(&uri);
1275 delete [] buffer;
1276 return false;
1277 }
1278
1279 uriFreeUriMembersW(&uri);
1280 delete [] buffer;
1281 return true;
1282 }
1283} // namespace
1284
1285TEST(UriSuite, TestToStringCharsRequired) {

Callers 1

TESTFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected