nexus site path corrected
[portal.git] / ecomp-portal-FE / client / utils / test-utils / test-utils.js
1 /*-
2  * ================================================================================
3  * eCOMP Portal
4  * ================================================================================
5  * Copyright (C) 2017 AT&T Intellectual Property
6  * ================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ================================================================================
19  */
20 /**
21  * Created by nnaffar on 1/10/16.
22  */
23 'use strict';
24 angular.module('testUtils', [])
25     .factory('promisesTestUtils', function utilsFactory($q) {
26
27         var setupPromise = function(object, method, data, resolve) {
28             spyOn(object, method).and.callFake(function() {
29                 var deferred = $q.defer();
30                 if (resolve) {
31                     deferred.resolve(data);
32                 } else {
33                     deferred.reject(data);
34                 }
35
36                 return deferred.promise;
37             });
38         };
39
40         var service = {};
41
42         service.resolvePromise = function(object, method, data) {
43             return setupPromise(object, method, data, true);
44         };
45
46         service.rejectPromise = function(object, method, data) {
47             return setupPromise(object, method, data, false);
48         };
49
50         return service;
51     });