Skip to content

Commit bbe1b38

Browse files
committed
fixed snapshot tests
1 parent e4169d4 commit bbe1b38

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

test/unit/firestore-document.js

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -466,9 +466,16 @@ describe('MockFirestoreDocument', function () {
466466

467467
describe('#onSnapshot', function () {
468468
it('returns value after document is updated', function (done) {
469+
// onSnapshot calls immediately with the current state;
470+
// we only care about the updated..
471+
var first = true;
469472
doc.onSnapshot(function(snap) {
470-
expect(snap.get('newTitle')).to.equal('A new title');
471-
done();
473+
if (!first) {
474+
expect(snap.get('newTitle')).to.equal('A new title');
475+
done();
476+
}
477+
478+
first = false;
472479
});
473480
doc.update({newTitle: 'A new title'}, {setMerge: true});
474481
db.flush();
@@ -483,8 +490,6 @@ describe('MockFirestoreDocument', function () {
483490
expect(err).to.equal(error);
484491
done();
485492
});
486-
doc.update({name: 'A'}, {setMerge: true});
487-
doc.flush();
488493
});
489494

490495
it('does not returns value when not updated', function (done) {
@@ -494,10 +499,10 @@ describe('MockFirestoreDocument', function () {
494499
});
495500
doc.update({newTitle: 'A new title'}, {setMerge: true});
496501
doc.flush();
497-
expect(callCount).to.equal(1);
502+
expect(callCount).to.equal(2);
498503
doc.get();
499504
doc.flush();
500-
expect(callCount).to.equal(1);
505+
expect(callCount).to.equal(2);
501506
done();
502507
});
503508

@@ -508,21 +513,19 @@ describe('MockFirestoreDocument', function () {
508513
});
509514
doc.update({newTitle: 'A new title'}, {setMerge: true});
510515
doc.flush();
511-
expect(callCount).to.equal(1);
516+
expect(callCount).to.equal(2);
512517
doc.update({newTitle: 'A newer title'}, {setMerge: true});
513518
unsubscribe();
514519
doc.flush();
515-
expect(callCount).to.equal(1);
520+
expect(callCount).to.equal(2);
516521
done();
517522
});
518523

519524
it('accepts option includeMetadataChanges', function (done) {
520525
doc.onSnapshot({includeMetadataChanges: true}, function(snap) {
521-
expect(snap.get('newTitle')).to.equal('A new title');
526+
expect(snap.get('title')).to.equal('title');
522527
done();
523528
});
524-
doc.update({newTitle: 'A new title'}, {setMerge: true});
525-
doc.flush();
526529
});
527530
});
528531
});

0 commit comments

Comments
 (0)