t = db.datasize3; t.drop(); function run(options) { var c = {dataSize: "test.datasize3"}; if (options) Object.extend(c, options); return db.runCommand(c); } t.insert({x: 1}); a = run(); b = run({estimate: true}); printjson(t.stats()); assert.eq(a.size, b.size); t.ensureIndex({x: 1}); for (i = 2; i < 100; i++) t.insert({x: i}); a = run({min: {x: 20}, max: {x: 50}}).size; b = run({min: {x: 20}, max: {x: 50}, estimate: true}).size; ratio = Math.min(a, b) / Math.max(a, b); assert.lt(0.97, ratio, "sizes not equal a: " + a + " b: " + b);