// Test the listCollections command and system.namespaces mydb = db.getSisterDB( "list_collections1" ); mydb.dropDatabase(); mydb.foo.insert( { x : 5 } ); mydb.runCommand( { create : "bar", temp : true } ); res = mydb.runCommand( "listCollections", { cursor : {} } ); collections = new DBCommandCursor( db.getMongo(), res ).toArray(); bar = collections.filter( function(x){ return x.name == "bar"; } )[0]; foo = collections.filter( function(x){ return x.name == "foo" ; } )[0]; assert( bar ); assert( foo ); assert.eq( bar.name, mydb.bar.getName() ); assert.eq( foo.name, mydb.foo.getName() ); assert( mydb.bar.temp, tojson( bar ) ); getCollectionName = function(infoObj) { return infoObj.name; } assert.eq( mydb._getCollectionInfosSystemNamespaces().map(getCollectionName), mydb._getCollectionInfosCommand().map(getCollectionName) ); assert.eq( mydb.getCollectionInfos().map(getCollectionName), mydb._getCollectionInfosCommand().map(getCollectionName) ); mydb.dropDatabase();