Tested in find

pull/2/head
Louis Chatriot 10 years ago
parent c11128160f
commit 547570e9cb
  1. 2
      lib/datastore.js
  2. 2
      test/cursor.test.js
  3. 31
      test/db.test.js

@ -403,6 +403,8 @@ Datastore.prototype.find = function (query, projection, callback) {
return callback(null, res);
});
cursor.projection(projection);
if (typeof callback === 'function') {
cursor.exec(callback);
} else {

@ -653,7 +653,7 @@ describe('Cursor', function () {
}); // ===== End of 'Sorting' =====
describe.only('Projections', function () {
describe('Projections', function () {
var doc1, doc2, doc3, doc4, doc0;

@ -661,6 +661,37 @@ describe('Database', function () {
});
});
it.only('Can use projections in find, normal or cursor way', function (done) {
d.insert({ a: 2, hello: 'world' }, function (err, doc0) {
d.insert({ a: 24, hello: 'earth' }, function (err, doc1) {
d.find({ a: 2 }, { a: 0, _id: 0 }, function (err, docs) {
assert.isNull(err);
docs.length.should.equal(1);
assert.deepEqual(docs[0], { hello: 'world' });
d.find({ a: 2 }, { a: 0, _id: 0 }).exec(function (err, docs) {
assert.isNull(err);
docs.length.should.equal(1);
assert.deepEqual(docs[0], { hello: 'world' });
// Can't use both modes at once if not _id
d.find({ a: 2 }, { a: 0, hello: 1 }, function (err, docs) {
assert.isNotNull(err);
assert.isUndefined(docs);
d.find({ a: 2 }, { a: 0, hello: 1 }).exec(function (err, docs) {
assert.isNotNull(err);
assert.isUndefined(docs);
done();
});
});
});
});
});
});
});
}); // ==== End of 'Find' ==== //
describe('Count', function() {

Loading…
Cancel
Save