0
私のユニットテストで次のエラーが発生しています。必要に応じてdashboard.service.jsファイルを投稿できます。 DashboardService.getHostDetails()は、spyOn()を使用しようとしているため、処理しようとしている約束を返します。角度単位テスト - 前関数またはスペックでスパイを作成する必要があります
Error: Spies must be created in a before function or a spec
dashboard.spec.js
import DashboardModule from './dashboard.module'
import DashboardService from './dashboard.service'
let dashboardService,
_$translateProvider,
_$q;
describe('DashboardService',() => {
beforeEach(angular.mock.module(DashboardModule));
beforeEach(() => {
angular.mock.module({
$translateProvider: jasmine.createSpyObj('$translateProvider',
['translations', 'preferredLanguage']
),
$translate: jasmine.createSpyObj('$translate',
['use']
)
});
})
beforeEach(inject(($translateProvider, $q, DashboardService) => {
_$translateProvider = $translateProvider;
_$q = $q;
dashboardService = DashboardService;
}));
beforeEach(() => {
_$translateProvider.translations('en', {});
_$translateProvider.preferredLanguage('en');
const promise = { then: jasmine.createSpy() };
spyOn(dashboardService, 'getHostDetails').and.andReturn(promise);
});
it('should load the host information',() => {
const hostDetails = dashboardService.getHostDetails();
console.log(hostDetails);
hostDetails.then((res) => {
console.log(res);
});
});
});