summaryrefslogtreecommitdiff
path: root/jstests/core/numberlong.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/core/numberlong.js')
-rw-r--r--jstests/core/numberlong.js171
1 files changed, 97 insertions, 74 deletions
diff --git a/jstests/core/numberlong.js b/jstests/core/numberlong.js
index adda61f8acb..884a301440e 100644
--- a/jstests/core/numberlong.js
+++ b/jstests/core/numberlong.js
@@ -1,93 +1,102 @@
-assert.eq.automsg( "0", "new NumberLong()" );
-
-n = new NumberLong( 4 );
-assert.eq.automsg( "4", "n" );
-assert.eq.automsg( "4", "n.toNumber()" );
-assert.eq.automsg( "8", "n + 4" );
-assert.eq.automsg( "'NumberLong(4)'", "n.toString()" );
-assert.eq.automsg( "'NumberLong(4)'", "tojson( n )" );
+assert.eq.automsg("0", "new NumberLong()");
+
+n = new NumberLong(4);
+assert.eq.automsg("4", "n");
+assert.eq.automsg("4", "n.toNumber()");
+assert.eq.automsg("8", "n + 4");
+assert.eq.automsg("'NumberLong(4)'", "n.toString()");
+assert.eq.automsg("'NumberLong(4)'", "tojson( n )");
a = {};
a.a = n;
-p = tojson( a );
-assert.eq.automsg( "'{ \"a\" : NumberLong(4) }'", "p" );
-
-assert.eq.automsg( "NumberLong(4 )", "eval( tojson( NumberLong( 4 ) ) )" );
-assert.eq.automsg( "a", "eval( tojson( a ) )" );
-
-n = new NumberLong( -4 );
-assert.eq.automsg( "-4", "n" );
-assert.eq.automsg( "-4", "n.toNumber()" );
-assert.eq.automsg( "0", "n + 4" );
-assert.eq.automsg( "'NumberLong(-4)'", "n.toString()" );
-assert.eq.automsg( "'NumberLong(-4)'", "tojson( n )" );
+p = tojson(a);
+assert.eq.automsg("'{ \"a\" : NumberLong(4) }'", "p");
+
+assert.eq.automsg("NumberLong(4 )", "eval( tojson( NumberLong( 4 ) ) )");
+assert.eq.automsg("a", "eval( tojson( a ) )");
+
+n = new NumberLong(-4);
+assert.eq.automsg("-4", "n");
+assert.eq.automsg("-4", "n.toNumber()");
+assert.eq.automsg("0", "n + 4");
+assert.eq.automsg("'NumberLong(-4)'", "n.toString()");
+assert.eq.automsg("'NumberLong(-4)'", "tojson( n )");
a = {};
a.a = n;
-p = tojson( a );
-assert.eq.automsg( "'{ \"a\" : NumberLong(-4) }'", "p" );
+p = tojson(a);
+assert.eq.automsg("'{ \"a\" : NumberLong(-4) }'", "p");
// double
-n = new NumberLong(4294967296); // 2^32
-assert.eq.automsg( "4294967296", "n" );
-assert.eq.automsg( "4294967296", "n.toNumber()" );
-assert.eq.automsg( "4294967295", "n - 1" );
-assert.eq.automsg( "'NumberLong(\"4294967296\")'", "n.toString()" );
-assert.eq.automsg( "'NumberLong(\"4294967296\")'", "tojson( n )" );
-assert.eq.automsg( "4294967296", "n.floatApprox" );
-assert.eq.automsg( "", "n.top" );
-assert.eq.automsg( "", "n.bottom" );
+n = new NumberLong(4294967296); // 2^32
+assert.eq.automsg("4294967296", "n");
+assert.eq.automsg("4294967296", "n.toNumber()");
+assert.eq.automsg("4294967295", "n - 1");
+assert.eq.automsg("'NumberLong(\"4294967296\")'", "n.toString()");
+assert.eq.automsg("'NumberLong(\"4294967296\")'", "tojson( n )");
+assert.eq.automsg("4294967296", "n.floatApprox");
+assert.eq.automsg("", "n.top");
+assert.eq.automsg("", "n.bottom");
a = {};
a.a = n;
-p = tojson( a );
-assert.eq.automsg( "'{ \"a\" : NumberLong(\"4294967296\") }'", "p" );
+p = tojson(a);
+assert.eq.automsg("'{ \"a\" : NumberLong(\"4294967296\") }'", "p");
// too big to fit in double
-n = new NumberLong( "11111111111111111" );
-assert.eq.automsg( "11111111111111112", "n.toNumber()" );
-assert.eq.automsg( "11111111111111116", "n + 4" );
-assert.eq.automsg( "'NumberLong(\"11111111111111111\")'", "n.toString()" );
-assert.eq.automsg( "'NumberLong(\"11111111111111111\")'", "tojson( n )" );
+n = new NumberLong("11111111111111111");
+assert.eq.automsg("11111111111111112", "n.toNumber()");
+assert.eq.automsg("11111111111111116", "n + 4");
+assert.eq.automsg("'NumberLong(\"11111111111111111\")'", "n.toString()");
+assert.eq.automsg("'NumberLong(\"11111111111111111\")'", "tojson( n )");
a = {};
a.a = n;
-p = tojson( a );
-assert.eq.automsg( "'{ \"a\" : NumberLong(\"11111111111111111\") }'", "p" );
-
-assert.eq.automsg( "NumberLong('11111111111111111' )", "eval( tojson( NumberLong( '11111111111111111' ) ) )" );
-assert.eq.automsg( "a", "eval( tojson( a ) )" );
-
-n = new NumberLong( "-11111111111111111" );
-assert.eq.automsg( "-11111111111111112", "n.toNumber()" );
-assert.eq.automsg( "-11111111111111108", "n + 4" );
-assert.eq.automsg( "'NumberLong(\"-11111111111111111\")'", "n.toString()" );
-assert.eq.automsg( "'NumberLong(\"-11111111111111111\")'", "tojson( n )" );
-assert.eq.automsg( "-11111111111111112", "n.floatApprox" );
-assert.eq.automsg( "4292380288", "n.top" );
-assert.eq.automsg( "3643379257", "n.bottom" );
+p = tojson(a);
+assert.eq.automsg("'{ \"a\" : NumberLong(\"11111111111111111\") }'", "p");
+
+assert.eq.automsg("NumberLong('11111111111111111' )",
+ "eval( tojson( NumberLong( '11111111111111111' ) ) )");
+assert.eq.automsg("a", "eval( tojson( a ) )");
+
+n = new NumberLong("-11111111111111111");
+assert.eq.automsg("-11111111111111112", "n.toNumber()");
+assert.eq.automsg("-11111111111111108", "n + 4");
+assert.eq.automsg("'NumberLong(\"-11111111111111111\")'", "n.toString()");
+assert.eq.automsg("'NumberLong(\"-11111111111111111\")'", "tojson( n )");
+assert.eq.automsg("-11111111111111112", "n.floatApprox");
+assert.eq.automsg("4292380288", "n.top");
+assert.eq.automsg("3643379257", "n.bottom");
a = {};
a.a = n;
-p = tojson( a );
-assert.eq.automsg( "'{ \"a\" : NumberLong(\"-11111111111111111\") }'", "p" );
+p = tojson(a);
+assert.eq.automsg("'{ \"a\" : NumberLong(\"-11111111111111111\") }'", "p");
-n = new NumberLong( "9223372036854775807" );
-assert.eq.automsg( "9223372036854775807", "n.floatApprox" );
-assert.eq.automsg( "2147483647", "n.top" );
-assert.eq.automsg( "4294967295", "n.bottom" );
+n = new NumberLong("9223372036854775807");
+assert.eq.automsg("9223372036854775807", "n.floatApprox");
+assert.eq.automsg("2147483647", "n.top");
+assert.eq.automsg("4294967295", "n.bottom");
-n = new NumberLong( 9223372036854775807, 2147483647, 4294967295 );
-assert.eq.automsg( "9223372036854775807", "n.floatApprox" );
-assert.eq.automsg( "2147483647", "n.top" );
-assert.eq.automsg( "4294967295", "n.bottom" );
+n = new NumberLong(9223372036854775807, 2147483647, 4294967295);
+assert.eq.automsg("9223372036854775807", "n.floatApprox");
+assert.eq.automsg("2147483647", "n.top");
+assert.eq.automsg("4294967295", "n.bottom");
// parsing
-assert.throws.automsg( function() { new NumberLong( "" ); } );
-assert.throws.automsg( function() { new NumberLong( "y" ); } );
-assert.throws.automsg( function() { new NumberLong( "11111111111111111111" ); } );
+assert.throws.automsg(function() {
+ new NumberLong("");
+});
+assert.throws.automsg(function() {
+ new NumberLong("y");
+});
+assert.throws.automsg(function() {
+ new NumberLong("11111111111111111111");
+});
// create NumberLong from NumberInt (SERVER-9973)
-assert.doesNotThrow.automsg( function() { new NumberLong(NumberInt(1)); } );
+assert.doesNotThrow.automsg(function() {
+ new NumberLong(NumberInt(1));
+});
// check that creating a NumberLong from a NumberLong bigger than a double doesn't
// get a truncated value (SERVER-9973)
-n = new NumberLong(NumberLong( "11111111111111111" ));
+n = new NumberLong(NumberLong("11111111111111111"));
assert.eq.automsg("n.toString()", "'NumberLong(\"11111111111111111\")'");
//
@@ -112,10 +121,24 @@ assert.eq(left.compare(left), 0);
assert.eq(right.compare(right), 0);
// Bad input to .compare().
-assert.throws(function() { NumberLong("0").compare(); });
-assert.throws(function() { NumberLong("0").compare(null); });
-assert.throws(function() { NumberLong("0").compare(undefined); });
-assert.throws(function() { NumberLong("0").compare(3); });
-assert.throws(function() { NumberLong("0").compare("foo"); });
-assert.throws(function() { NumberLong("0").compare(NumberLong("0"), 3); });
-assert.throws(function() { NumberLong("0").compare({'replSet2Members': 6}); });
+assert.throws(function() {
+ NumberLong("0").compare();
+});
+assert.throws(function() {
+ NumberLong("0").compare(null);
+});
+assert.throws(function() {
+ NumberLong("0").compare(undefined);
+});
+assert.throws(function() {
+ NumberLong("0").compare(3);
+});
+assert.throws(function() {
+ NumberLong("0").compare("foo");
+});
+assert.throws(function() {
+ NumberLong("0").compare(NumberLong("0"), 3);
+});
+assert.throws(function() {
+ NumberLong("0").compare({'replSet2Members': 6});
+});