describe('test mock', function() {
var resource, employeeRoles, provider, mockBaseUrl, mockUser, mockOffices, mockCalendar, $window, $httpBackend, $scope, $serializer;
beforeEach(angular.mock.module('appointmentManager'));
beforeEach(inject(function ($injector, $rootScope, $httpParamSerializer) {
mockCalendar = {
// sample data
};
$window = $injector.get('$window');
$window.ApiBaseUrl = mockBaseUrl;
$window.LoggedInUser = mockUser;
$httpBackend = $injector.get('$httpBackend');
$httpBackend.expectPOST('api/Calendar/GetCalendar').respond(200, mockCalendar);
$scope.$apply();
$httpBackend.flush();
}));
it('should be defined in module', function() {
expect(resource).toBeDefined();
expect(provider).toBeDefined();
});
it('active employees should be true', function() {
expect(provider.isNoActiveEmployeesAvailable).toBe(false);
//test with another mockCalendar data
});
afterEach(function() {
$scope.$destroy();
$httpBackend.verifyNoOutstandingExpectation();
$httpBackend.verifyNoOutstandingRequest();
});
});
Ich möchte mit anderen Mock Response im nächsten it
Block testen. Wie kann ich einen neuen Wert in mockCalendar
Variable zuweisen, bevor der zweite it
Block ausgeführt wird?AngularJS Jasmine - Test mit verschiedenen Mock Response im nächsten 'it' Block
können nicht Sie haben eine andere gerade haben 'describe' statt' Es '.. Auf diese Weise können verschiedene' before angeben 'drin für beide und auch andere Mock-Daten haben – tanmay
@tanmay gibt es keine andere Möglichkeit ??? – Aswathy
Denke nicht. Sie können Ihr 'beforeEach' jedoch in eine Funktion einfügen, die' mockCalender' als Parameter akzeptiert und es erneut verwendet, um Code-Duplizierung zu vermeiden. – tanmay