diff options
Diffstat (limited to 'dbtests/jsontests.cpp')
-rw-r--r-- | dbtests/jsontests.cpp | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/dbtests/jsontests.cpp b/dbtests/jsontests.cpp index b630523..efaee44 100644 --- a/dbtests/jsontests.cpp +++ b/dbtests/jsontests.cpp @@ -386,7 +386,8 @@ namespace JsonTests { b.appendMaxKey( "u" ); BSONObj o = b.obj(); - cout << o.jsonString() << endl; + o.jsonString(); + //cout << o.jsonString() << endl; } }; @@ -499,16 +500,21 @@ namespace JsonTests { } }; - class FancyNumber { - public: - virtual ~FancyNumber() {} - void run() { - ASSERT_EQUALS( int( 1000000 * bson().firstElement().number() ), - int( 1000000 * fromjson( json() ).firstElement().number() ) ); + class RealNumber : public Base { + virtual BSONObj bson() const { + BSONObjBuilder b; + b.append( "a", strtod( "0.7", 0 ) ); + return b.obj(); } + virtual string json() const { + return "{ \"a\" : 0.7 }"; + } + }; + + class FancyNumber : public Base { virtual BSONObj bson() const { BSONObjBuilder b; - b.append( "a", -4.4433e-2 ); + b.append( "a", strtod( "-4.4433e-2", 0 ) ); return b.obj(); } virtual string json() const { @@ -1124,6 +1130,7 @@ namespace JsonTests { add< FromJsonTests::ReservedFieldName >(); add< FromJsonTests::OkDollarFieldName >(); add< FromJsonTests::SingleNumber >(); + add< FromJsonTests::RealNumber >(); add< FromJsonTests::FancyNumber >(); add< FromJsonTests::TwoElements >(); add< FromJsonTests::Subobject >(); |