summaryrefslogtreecommitdiff
path: root/src/mongo/dbtests/jsontests.cpp
diff options
context:
space:
mode:
authorShaun Verch <shaun.verch@10gen.com>2012-09-21 13:08:02 -0700
committerShaun Verch <shaun.verch@10gen.com>2012-09-24 18:40:25 -0700
commit924d00cee993434dd139ade27b358fbc8ce44fe2 (patch)
tree99bb9c084f754f55ef9d5201aa121924e6cf6a65 /src/mongo/dbtests/jsontests.cpp
parenta8822b98f8f960ce85e62f5d46cd6c86435e7b71 (diff)
downloadmongo-924d00cee993434dd139ade27b358fbc8ce44fe2.tar.gz
SERVER-7104 Fixed handling of Undefined type in jsonString and added test cases
Diffstat (limited to 'src/mongo/dbtests/jsontests.cpp')
-rw-r--r--src/mongo/dbtests/jsontests.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mongo/dbtests/jsontests.cpp b/src/mongo/dbtests/jsontests.cpp
index 82b9c280390..82e6963767d 100644
--- a/src/mongo/dbtests/jsontests.cpp
+++ b/src/mongo/dbtests/jsontests.cpp
@@ -158,6 +158,17 @@ namespace JsonTests {
}
};
+ class SingleUndefinedMember {
+ public:
+ void run() {
+ BSONObjBuilder b;
+ b.appendUndefined( "a" );
+ ASSERT_EQUALS( "{ \"a\" : { \"$undefined\" : true } }", b.done().jsonString( Strict ) );
+ ASSERT_EQUALS( "{ \"a\" : undefined }", b.done().jsonString( JS ) );
+ ASSERT_EQUALS( "{ \"a\" : undefined }", b.done().jsonString( TenGen ) );
+ }
+ };
+
class SingleObjectMember {
public:
void run() {
@@ -1108,6 +1119,7 @@ namespace JsonTests {
add< JsonStringTests::NegativeNumber >();
add< JsonStringTests::SingleBoolMember >();
add< JsonStringTests::SingleNullMember >();
+ add< JsonStringTests::SingleUndefinedMember >();
add< JsonStringTests::SingleObjectMember >();
add< JsonStringTests::TwoMembers >();
add< JsonStringTests::EmptyArray >();