diff --git a/test/Model.js b/test/Model.js index 820bcfa..d5127e7 100644 --- a/test/Model.js +++ b/test/Model.js @@ -393,6 +393,35 @@ describe("Model", function () { }); }); }); + describe("next()", function () { + it("should return a promise", function () { + chai.expect(model.find().next()).to.be.an.instanceof(Promise); + }); + it("which should resolve to the next instance in the query", function () { + return chai.expect(model.find().next()).to.eventually.be.an.instanceof(model.Instance); + }); + it("should support using callbacks instead of promises", function (done) { + model.find().next(function (err, instance) { + if (err) + return done(err); + chai.expect(instance).to.be.an.instanceof(model.Instance); + return done(); + }); + }); + }); + describe("rewind()", function () { + it("should return a new cursor", function () { + chai.expect(model.find().rewind()).to.be.an.instanceof(Cursor); + }); + it("which should start returning items from the start of the query", function () { + var cursor = model.find(); + return cursor.next().then(function (firstItem) { return cursor.rewind().next().then(function (rewoundItem) { return chai.expect(firstItem.document).to.eql(rewoundItem.document); }); }); + }); + it("should carry through any other attributes", function () { + var cursor = model.find().sort({ answer: -1 }).limit(2); + return chai.expect(cursor.toArray().then(function () { return cursor.rewind().map(function (i) { return i.answer; }); })).to.eventually.eql([14, 13]); + }); + }); describe("count()", function () { it("should return a promise", function () { chai.expect(model.find().count()).to.be.instanceof(Promise); diff --git a/test/Model.js.map b/test/Model.js.map index 0b6046b..342940c 100644 --- a/test/Model.js.map +++ b/test/Model.js.map @@ -1 +1 @@ -{"version":3,"file":"Model.js","sourceRoot":"","sources":["Model.ts"],"names":["Test","Test.constructor"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Model.js","sourceRoot":"","sources":["Model.ts"],"names":["Test","Test.constructor"],"mappings":"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"} \ No newline at end of file diff --git a/test/Model.ts b/test/Model.ts index 281bc56..5bcdc20 100644 --- a/test/Model.ts +++ b/test/Model.ts @@ -450,6 +450,40 @@ describe("Model",() => { }); }); + describe("next()",() => { + it("should return a promise",() => { + chai.expect(model.find().next()).to.be.an.instanceof(Promise); + }); + + it("which should resolve to the next instance in the query",() => { + return chai.expect(model.find().next()).to.eventually.be.an.instanceof(model.Instance); + }); + + it("should support using callbacks instead of promises",(done) => { + model.find().next((err, instance) => { + if (err) return done(err); + chai.expect(instance).to.be.an.instanceof(model.Instance); + return done(); + }); + }); + }); + + describe("rewind()",() => { + it("should return a new cursor",() => { + chai.expect(model.find().rewind()).to.be.an.instanceof(Cursor); + }); + + it("which should start returning items from the start of the query",() => { + var cursor = model.find(); + return cursor.next().then(firstItem => cursor.rewind().next().then(rewoundItem => chai.expect(firstItem.document).to.eql(rewoundItem.document))); + }); + + it("should carry through any other attributes",() => { + var cursor = model.find().sort({ answer: -1 }).limit(2); + return chai.expect(cursor.toArray().then(() => cursor.rewind().map(i => i.answer))).to.eventually.eql([14, 13]); + }); + }); + describe("count()",() => { it("should return a promise",() => { chai.expect(model.find().count()).to.be.instanceof(Promise);