Я использую angularfire для взаимодействия с пожарным.
this.items = this.afs.collection('formSubmissions', ref => ref.orderBy('createdAt', 'desc').limit(10)).valueChanges()
У меня также есть фиктивная служба со шпионами для проверки вызовов функций этой службы.
var afSpy = jasmine.createSpyObj('AngularFirestore', ['collection', 'valueChanges', 'snapshotChanges', 'pipe', 'add', 'doc', 'settingsDoc']);
afSpy.collection.and.returnValue(afSpy);
afSpy.doc.and.returnValue(afSpy);
afSpy.settingsDoc.and.returnValue(afSpy);
afSpy.valueChanges.and.returnValue(of([]));
afSpy.snapshotChanges.and.returnValue(afSpy);
afSpy.pipe.and.returnValue(of([]))
3-ий Я создал тест, который гарантирует, что моя функция сбора вызывается, но я также хотел бы убедиться, что мои функции orderBy & limit также вызываются правильно. Как бы я это сделал?
it('should make call to fetch the collection with the correct parameters', () => {
component.ngOnInit();
expect(afSpy.collection).toHaveBeenCalled(); //<--This Passes just fine
expect('order by/limit clause').toHaveBeenCalled(); // <--how do I test this?
});