@ -654,14 +654,16 @@ bool ConformanceTestSuite::RunSuite(ConformanceTestRunner* runner,
RunValidJsonTest ( " HelloWorld " , " { \" optionalString \" : \" Hello, World! \" } " ,
" optional_string: 'Hello, World!' " ) ;
// NOTE: The spec for JSON support is still being sorted out, these may not
// all be correct.
// Test field name conventions.
RunValidJsonTest (
" FieldNameInSnakeCase " ,
R " ({
" fieldname1 " : 1 ,
" fieldName2 " : 2 ,
" F ieldName3" : 3 ,
" F ieldName4" : 4
" f ieldName3" : 3 ,
" f ieldName4" : 4
} ) " ,
R " (
fieldname1 : 1
@ -848,18 +850,22 @@ bool ConformanceTestSuite::RunSuite(ConformanceTestRunner* runner,
" optionalNestedMessage " : { a : 1 } ,
" optional_nested_message " : { }
} ) " );
// NOTE: The spec for JSON support is still being sorted out, these may not
// all be correct.
// Serializers should use lowerCamelCase by default.
RunValidJsonTestWithValidator (
" FieldNameInLowerCamelCase " ,
R " ({
" fieldname1 " : 1 ,
" fieldName2 " : 2 ,
" FieldName3 " : 3
" fieldName3 " : 3 ,
" fieldName4 " : 4
} ) " ,
[ ] ( const Json : : Value & value ) {
return value . isMember ( " fieldname1 " ) & &
value . isMember ( " fieldName2 " ) & &
value . isMember ( " FieldName3 " ) ;
value . isMember ( " fieldName3 " ) & &
value . isMember ( " fieldName4 " ) ;
} ) ;
RunValidJsonTestWithValidator (
" FieldNameWithNumbers " ,
@ -889,6 +895,24 @@ bool ConformanceTestSuite::RunSuite(ConformanceTestRunner* runner,
value . isMember ( " fIELDNAME11 " ) & &
value . isMember ( " fIELDName12 " ) ;
} ) ;
RunValidJsonTestWithValidator (
" FieldNameWithDoubleUnderscores " ,
R " ({
" fieldName13 " : 13 ,
" fieldName14 " : 14 ,
" fieldName15 " : 15 ,
" fieldName16 " : 16 ,
" fieldName17 " : 17 ,
" fieldName18 " : 18
} ) " ,
[ ] ( const Json : : Value & value ) {
return value . isMember ( " fieldName13 " ) & &
value . isMember ( " fieldName14 " ) & &
value . isMember ( " fieldName15 " ) & &
value . isMember ( " fieldName16 " ) & &
value . isMember ( " fieldName17 " ) & &
value . isMember ( " fieldName18 " ) ;
} ) ;
// Integer fields.
RunValidJsonTest (