The after uptimeEstimate is typically "4" on Windows, and might sometimes be "3", which fails the test. Hopefully uptimeEstimate will be removed entirely, soon.
40 lines
1.3 KiB
JavaScript
40 lines
1.3 KiB
JavaScript
|
|
t = db.dbadmin;
|
|
t.save( { x : 1 } );
|
|
|
|
before = db._adminCommand( "serverStatus" )
|
|
if ( before.mem.supported ){
|
|
cmdres = db._adminCommand( "closeAllDatabases" );
|
|
after = db._adminCommand( "serverStatus" );
|
|
assert( before.mem.mapped > after.mem.mapped , "closeAllDatabases does something before:" + tojson( before.mem ) + " after:" + tojson( after.mem ) + " cmd res:" + tojson( cmdres ) );
|
|
print( before.mem.mapped + " -->> " + after.mem.mapped );
|
|
}
|
|
else {
|
|
print( "can't test serverStatus on this machine" );
|
|
}
|
|
|
|
t.save( { x : 1 } );
|
|
|
|
res = db._adminCommand( "listDatabases" );
|
|
assert( res.databases && res.databases.length > 0 , "listDatabases 1 " + tojson(res) );
|
|
|
|
now = new Date();
|
|
x = db._adminCommand( "ismaster" );
|
|
assert( x.ismaster , "ismaster failed: " + tojson( x ) )
|
|
assert( x.localTime, "ismaster didn't include time: " + tojson(x))
|
|
localTimeSkew = x.localTime - now
|
|
if ( localTimeSkew >= 50 ) {
|
|
print( "Warning: localTimeSkew " + localTimeSkew + " > 50ms." )
|
|
}
|
|
assert.lt( localTimeSkew, 500, "isMaster.localTime" )
|
|
|
|
before = db.runCommand( "serverStatus" )
|
|
print(before.uptimeEstimate);
|
|
sleep( 5000 )
|
|
after = db.runCommand( "serverStatus" )
|
|
print(after.uptimeEstimate);
|
|
assert.lt( 2 , after.uptimeEstimate , "up1" )
|
|
assert.gt( after.uptimeEstimate , before.uptimeEstimate , "up2" )
|
|
|
|
// TODO: add more tests here
|