1
0
Fork 0
mirror of https://github.com/mmumshad/ansible-playable.git synced 2025-02-15 04:42:05 +00:00
ansible-playable/client/components/ui-router/ui-router.mock.js

39 lines
1.1 KiB
JavaScript
Raw Normal View History

2017-06-07 17:36:44 +00:00
'use strict';
const angular = require('angular');
angular.module('stateMock', []);
angular.module('stateMock')
.service('$state', function($q) {
this.expectedTransitions = [];
this.transitionTo = function(stateName) {
if(this.expectedTransitions.length > 0) {
var expectedState = this.expectedTransitions.shift();
if(expectedState !== stateName) {
throw Error(`Expected transition to state: ${expectedState
} but transitioned to ${stateName}`);
}
} else {
throw Error(`No more transitions were expected! Tried to transition to ${stateName}`);
}
console.log(`Mock transition to: ${stateName}`);
var deferred = $q.defer();
var promise = deferred.promise;
deferred.resolve();
return promise;
};
this.go = this.transitionTo;
this.expectTransitionTo = function(stateName) {
this.expectedTransitions.push(stateName);
};
this.ensureAllTransitionsHappened = function() {
if(this.expectedTransitions.length > 0) {
throw Error('Not all transitions happened!');
}
};
});