Commit ec491dafbf746b3b2195221e639097693712a461
1 parent
4dc768e2da
Exists in
master
pre commit
Showing
4 changed files
with
46 additions
and
43 deletions
Show diff stats
spec/controllerSpec.js
1 | describe('Controladores abm vendedor cobrador', function() { | 1 | describe('Controladores abm vendedor cobrador', function() { |
2 | 2 | ||
3 | var $controller; | 3 | var $controller; |
4 | 4 | ||
5 | beforeEach(function() { | 5 | beforeEach(function() { |
6 | module('focaAbmVendedorCobrador'); | 6 | module('focaAbmVendedorCobrador'); |
7 | inject(function(_$controller_) { | 7 | inject(function(_$controller_) { |
8 | $controller = _$controller_; | 8 | $controller = _$controller_; |
9 | }); | 9 | }); |
10 | }) | 10 | }); |
11 | describe('controlador focaAbmVendedoresCobradoresController', function() { | 11 | describe('controlador focaAbmVendedoresCobradoresController', function() { |
12 | 12 | ||
13 | var focaBotoneraLateralService = { | 13 | var focaBotoneraLateralService = { |
14 | showSalir: function() { }, | 14 | showSalir: function() { }, |
15 | showPausar: function() { }, | 15 | showPausar: function() { }, |
16 | showCancelar: function() { }, | 16 | showCancelar: function() { }, |
17 | showGuardar: function() { } | 17 | showGuardar: function() { } |
18 | }; | 18 | }; |
19 | 19 | ||
20 | it('existe el controlador focaAbmVendedoresCobradoresController', function() { | 20 | it('existe el controlador focaAbmVendedoresCobradoresController', function() { |
21 | //act | 21 | //act |
22 | var controlador = $controller('focaAbmVendedoresCobradoresController', { | 22 | var controlador = $controller('focaAbmVendedoresCobradoresController', { |
23 | $scope: {}, | 23 | $scope: {}, |
24 | focaAbmVendedorCobradorService: {}, | 24 | focaAbmVendedorCobradorService: {}, |
25 | $location: {}, | 25 | $location: {}, |
26 | $filter: {}, | 26 | $filter: {}, |
27 | focaBotoneraLateralService: focaBotoneraLateralService, | 27 | focaBotoneraLateralService: focaBotoneraLateralService, |
28 | focaModalService: {} | 28 | focaModalService: {} |
29 | }); | 29 | }); |
30 | 30 | ||
31 | //arrange | 31 | //arrange |
32 | expect(typeof controlador).toEqual('object'); | 32 | expect(typeof controlador).toEqual('object'); |
33 | }); | 33 | }); |
34 | 34 | ||
35 | it('la función $scope.editar llama a la url correcta', function() { | 35 | it('la función $scope.editar llama a la url correcta', function() { |
36 | inject(function($location) { | 36 | inject(function($location) { |
37 | 37 | ||
38 | //arrange | 38 | //arrange |
39 | var scope = {}; | 39 | var scope = {}; |
40 | $controller('focaAbmVendedoresCobradoresController', { | 40 | $controller('focaAbmVendedoresCobradoresController', { |
41 | $scope: scope, | 41 | $scope: scope, |
42 | focaAbmVendedorCobradorService: {}, | 42 | focaAbmVendedorCobradorService: {}, |
43 | $location: $location, | 43 | $location: $location, |
44 | $filter: {}, | 44 | $filter: {}, |
45 | focaBotoneraLateralService: focaBotoneraLateralService, | 45 | focaBotoneraLateralService: focaBotoneraLateralService, |
46 | focaModalService: {} | 46 | focaModalService: {} |
47 | }); | 47 | }); |
48 | var paramFake = 1; | 48 | var paramFake = 1; |
49 | 49 | ||
50 | //act | 50 | //act |
51 | scope.editar(paramFake); | 51 | scope.editar(paramFake); |
52 | //arrange | 52 | //arrange |
53 | expect($location.url()).toEqual('/vendedor-cobrador/' + paramFake); | 53 | expect($location.url()).toEqual('/vendedor-cobrador/' + paramFake); |
54 | }); | 54 | }); |
55 | }); | 55 | }); |
56 | 56 | ||
57 | it('la función $scope.eliminar llama a modal confirmar', function() { | 57 | it('la función $scope.eliminar llama a modal confirmar', function() { |
58 | inject(function($location) { | 58 | inject(function($location) { |
59 | 59 | ||
60 | //arrange | 60 | //arrange |
61 | var scope = {}; | 61 | var scope = {}; |
62 | var focaModalService = { | 62 | var focaModalService = { |
63 | confirm: function() { } | 63 | confirm: function() { } |
64 | } | 64 | }; |
65 | $controller('focaAbmVendedoresCobradoresController', { | 65 | $controller('focaAbmVendedoresCobradoresController', { |
66 | $scope: scope, | 66 | $scope: scope, |
67 | focaAbmVendedorCobradorService: {}, | 67 | focaAbmVendedorCobradorService: {}, |
68 | $location: $location, | 68 | $location: $location, |
69 | $filter: {}, | 69 | $filter: {}, |
70 | focaBotoneraLateralService: focaBotoneraLateralService, | 70 | focaBotoneraLateralService: focaBotoneraLateralService, |
71 | focaModalService: focaModalService | 71 | focaModalService: focaModalService |
72 | }); | 72 | }); |
73 | var paramFake = 1; | 73 | var paramFake = 1; |
74 | 74 | ||
75 | //act | 75 | //act |
76 | spyOn(focaModalService, 'confirm').and.returnValue({ then: function() { } }); | 76 | spyOn(focaModalService, 'confirm').and.returnValue({ then: function() { } }); |
77 | scope.eliminar(paramFake); | 77 | scope.eliminar(paramFake); |
78 | 78 | ||
79 | //arrange | 79 | //arrange |
80 | expect(focaModalService.confirm).toHaveBeenCalled(); | 80 | expect(focaModalService.confirm).toHaveBeenCalled(); |
81 | }); | 81 | }); |
82 | }); | 82 | }); |
83 | 83 | ||
84 | it('función $scope.eliminar llama eliminarVendedorCobrador al confirm ok', function(done) { | 84 | it('función $scope.eliminar llama eliminarVendedorCobrador al confirm ok', function(done) { |
85 | inject(function($location) { | 85 | inject(function($location) { |
86 | 86 | ||
87 | //arrange | 87 | //arrange |
88 | var scope = {}; | 88 | var scope = {}; |
89 | var focaModalService = { | 89 | var focaModalService = { |
90 | confirm: function() { } | 90 | confirm: function() { } |
91 | }; | 91 | }; |
92 | var focaAbmVendedorCobradorService = { | 92 | var focaAbmVendedorCobradorService = { |
93 | eliminarVendedorCobrador: function() { } | 93 | eliminarVendedorCobrador: function() { } |
94 | }; | 94 | }; |
95 | $controller('focaAbmVendedoresCobradoresController', { | 95 | $controller('focaAbmVendedoresCobradoresController', { |
96 | $scope: scope, | 96 | $scope: scope, |
97 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 97 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
98 | $location: $location, | 98 | $location: $location, |
99 | $filter: {}, | 99 | $filter: {}, |
100 | focaBotoneraLateralService: focaBotoneraLateralService, | 100 | focaBotoneraLateralService: focaBotoneraLateralService, |
101 | focaModalService: focaModalService | 101 | focaModalService: focaModalService |
102 | }); | 102 | }); |
103 | var paramFake = 1; | 103 | var paramFake = 1; |
104 | var promesaConfirmar = Promise.resolve(true); | 104 | var promesaConfirmar = Promise.resolve(true); |
105 | 105 | ||
106 | //act | 106 | //act |
107 | spyOn(focaModalService, 'confirm').and.returnValue(promesaConfirmar); | 107 | spyOn(focaModalService, 'confirm').and.returnValue(promesaConfirmar); |
108 | spyOn(focaAbmVendedorCobradorService, 'eliminarVendedorCobrador') | 108 | spyOn(focaAbmVendedorCobradorService, 'eliminarVendedorCobrador') |
109 | .and.returnValue({ then: function() { } }); | 109 | .and.returnValue({ then: function() { } }); |
110 | scope.eliminar(paramFake); | 110 | scope.eliminar(paramFake); |
111 | 111 | ||
112 | //arrange | 112 | //arrange |
113 | promesaConfirmar.then(function() { | 113 | promesaConfirmar.then(function() { |
114 | expect(focaAbmVendedorCobradorService.eliminarVendedorCobrador).toHaveBeenCalled(); | 114 | expect(focaAbmVendedorCobradorService.eliminarVendedorCobrador) |
115 | .toHaveBeenCalled(); | ||
115 | done(); | 116 | done(); |
116 | }); | 117 | }); |
117 | }); | 118 | }); |
118 | }); | 119 | }); |
119 | 120 | ||
120 | it('función $scope.resetPage llama a $scope.selectPage', function() { | 121 | it('función $scope.resetPage llama a $scope.selectPage', function() { |
121 | 122 | ||
122 | //arrange | 123 | //arrange |
123 | var scope = {}; | 124 | var scope = {}; |
124 | $controller('focaAbmVendedoresCobradoresController', { | 125 | $controller('focaAbmVendedoresCobradoresController', { |
125 | $scope: scope, | 126 | $scope: scope, |
126 | focaAbmVendedorCobradorService: {}, | 127 | focaAbmVendedorCobradorService: {}, |
127 | $location: {}, | 128 | $location: {}, |
128 | $filter: {}, | 129 | $filter: {}, |
129 | focaBotoneraLateralService: focaBotoneraLateralService, | 130 | focaBotoneraLateralService: focaBotoneraLateralService, |
130 | focaModalService: {} | 131 | focaModalService: {} |
131 | }); | 132 | }); |
132 | 133 | ||
133 | //act | 134 | //act |
134 | spyOn(scope, 'selectPage'); | 135 | spyOn(scope, 'selectPage'); |
135 | scope.resetPage(); | 136 | scope.resetPage(); |
136 | 137 | ||
137 | //arrange | 138 | //arrange |
138 | expect(scope.selectPage).toHaveBeenCalled(); | 139 | expect(scope.selectPage).toHaveBeenCalled(); |
139 | }); | 140 | }); |
140 | 141 | ||
141 | it('función $scope.search llama a getVendedoresCobradores', function() { | 142 | it('función $scope.search llama a getVendedoresCobradores', function() { |
142 | 143 | ||
143 | //arrange | 144 | //arrange |
144 | var scope = {}; | 145 | var scope = {}; |
145 | var focaAbmVendedorCobradorService = { | 146 | var focaAbmVendedorCobradorService = { |
146 | getVendedoresCobradores: function() { } | 147 | getVendedoresCobradores: function() { } |
147 | }; | 148 | }; |
148 | $controller('focaAbmVendedoresCobradoresController', { | 149 | $controller('focaAbmVendedoresCobradoresController', { |
149 | $scope: scope, | 150 | $scope: scope, |
150 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 151 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
151 | $location: {}, | 152 | $location: {}, |
152 | $filter: {}, | 153 | $filter: {}, |
153 | focaBotoneraLateralService: focaBotoneraLateralService, | 154 | focaBotoneraLateralService: focaBotoneraLateralService, |
154 | focaModalService: {} | 155 | focaModalService: {} |
155 | }); | 156 | }); |
156 | 157 | ||
157 | //act | 158 | //act |
158 | spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores') | 159 | spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores') |
159 | .and.returnValue({ then: function() { } }); | 160 | .and.returnValue({ then: function() { } }); |
160 | scope.search(13); | 161 | scope.search(13); |
161 | 162 | ||
162 | //arrange | 163 | //arrange |
163 | expect(focaAbmVendedorCobradorService.getVendedoresCobradores).toHaveBeenCalled(); | 164 | expect(focaAbmVendedorCobradorService.getVendedoresCobradores).toHaveBeenCalled(); |
164 | }); | 165 | }); |
165 | 166 | ||
166 | it('función scope.search llama getVendedoresCobradores y llama resetPage', function(done) { | 167 | it('función scope.search llama getVendedoresCobradores y llama resetPage', function(done) { |
167 | 168 | ||
168 | //arrange | 169 | //arrange |
169 | var scope = {}; | 170 | var scope = {}; |
170 | var focaAbmVendedorCobradorService = { | 171 | var focaAbmVendedorCobradorService = { |
171 | getVendedoresCobradores: function() { } | 172 | getVendedoresCobradores: function() { } |
172 | }; | 173 | }; |
173 | $controller('focaAbmVendedoresCobradoresController', { | 174 | $controller('focaAbmVendedoresCobradoresController', { |
174 | $scope: scope, | 175 | $scope: scope, |
175 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 176 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
176 | $location: {}, | 177 | $location: {}, |
177 | $filter: {}, | 178 | $filter: {}, |
178 | focaBotoneraLateralService: focaBotoneraLateralService, | 179 | focaBotoneraLateralService: focaBotoneraLateralService, |
179 | focaModalService: {} | 180 | focaModalService: {} |
180 | }); | 181 | }); |
181 | var promesaVendedores = Promise.resolve({ data: [] }); | 182 | var promesaVendedores = Promise.resolve({ data: [] }); |
182 | 183 | ||
183 | //act | 184 | //act |
184 | spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores') | 185 | spyOn(focaAbmVendedorCobradorService, 'getVendedoresCobradores') |
185 | .and.returnValue(promesaVendedores); | 186 | .and.returnValue(promesaVendedores); |
186 | spyOn(scope, 'resetPage'); | 187 | spyOn(scope, 'resetPage'); |
187 | scope.vendedoresCobradores = []; | 188 | scope.vendedoresCobradores = []; |
188 | scope.search(13); | 189 | scope.search(13); |
189 | 190 | ||
190 | //arrange | 191 | //arrange |
191 | promesaVendedores.then(function() { | 192 | promesaVendedores.then(function() { |
192 | expect(scope.resetPage).toHaveBeenCalled(); | 193 | expect(scope.resetPage).toHaveBeenCalled(); |
193 | done(); | 194 | done(); |
194 | }); | 195 | }); |
195 | }); | 196 | }); |
196 | }); | 197 | }); |
197 | 198 | ||
198 | describe('Controlador focaAbmVendedorCobradorController', function() { | 199 | describe('Controlador focaAbmVendedorCobradorController', function() { |
199 | 200 | ||
200 | var timeout; | 201 | var timeout; |
201 | 202 | ||
202 | beforeEach(function() { | 203 | beforeEach(function() { |
203 | inject(function($timeout) { | 204 | inject(function($timeout) { |
204 | timeout = $timeout; | 205 | timeout = $timeout; |
205 | }); | 206 | }); |
206 | }); | 207 | }); |
207 | 208 | ||
208 | it('existe el controlador focaAbmVendedorCobradorController', function() { | 209 | it('existe el controlador focaAbmVendedorCobradorController', function() { |
209 | 210 | ||
210 | //act | 211 | //act |
211 | var controlador = $controller('focaAbmVendedorCobradorController', { | 212 | var controlador = $controller('focaAbmVendedorCobradorController', { |
212 | $scope: {}, | 213 | $scope: {}, |
213 | focaAbmVendedorCobradorService: { | 214 | focaAbmVendedorCobradorService: { |
214 | getCodigoSiguiente: function() { | 215 | getCodigoSiguiente: function() { |
215 | return { | 216 | return { |
216 | then: function() { } | 217 | then: function() { } |
217 | }; | 218 | }; |
218 | }, | 219 | }, |
219 | getVendedorCobradorById: function() { | 220 | getVendedorCobradorById: function() { |
220 | return { | 221 | return { |
221 | then: function() { } | 222 | then: function() { } |
222 | }; | 223 | }; |
223 | } | 224 | } |
224 | }, | 225 | }, |
225 | $routeParams: {}, | 226 | $routeParams: {}, |
226 | focaBotoneraLateralService: {}, | 227 | focaBotoneraLateralService: {}, |
227 | $timeout: timeout, | 228 | $timeout: timeout, |
228 | $uibModal: {}, | 229 | $uibModal: {}, |
229 | $location: {}, | 230 | $location: {}, |
230 | focaModalService: {} | 231 | focaModalService: {} |
231 | }); | 232 | }); |
232 | 233 | ||
233 | //assert | 234 | //assert |
234 | expect(typeof controlador).toEqual('object'); | 235 | expect(typeof controlador).toEqual('object'); |
235 | }); | 236 | }); |
236 | 237 | ||
237 | it('la función $scope.guardar llama a guardaVendedorCobrador del servicio', function() { | 238 | it('la función $scope.guardar llama a guardaVendedorCobrador del servicio', function() { |
238 | //arrange | 239 | //arrange |
239 | var scope= {}; | 240 | var scope= {}; |
240 | var focaAbmVendedorCobradorService = { | 241 | var focaAbmVendedorCobradorService = { |
241 | getCodigoSiguiente: function() { | 242 | getCodigoSiguiente: function() { |
242 | return { | 243 | return { |
243 | then: function() { } | 244 | then: function() { } |
244 | }; | 245 | }; |
245 | }, | 246 | }, |
246 | getVendedorCobradorById: function() { | 247 | getVendedorCobradorById: function() { |
247 | return { | 248 | return { |
248 | then: function() { } | 249 | then: function() { } |
249 | }; | 250 | }; |
250 | }, | 251 | }, |
251 | guardarVendedorCobrador: function() { } | 252 | guardarVendedorCobrador: function() { } |
252 | }; | 253 | }; |
253 | $controller('focaAbmVendedorCobradorController', { | 254 | $controller('focaAbmVendedorCobradorController', { |
254 | $scope: scope, | 255 | $scope: scope, |
255 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 256 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
256 | $routeParams: {}, | 257 | $routeParams: {}, |
257 | focaBotoneraLateralService: {}, | 258 | focaBotoneraLateralService: {}, |
258 | $timeout: timeout, | 259 | $timeout: timeout, |
259 | $uibModal: {}, | 260 | $uibModal: {}, |
260 | $location: {}, | 261 | $location: {}, |
261 | focaModalService: {} | 262 | focaModalService: {} |
262 | }); | 263 | }); |
263 | var responseFake = { | 264 | var responseFake = { |
264 | then: function() { | 265 | then: function() { |
265 | return { | 266 | return { |
266 | catch: function() { } | 267 | catch: function() { } |
267 | }; | 268 | }; |
268 | } | 269 | } |
269 | }; | 270 | }; |
270 | 271 | ||
271 | //act | 272 | //act |
272 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 273 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
273 | .and.returnValue(responseFake); | 274 | .and.returnValue(responseFake); |
274 | scope.guardar(); | 275 | scope.guardar(); |
275 | 276 | ||
276 | //assert | 277 | //assert |
277 | expect(focaAbmVendedorCobradorService.guardarVendedorCobrador).toHaveBeenCalled(); | 278 | expect(focaAbmVendedorCobradorService.guardarVendedorCobrador).toHaveBeenCalled(); |
278 | }); | 279 | }); |
279 | 280 | ||
280 | it('la función $scope.guardar llama a guardaVendedorCobrador y edicion true' + | 281 | it('la función $scope.guardar llama a guardaVendedorCobrador y edicion true' + |
281 | 'llama a $location.path', function(done) | 282 | 'llama a $location.path', function(done) |
282 | { | 283 | { |
283 | inject(function($location) { | 284 | inject(function($location) { |
284 | 285 | ||
285 | //arrange | 286 | //arrange |
286 | var scope= {}; | 287 | var scope= {}; |
287 | var focaAbmVendedorCobradorService = { | 288 | var focaAbmVendedorCobradorService = { |
288 | getCodigoSiguiente: function() { | 289 | getCodigoSiguiente: function() { |
289 | return { | 290 | return { |
290 | then: function() { } | 291 | then: function() { } |
291 | }; | 292 | }; |
292 | }, | 293 | }, |
293 | getVendedorCobradorById: function() { | 294 | getVendedorCobradorById: function() { |
294 | return { | 295 | return { |
295 | then: function() { } | 296 | then: function() { } |
296 | }; | 297 | }; |
297 | }, | 298 | }, |
298 | guardarVendedorCobrador: function() { } | 299 | guardarVendedorCobrador: function() { } |
299 | }; | 300 | }; |
300 | $controller('focaAbmVendedorCobradorController', { | 301 | $controller('focaAbmVendedorCobradorController', { |
301 | $scope: scope, | 302 | $scope: scope, |
302 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 303 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
303 | $routeParams: {}, | 304 | $routeParams: {}, |
304 | focaBotoneraLateralService: {}, | 305 | focaBotoneraLateralService: {}, |
305 | $timeout: timeout, | 306 | $timeout: timeout, |
306 | $uibModal: {}, | 307 | $uibModal: {}, |
307 | $location: $location, | 308 | $location: $location, |
308 | focaModalService: {} | 309 | focaModalService: {} |
309 | }); | 310 | }); |
310 | var promiseFake = Promise.resolve(true, false); | 311 | var promiseFake = Promise.resolve(true, false); |
311 | 312 | ||
312 | //act | 313 | //act |
313 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 314 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
314 | .and.returnValue(promiseFake); | 315 | .and.returnValue(promiseFake); |
315 | scope.edicion = true; | 316 | scope.edicion = true; |
316 | scope.guardar(); | 317 | scope.guardar(); |
317 | 318 | ||
318 | //assert | 319 | //assert |
319 | promiseFake.then(function() { | 320 | promiseFake.then(function() { |
320 | expect($location.url()).toEqual('/vendedor-cobrador'); | 321 | expect($location.url()).toEqual('/vendedor-cobrador'); |
321 | done(); | 322 | done(); |
322 | }); | 323 | }); |
323 | }); | 324 | }); |
324 | }); | 325 | }); |
325 | 326 | ||
326 | it('la función $scope.guardar llama a guardaVendedorCobrador y scope.edicion false' + | 327 | it('la función $scope.guardar llama a guardaVendedorCobrador y scope.edicion false' + |
327 | 'llama a scope.cambiarContraseña', function(done) | 328 | 'llama a scope.cambiarContraseña', function(done) |
328 | { | 329 | { |
329 | //arrange | 330 | //arrange |
330 | var scope= {}; | 331 | var scope= {}; |
331 | var focaAbmVendedorCobradorService = { | 332 | var focaAbmVendedorCobradorService = { |
332 | getCodigoSiguiente: function() { | 333 | getCodigoSiguiente: function() { |
333 | return { | 334 | return { |
334 | then: function() { } | 335 | then: function() { } |
335 | }; | 336 | }; |
336 | }, | 337 | }, |
337 | getVendedorCobradorById: function() { | 338 | getVendedorCobradorById: function() { |
338 | return { | 339 | return { |
339 | then: function() { } | 340 | then: function() { } |
340 | }; | 341 | }; |
341 | }, | 342 | }, |
342 | guardarVendedorCobrador: function() { } | 343 | guardarVendedorCobrador: function() { } |
343 | }; | 344 | }; |
344 | $controller('focaAbmVendedorCobradorController', { | 345 | $controller('focaAbmVendedorCobradorController', { |
345 | $scope: scope, | 346 | $scope: scope, |
346 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 347 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
347 | $routeParams: {}, | 348 | $routeParams: {}, |
348 | focaBotoneraLateralService: {}, | 349 | focaBotoneraLateralService: {}, |
349 | $timeout: timeout, | 350 | $timeout: timeout, |
350 | $uibModal: {}, | 351 | $uibModal: {}, |
351 | $location: {}, | 352 | $location: {}, |
352 | focaModalService: {} | 353 | focaModalService: {} |
353 | }); | 354 | }); |
354 | var promiseFake = Promise.resolve(true, false); | 355 | var promiseFake = Promise.resolve(true, false); |
355 | 356 | ||
356 | //act | 357 | //act |
357 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 358 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
358 | .and.returnValue(promiseFake); | 359 | .and.returnValue(promiseFake); |
359 | spyOn(scope, 'cambiarPassword'); | 360 | spyOn(scope, 'cambiarPassword'); |
360 | scope.edicion = false; | 361 | scope.edicion = false; |
361 | scope.guardar(); | 362 | scope.guardar(); |
362 | 363 | ||
363 | //assert | 364 | //assert |
364 | promiseFake.then(function() { | 365 | promiseFake.then(function() { |
365 | expect(scope.cambiarPassword).toHaveBeenCalled(); | 366 | expect(scope.cambiarPassword).toHaveBeenCalled(); |
366 | done(); | 367 | done(); |
367 | }); | 368 | }); |
368 | }); | 369 | }); |
369 | 370 | ||
370 | it('la función $scope.guardar llama a guardaVendedorCobrador y llama foca modal alert' + | 371 | it('la función $scope.guardar llama a guardaVendedorCobrador y llama foca modal alert' + |
371 | 'cuando la promsa es rechazada y el error es 409', function(done) | 372 | 'cuando la promsa es rechazada y el error es 409', function(done) |
372 | { | 373 | { |
373 | //arrange | 374 | //arrange |
374 | var scope= {}; | 375 | var scope= {}; |
375 | var focaAbmVendedorCobradorService = { | 376 | var focaAbmVendedorCobradorService = { |
376 | getCodigoSiguiente: function() { | 377 | getCodigoSiguiente: function() { |
377 | return { | 378 | return { |
378 | then: function() { } | 379 | then: function() { } |
379 | }; | 380 | }; |
380 | }, | 381 | }, |
381 | getVendedorCobradorById: function() { | 382 | getVendedorCobradorById: function() { |
382 | return { | 383 | return { |
383 | then: function() { } | 384 | then: function() { } |
384 | }; | 385 | }; |
385 | }, | 386 | }, |
386 | guardarVendedorCobrador: function() { } | 387 | guardarVendedorCobrador: function() { } |
387 | }; | 388 | }; |
388 | var focaModalService = { | 389 | var focaModalService = { |
389 | alert: function() { } | 390 | alert: function() { } |
390 | }; | 391 | }; |
391 | $controller('focaAbmVendedorCobradorController', { | 392 | $controller('focaAbmVendedorCobradorController', { |
392 | $scope: scope, | 393 | $scope: scope, |
393 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 394 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
394 | $routeParams: {}, | 395 | $routeParams: {}, |
395 | focaBotoneraLateralService: {}, | 396 | focaBotoneraLateralService: {}, |
396 | $timeout: timeout, | 397 | $timeout: timeout, |
397 | $uibModal: {}, | 398 | $uibModal: {}, |
398 | $location: {}, | 399 | $location: {}, |
399 | focaModalService: focaModalService | 400 | focaModalService: focaModalService |
400 | }); | 401 | }); |
401 | var promiseFake = Promise.reject({ status: 409 }); | 402 | var promiseFake = Promise.reject({ status: 409 }); |
402 | 403 | ||
403 | //act | 404 | //act |
404 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') | 405 | spyOn(focaAbmVendedorCobradorService, 'guardarVendedorCobrador') |
405 | .and.returnValue(promiseFake); | 406 | .and.returnValue(promiseFake); |
406 | spyOn(focaModalService, 'alert'); | 407 | spyOn(focaModalService, 'alert'); |
407 | scope.guardar(); | 408 | scope.guardar(); |
408 | 409 | ||
409 | //assert | 410 | //assert |
410 | promiseFake.catch(function() { | 411 | promiseFake.catch(function() { |
411 | setTimeout(function() { | 412 | setTimeout(function() { |
412 | expect(focaModalService.alert).toHaveBeenCalled(); | 413 | expect(focaModalService.alert).toHaveBeenCalled(); |
413 | done(); | 414 | done(); |
414 | }, 100) | 415 | }, 100); |
415 | }); | 416 | }); |
416 | }); | 417 | }); |
417 | 418 | ||
418 | it('la función $scope.seleccionarProvincia llama a foca Modal', function() { | 419 | it('la función $scope.seleccionarProvincia llama a foca Modal', function() { |
419 | //arrange | 420 | //arrange |
420 | var scope= {}; | 421 | var scope= {}; |
421 | var focaAbmVendedorCobradorService = { | 422 | var focaAbmVendedorCobradorService = { |
422 | getCodigoSiguiente: function() { | 423 | getCodigoSiguiente: function() { |
423 | return { | 424 | return { |
424 | then: function() { } | 425 | then: function() { } |
425 | }; | 426 | }; |
426 | }, | 427 | }, |
427 | getVendedorCobradorById: function() { | 428 | getVendedorCobradorById: function() { |
428 | return { | 429 | return { |
429 | then: function() { } | 430 | then: function() { } |
430 | }; | 431 | }; |
431 | }, | 432 | }, |
432 | }; | 433 | }; |
433 | var focaModalService = { | 434 | var focaModalService = { |
434 | modal: function() { } | 435 | modal: function() { } |
435 | }; | 436 | }; |
436 | $controller('focaAbmVendedorCobradorController', { | 437 | $controller('focaAbmVendedorCobradorController', { |
437 | $scope: scope, | 438 | $scope: scope, |
438 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 439 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
439 | $routeParams: {}, | 440 | $routeParams: {}, |
440 | focaBotoneraLateralService: {}, | 441 | focaBotoneraLateralService: {}, |
441 | $timeout: timeout, | 442 | $timeout: timeout, |
442 | $uibModal: {}, | 443 | $uibModal: {}, |
443 | $location: {}, | 444 | $location: {}, |
444 | focaModalService: focaModalService | 445 | focaModalService: focaModalService |
445 | }); | 446 | }); |
446 | 447 | ||
447 | //act | 448 | //act |
448 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); | 449 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); |
449 | scope.seleccionarProvincia(13); | 450 | scope.seleccionarProvincia(13); |
450 | 451 | ||
451 | //assert | 452 | //assert |
452 | expect(focaModalService.modal).toHaveBeenCalled(); | 453 | expect(focaModalService.modal).toHaveBeenCalled(); |
453 | }); | 454 | }); |
454 | 455 | ||
455 | it('función $scope.seleccionarLocalidad llama foca alert si no hay provincia', function() { | 456 | it('función $scope.seleccionarLocalidad llama foca alert si no hay provincia', function() { |
456 | //arrange | 457 | //arrange |
457 | var scope= {}; | 458 | var scope= {}; |
458 | var focaAbmVendedorCobradorService = { | 459 | var focaAbmVendedorCobradorService = { |
459 | getCodigoSiguiente: function() { | 460 | getCodigoSiguiente: function() { |
460 | return { | 461 | return { |
461 | then: function() { } | 462 | then: function() { } |
462 | }; | 463 | }; |
463 | }, | 464 | }, |
464 | getVendedorCobradorById: function() { | 465 | getVendedorCobradorById: function() { |
465 | return { | 466 | return { |
466 | then: function() { } | 467 | then: function() { } |
467 | }; | 468 | }; |
468 | }, | 469 | }, |
469 | }; | 470 | }; |
470 | var focaModalService = { | 471 | var focaModalService = { |
471 | alert: function() { } | 472 | alert: function() { } |
472 | }; | 473 | }; |
473 | $controller('focaAbmVendedorCobradorController', { | 474 | $controller('focaAbmVendedorCobradorController', { |
474 | $scope: scope, | 475 | $scope: scope, |
475 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 476 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
476 | $routeParams: {}, | 477 | $routeParams: {}, |
477 | focaBotoneraLateralService: {}, | 478 | focaBotoneraLateralService: {}, |
478 | $timeout: timeout, | 479 | $timeout: timeout, |
479 | $uibModal: {}, | 480 | $uibModal: {}, |
480 | $location: {}, | 481 | $location: {}, |
481 | focaModalService: focaModalService | 482 | focaModalService: focaModalService |
482 | }); | 483 | }); |
483 | 484 | ||
484 | //act | 485 | //act |
485 | spyOn(focaModalService, 'alert'); | 486 | spyOn(focaModalService, 'alert'); |
486 | scope.vendedorCobrador.provincia.ID = false; | 487 | scope.vendedorCobrador.provincia.ID = false; |
487 | scope.seleccionarLocalidad(); | 488 | scope.seleccionarLocalidad(); |
488 | 489 | ||
489 | //assert | 490 | //assert |
490 | expect(focaModalService.alert).toHaveBeenCalled(); | 491 | expect(focaModalService.alert).toHaveBeenCalled(); |
491 | }); | 492 | }); |
492 | 493 | ||
493 | it('función $scope.seleccionarLocalidad llama foca modal', function() { | 494 | it('función $scope.seleccionarLocalidad llama foca modal', function() { |
494 | //arrange | 495 | //arrange |
495 | var scope= {}; | 496 | var scope= {}; |
496 | var focaAbmVendedorCobradorService = { | 497 | var focaAbmVendedorCobradorService = { |
497 | getCodigoSiguiente: function() { | 498 | getCodigoSiguiente: function() { |
498 | return { | 499 | return { |
499 | then: function() { } | 500 | then: function() { } |
500 | }; | 501 | }; |
501 | }, | 502 | }, |
502 | getVendedorCobradorById: function() { | 503 | getVendedorCobradorById: function() { |
503 | return { | 504 | return { |
504 | then: function() { } | 505 | then: function() { } |
505 | }; | 506 | }; |
506 | }, | 507 | }, |
507 | }; | 508 | }; |
508 | var focaModalService = { | 509 | var focaModalService = { |
509 | modal: function() { } | 510 | modal: function() { } |
510 | }; | 511 | }; |
511 | $controller('focaAbmVendedorCobradorController', { | 512 | $controller('focaAbmVendedorCobradorController', { |
512 | $scope: scope, | 513 | $scope: scope, |
513 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, | 514 | focaAbmVendedorCobradorService: focaAbmVendedorCobradorService, |
514 | $routeParams: {}, | 515 | $routeParams: {}, |
515 | focaBotoneraLateralService: {}, | 516 | focaBotoneraLateralService: {}, |
516 | $timeout: timeout, | 517 | $timeout: timeout, |
517 | $uibModal: {}, | 518 | $uibModal: {}, |
518 | $location: {}, | 519 | $location: {}, |
519 | focaModalService: focaModalService | 520 | focaModalService: focaModalService |
520 | }); | 521 | }); |
521 | 522 | ||
522 | //act | 523 | //act |
523 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); | 524 | spyOn(focaModalService, 'modal').and.returnValue({ then: function() { } }); |
524 | scope.vendedorCobrador.provincia.ID = true; | 525 | scope.vendedorCobrador.provincia.ID = true; |
525 | scope.seleccionarLocalidad(13); | 526 | scope.seleccionarLocalidad(13); |
526 | 527 | ||
527 | //assert | 528 | //assert |
528 | expect(focaModalService.modal).toHaveBeenCalled(); | 529 | expect(focaModalService.modal).toHaveBeenCalled(); |
529 | }); | 530 | }); |
530 | 531 | ||
531 | it('la función scope.cancelar lleva a location correcte', function() { | 532 | it('la función scope.cancelar lleva a location correcte', function() { |
532 | 533 | ||
533 | inject(function($location) { | 534 | inject(function($location) { |
534 | //arrange | 535 | //arrange |
535 | var scope = {} | 536 | var scope = {}; |
536 | $controller('focaAbmVendedorCobradorController', { | 537 | $controller('focaAbmVendedorCobradorController', { |
537 | $scope: scope, | 538 | $scope: scope, |
538 | focaAbmVendedorCobradorService: { | 539 | focaAbmVendedorCobradorService: { |
539 | getCodigoSiguiente: function() { | 540 | getCodigoSiguiente: function() { |
540 | return { | 541 | return { |
541 | then: function() { } | 542 | then: function() { } |
542 | }; | 543 | }; |
543 | }, | 544 | }, |
544 | getVendedorCobradorById: function() { | 545 | getVendedorCobradorById: function() { |
545 | return { | 546 | return { |
546 | then: function() { } | 547 | then: function() { } |
547 | }; | 548 | }; |
548 | } | 549 | } |
549 | }, | 550 | }, |
550 | $routeParams: {}, | 551 | $routeParams: {}, |
551 | focaBotoneraLateralService: {}, | 552 | focaBotoneraLateralService: {}, |
552 | $timeout: timeout, | 553 | $timeout: timeout, |
553 | $uibModal: {}, | 554 | $uibModal: {}, |
554 | $location: $location, | 555 | $location: $location, |
555 | focaModalService: {} | 556 | focaModalService: {} |
556 | }); | 557 | }); |
557 | 558 | ||
558 | //act | 559 | //act |
559 | scope.formVendedorCobrador = { | 560 | scope.formVendedorCobrador = { |
560 | $pristine: true | 561 | $pristine: true |
561 | }; | 562 | }; |
562 | scope.cancelar() | 563 | scope.cancelar(); |
563 | 564 | ||
564 | //assert | 565 | //assert |
565 | expect($location.url()).toEqual('/vendedor-cobrador'); | 566 | expect($location.url()).toEqual('/vendedor-cobrador'); |
566 | }); | 567 | }); |
567 | }); | 568 | }); |
568 | 569 | ||
569 | it('la funcion scope.next suma uno a scope.focused', function() { | 570 | it('la funcion scope.next suma uno a scope.focused', function() { |
570 | 571 | ||
571 | //arrange | 572 | //arrange |
572 | var scope = {}; | 573 | var scope = {}; |
573 | $controller('focaAbmVendedorCobradorController', { | 574 | $controller('focaAbmVendedorCobradorController', { |
574 | $scope: scope, | 575 | $scope: scope, |
575 | focaAbmVendedorCobradorService: { | 576 | focaAbmVendedorCobradorService: { |
576 | getCodigoSiguiente: function() { | 577 | getCodigoSiguiente: function() { |
577 | return { | 578 | return { |
578 | then: function() { } | 579 | then: function() { } |
579 | }; | 580 | }; |
580 | }, | 581 | }, |
581 | getVendedorCobradorById: function() { | 582 | getVendedorCobradorById: function() { |
582 | return { | 583 | return { |
583 | then: function() { } | 584 | then: function() { } |
584 | }; | 585 | }; |
585 | } | 586 | } |
586 | }, | 587 | }, |
587 | $routeParams: {}, | 588 | $routeParams: {}, |
588 | focaBotoneraLateralService: {}, | 589 | focaBotoneraLateralService: {}, |
589 | $timeout: timeout, | 590 | $timeout: timeout, |
590 | $uibModal: {}, | 591 | $uibModal: {}, |
591 | $location: {}, | 592 | $location: {}, |
592 | focaModalService: {} | 593 | focaModalService: {} |
593 | }); | 594 | }); |
594 | 595 | ||
595 | //act | 596 | //act |
596 | var esperado = scope.focused + 1; | 597 | var esperado = scope.focused + 1; |
597 | scope.next(13); | 598 | scope.next(13); |
598 | 599 | ||
599 | //assert | 600 | //assert |
600 | expect(scope.focused).toEqual(esperado); | 601 | expect(scope.focused).toEqual(esperado); |
601 | }); | 602 | }); |
602 | 603 | ||
603 | it('la funcion scope.cambiarPassword abre modal', function() { | 604 | it('la funcion scope.cambiarPassword abre modal', function() { |
604 | 605 | ||
605 | //arrange | 606 | //arrange |
606 | var scope = {}; | 607 | var scope = {}; |
607 | var uibModal = { | 608 | var uibModal = { |
608 | open: function() { } | 609 | open: function() { } |
609 | } | 610 | }; |
610 | $controller('focaAbmVendedorCobradorController', { | 611 | $controller('focaAbmVendedorCobradorController', { |
611 | $scope: scope, | 612 | $scope: scope, |
612 | focaAbmVendedorCobradorService: { | 613 | focaAbmVendedorCobradorService: { |
613 | getCodigoSiguiente: function() { | 614 | getCodigoSiguiente: function() { |
614 | return { | 615 | return { |
615 | then: function() { } | 616 | then: function() { } |
616 | }; | 617 | }; |
617 | }, | 618 | }, |
618 | getVendedorCobradorById: function() { | 619 | getVendedorCobradorById: function() { |
619 | return { | 620 | return { |
620 | then: function() { } | 621 | then: function() { } |
621 | }; | 622 | }; |
622 | } | 623 | } |
623 | }, | 624 | }, |
624 | $routeParams: {}, | 625 | $routeParams: {}, |
625 | focaBotoneraLateralService: {}, | 626 | focaBotoneraLateralService: {}, |
626 | $timeout: timeout, | 627 | $timeout: timeout, |
627 | $uibModal: uibModal, | 628 | $uibModal: uibModal, |
628 | $location: {}, | 629 | $location: {}, |
629 | focaModalService: {} | 630 | focaModalService: {} |
630 | }); | 631 | }); |
631 | var responseFake = { | 632 | var responseFake = { |
632 | result: { | 633 | result: { |
633 | then: function() { } | 634 | then: function() { } |
634 | } | 635 | } |
635 | }; | 636 | }; |
636 | 637 | ||
637 | //act | 638 | //act |
638 | spyOn(uibModal, 'open').and.returnValue(responseFake); | 639 | spyOn(uibModal, 'open').and.returnValue(responseFake); |
639 | scope.cambiarPassword(); | 640 | scope.cambiarPassword(); |
640 | 641 | ||
641 | //assert | 642 | //assert |
642 | expect(uibModal.open).toHaveBeenCalled(); | 643 | expect(uibModal.open).toHaveBeenCalled(); |
643 | }); | 644 | }); |
644 | 645 | ||
645 | it('la funcion scope.cambiarPassword abre modal y llama a location cuando edicion es ' + | 646 | it('la funcion scope.cambiarPassword abre modal y llama a location cuando edicion es ' + |
646 | 'falso', function(done) | 647 | 'falso', function(done) |
647 | { | 648 | { |
648 | inject(function($location) { | 649 | inject(function($location) { |
649 | 650 | ||
650 | //arrange | 651 | //arrange |
651 | var scope = {}; | 652 | var scope = {}; |
652 | var uibModal = { | 653 | var uibModal = { |
653 | open: function() { } | 654 | open: function() { } |
654 | }; | 655 | }; |
655 | $controller('focaAbmVendedorCobradorController', { | 656 | $controller('focaAbmVendedorCobradorController', { |
656 | $scope: scope, | 657 | $scope: scope, |
657 | focaAbmVendedorCobradorService: { | 658 | focaAbmVendedorCobradorService: { |
658 | getCodigoSiguiente: function() { | 659 | getCodigoSiguiente: function() { |
659 | return { | 660 | return { |
660 | then: function() { } | 661 | then: function() { } |
661 | }; | 662 | }; |
662 | }, | 663 | }, |
663 | getVendedorCobradorById: function() { | 664 | getVendedorCobradorById: function() { |
664 | return { | 665 | return { |
665 | then: function() { } | 666 | then: function() { } |
666 | }; | 667 | }; |
667 | } | 668 | } |
668 | }, | 669 | }, |
669 | $routeParams: {}, | 670 | $routeParams: {}, |
670 | focaBotoneraLateralService: {}, | 671 | focaBotoneraLateralService: {}, |
671 | $timeout: timeout, | 672 | $timeout: timeout, |
672 | $uibModal: uibModal, | 673 | $uibModal: uibModal, |
673 | $location: $location, | 674 | $location: $location, |
674 | focaModalService: {} | 675 | focaModalService: {} |
675 | }); | 676 | }); |
676 | var responseFake = { | 677 | var responseFake = { |
677 | result: Promise.resolve(true) | 678 | result: Promise.resolve(true) |
678 | }; | 679 | }; |
679 | 680 | ||
680 | //act | 681 | //act |
681 | spyOn(uibModal, 'open').and.returnValue(responseFake); | 682 | spyOn(uibModal, 'open').and.returnValue(responseFake); |
682 | scope.edicion = false; | 683 | scope.edicion = false; |
683 | scope.cambiarPassword(); | 684 | scope.cambiarPassword(); |
684 | 685 | ||
685 | //assert | 686 | //assert |
686 | responseFake.result.then(function() { | 687 | responseFake.result.then(function() { |
687 | expect($location.url()).toEqual('/vendedor-cobrador'); | 688 | expect($location.url()).toEqual('/vendedor-cobrador'); |
688 | done(); | 689 | done(); |
689 | }); | 690 | }); |
690 | }); | 691 | }); |
691 | }); | 692 | }); |
692 | }); | 693 | }); |
693 | }); | 694 | }); |
694 | 695 |
spec/serviceSpec.js
1 | describe('Servicios abm vendedor cobrador', function() { | 1 | describe('Servicios abm vendedor cobrador', function() { |
2 | 2 | ||
3 | var httpBackend; | 3 | var httpBackend; |
4 | 4 | ||
5 | beforeEach(function() { | 5 | beforeEach(function() { |
6 | module('focaAbmVendedorCobrador'); | 6 | module('focaAbmVendedorCobrador'); |
7 | 7 | ||
8 | inject(module(function($provide) { | 8 | inject(module(function($provide) { |
9 | $provide.value('API_ENDPOINT', { | 9 | $provide.value('API_ENDPOINT', { |
10 | URL: 'local' | 10 | URL: 'local' |
11 | }); | 11 | }); |
12 | })); | 12 | })); |
13 | 13 | ||
14 | inject(function($httpBackend) { | 14 | inject(function($httpBackend) { |
15 | httpBackend = $httpBackend; | 15 | httpBackend = $httpBackend; |
16 | }); | 16 | }); |
17 | }); | 17 | }); |
18 | 18 | ||
19 | describe('Servicio focaAbmVendedorCobradorService', function() { | 19 | describe('Servicio focaAbmVendedorCobradorService', function() { |
20 | 20 | ||
21 | var servicio; | 21 | var servicio; |
22 | 22 | ||
23 | beforeEach(inject(function(focaAbmVendedorCobradorService) { | 23 | beforeEach(inject(function(focaAbmVendedorCobradorService) { |
24 | servicio = focaAbmVendedorCobradorService; | 24 | servicio = focaAbmVendedorCobradorService; |
25 | })); | 25 | })); |
26 | 26 | ||
27 | it('Existe el servicio focaAbmVendedorCobradorService', function() { | 27 | it('Existe el servicio focaAbmVendedorCobradorService', function() { |
28 | //assert | 28 | //assert |
29 | expect(typeof servicio).toEqual('object'); | 29 | expect(typeof servicio).toEqual('object'); |
30 | }); | 30 | }); |
31 | 31 | ||
32 | it('la función getVendedoresCobradores llama a la ruta correcta', function() { | 32 | it('la función getVendedoresCobradores llama a la ruta correcta', function() { |
33 | //arrange | 33 | //arrange |
34 | var result; | 34 | var result; |
35 | var fakeResponse = { data: 'test' }; | 35 | var fakeResponse = { data: 'test' }; |
36 | var fakeBody = 2; | 36 | var fakeBody = 2; |
37 | httpBackend.expectPOST('local/vendedor-cobrador/list', { nombre: fakeBody }) | 37 | httpBackend.expectPOST('local/vendedor-cobrador/list', { nombre: fakeBody }) |
38 | .respond(fakeResponse); | 38 | .respond(fakeResponse); |
39 | 39 | ||
40 | //act | 40 | //act |
41 | servicio.getVendedoresCobradores(fakeBody).then(function(data) { | 41 | servicio.getVendedoresCobradores(fakeBody).then(function(data) { |
42 | result = data.data; | 42 | result = data.data; |
43 | }); | 43 | }); |
44 | httpBackend.flush(); | 44 | httpBackend.flush(); |
45 | 45 | ||
46 | //assert | 46 | //assert |
47 | expect(result).toEqual(fakeResponse); | 47 | expect(result).toEqual(fakeResponse); |
48 | }); | 48 | }); |
49 | 49 | ||
50 | it('la función getVendedorCobradorById llama a la ruta correcta', function() { | 50 | it('la función getVendedorCobradorById llama a la ruta correcta', function() { |
51 | //arrange | 51 | //arrange |
52 | var result; | 52 | var result; |
53 | var fakeResponse = { data: 'test' }; | 53 | var fakeResponse = { data: 'test' }; |
54 | var fakeParam = 1; | 54 | var fakeParam = 1; |
55 | httpBackend.expectGET('local/vendedor-cobrador/' + fakeParam).respond(fakeResponse); | 55 | httpBackend.expectGET('local/vendedor-cobrador/' + fakeParam).respond(fakeResponse); |
56 | 56 | ||
57 | //act | 57 | //act |
58 | servicio.getVendedorCobradorById(fakeParam).then(function(data) { | 58 | servicio.getVendedorCobradorById(fakeParam).then(function(data) { |
59 | result = data.data; | 59 | result = data.data; |
60 | }); | 60 | }); |
61 | httpBackend.flush(); | 61 | httpBackend.flush(); |
62 | 62 | ||
63 | //assert | 63 | //assert |
64 | expect(result).toEqual(fakeResponse); | 64 | expect(result).toEqual(fakeResponse); |
65 | }); | 65 | }); |
66 | 66 | ||
67 | it('la función guardarVendedorCobrador llama a la ruta correcta', function() { | 67 | it('la función guardarVendedorCobrador llama a la ruta correcta', function() { |
68 | //arrange | 68 | //arrange |
69 | var result; | 69 | var result; |
70 | var fakeResponse = { data: 'test' }; | 70 | var fakeResponse = { data: 'test' }; |
71 | var fakeBody = 1; | 71 | var fakeBody = 1; |
72 | httpBackend.expectPOST('local/vendedor-cobrador', { vendedorCobrador: fakeBody }) | 72 | httpBackend.expectPOST('local/vendedor-cobrador', { vendedorCobrador: fakeBody }) |
73 | .respond(fakeResponse); | 73 | .respond(fakeResponse); |
74 | 74 | ||
75 | //act | 75 | //act |
76 | servicio.guardarVendedorCobrador(fakeBody).then(function(data) { | 76 | servicio.guardarVendedorCobrador(fakeBody).then(function(data) { |
77 | result = data.data; | 77 | result = data.data; |
78 | }); | 78 | }); |
79 | httpBackend.flush(); | 79 | httpBackend.flush(); |
80 | 80 | ||
81 | //assert | 81 | //assert |
82 | expect(result).toEqual(fakeResponse); | 82 | expect(result).toEqual(fakeResponse); |
83 | }); | 83 | }); |
84 | 84 | ||
85 | it('la función eliminarVendedorCobrador llama a la ruta correcta', function() { | 85 | it('la función eliminarVendedorCobrador llama a la ruta correcta', function() { |
86 | //arrange | 86 | //arrange |
87 | var result; | 87 | var result; |
88 | var fakeResponse = { data: 'test' }; | 88 | var fakeResponse = { data: 'test' }; |
89 | var fakeParam = 1; | 89 | var fakeParam = 1; |
90 | httpBackend.expectDELETE('local/vendedor-cobrador/' + fakeParam) | 90 | httpBackend.expectDELETE('local/vendedor-cobrador/' + fakeParam) |
91 | .respond(fakeResponse); | 91 | .respond(fakeResponse); |
92 | 92 | ||
93 | //act | 93 | //act |
94 | servicio.eliminarVendedorCobrador(fakeParam).then(function(data) { | 94 | servicio.eliminarVendedorCobrador(fakeParam).then(function(data) { |
95 | result = data.data; | 95 | result = data.data; |
96 | }); | 96 | }); |
97 | httpBackend.flush(); | 97 | httpBackend.flush(); |
98 | 98 | ||
99 | //assert | 99 | //assert |
100 | expect(result).toEqual(fakeResponse); | 100 | expect(result).toEqual(fakeResponse); |
101 | }); | 101 | }); |
102 | 102 | ||
103 | it('la función getCodigoSiguiente llama a la ruta correcta', function() { | 103 | it('la función getCodigoSiguiente llama a la ruta correcta', function() { |
104 | //arrange | 104 | //arrange |
105 | var result; | 105 | var result; |
106 | var fakeResponse = { data: 'test' }; | 106 | var fakeResponse = { data: 'test' }; |
107 | httpBackend.expectGET('local/vendedor-cobrador/obtener/siguiente-codigo') | 107 | httpBackend.expectGET('local/vendedor-cobrador/obtener/siguiente-codigo') |
108 | .respond(fakeResponse); | 108 | .respond(fakeResponse); |
109 | 109 | ||
110 | //act | 110 | //act |
111 | servicio.getCodigoSiguiente().then(function(data) { | 111 | servicio.getCodigoSiguiente().then(function(data) { |
112 | result = data.data; | 112 | result = data.data; |
113 | }); | 113 | }); |
114 | httpBackend.flush(); | 114 | httpBackend.flush(); |
115 | 115 | ||
116 | //assert | 116 | //assert |
117 | expect(result).toEqual(fakeResponse); | 117 | expect(result).toEqual(fakeResponse); |
118 | }) | 118 | }); |
119 | }); | 119 | }); |
120 | }); | 120 | }); |
121 | 121 |
src/js/controller.js
1 | angular.module('focaAbmVendedorCobrador') | 1 | angular.module('focaAbmVendedorCobrador') |
2 | .controller('focaAbmVendedoresCobradoresController', [ | 2 | .controller('focaAbmVendedoresCobradoresController', [ |
3 | '$scope', 'focaAbmVendedorCobradorService', '$location', '$filter', | 3 | '$scope', 'focaAbmVendedorCobradorService', '$location', '$filter', |
4 | 'focaBotoneraLateralService', 'focaModalService', | 4 | 'focaBotoneraLateralService', 'focaModalService', |
5 | function($scope, focaAbmVendedorCobradorService, $location, $filter, | 5 | function($scope, focaAbmVendedorCobradorService, $location, $filter, |
6 | focaBotoneraLateralService, focaModalService) { | 6 | focaBotoneraLateralService, focaModalService) { |
7 | $scope.now = new Date(); | 7 | $scope.now = new Date(); |
8 | $scope.vendedoresCobradores = []; | 8 | $scope.vendedoresCobradores = []; |
9 | $scope.filters = ''; | 9 | $scope.filters = ''; |
10 | $scope.numPerPage = 10; | 10 | $scope.numPerPage = 10; |
11 | $scope.currentPageVendedoresCobradores = []; | 11 | $scope.currentPageVendedoresCobradores = []; |
12 | $scope.vendedoresCobradores = []; | 12 | $scope.vendedoresCobradores = []; |
13 | 13 | ||
14 | //SETEO BOTONERA LATERAL | 14 | //SETEO BOTONERA LATERAL |
15 | focaBotoneraLateralService.showSalir(true); | 15 | focaBotoneraLateralService.showSalir(true); |
16 | focaBotoneraLateralService.showPausar(false); | 16 | focaBotoneraLateralService.showPausar(false); |
17 | focaBotoneraLateralService.showCancelar(false); | 17 | focaBotoneraLateralService.showCancelar(false); |
18 | focaBotoneraLateralService.showGuardar(false); | 18 | focaBotoneraLateralService.showGuardar(false); |
19 | 19 | ||
20 | $scope.editar = function(id) { | 20 | $scope.editar = function(id) { |
21 | $location.path('/vendedor-cobrador/' + id); | 21 | $location.path('/vendedor-cobrador/' + id); |
22 | }; | 22 | }; |
23 | 23 | ||
24 | $scope.eliminar = function(vendedorCobrador) { | 24 | $scope.eliminar = function(vendedorCobrador) { |
25 | var tipo = !!(vendedorCobrador.rol | 2) ? 'cobrador' : 'vendedor'; | 25 | var tipo = !!(vendedorCobrador.rol | 2) ? 'cobrador' : 'vendedor'; |
26 | focaModalService.confirm('¿Está seguro que desea borrar el ' + tipo + | 26 | focaModalService.confirm('¿Está seguro que desea borrar el ' + tipo + |
27 | ' ' + vendedorCobrador.NOM + '?') | 27 | ' ' + vendedorCobrador.NOM + '?') |
28 | .then(function(data) { | 28 | .then(function(data) { |
29 | if(data) { | 29 | if(data) { |
30 | focaAbmVendedorCobradorService | 30 | focaAbmVendedorCobradorService |
31 | .eliminarVendedorCobrador(vendedorCobrador.NUM) | 31 | .eliminarVendedorCobrador(vendedorCobrador.NUM) |
32 | .then(function() { | 32 | .then(function() { |
33 | $scope.search(13); | 33 | $scope.search(13); |
34 | }); | 34 | }); |
35 | } | 35 | } |
36 | }); | 36 | }); |
37 | }; | 37 | }; |
38 | 38 | ||
39 | $scope.selectPage = function(page) { | 39 | $scope.selectPage = function(page) { |
40 | var start = (page - 1) * $scope.numPerPage; | 40 | var start = (page - 1) * $scope.numPerPage; |
41 | var end = start + $scope.numPerPage; | 41 | var end = start + $scope.numPerPage; |
42 | $scope.paginas = []; | 42 | $scope.paginas = []; |
43 | $scope.paginas = calcularPages(page); | 43 | $scope.paginas = calcularPages(page); |
44 | $scope.currentPageVendedoresCobradores = | 44 | $scope.currentPageVendedoresCobradores = |
45 | $scope.vendedoresCobradores.slice(start, end); | 45 | $scope.vendedoresCobradores.slice(start, end); |
46 | $scope.currentPage = page; | 46 | $scope.currentPage = page; |
47 | }; | 47 | }; |
48 | 48 | ||
49 | $scope.resetPage = function() { | 49 | $scope.resetPage = function() { |
50 | $scope.currentPage = 1; | 50 | $scope.currentPage = 1; |
51 | $scope.selectPage(1); | 51 | $scope.selectPage(1); |
52 | }; | 52 | }; |
53 | 53 | ||
54 | $scope.search = function(key) { | 54 | $scope.search = function(key) { |
55 | if(key !== 13) return; | 55 | if(key !== 13) return; |
56 | 56 | ||
57 | focaAbmVendedorCobradorService | 57 | focaAbmVendedorCobradorService |
58 | .getVendedoresCobradores($scope.filters) | 58 | .getVendedoresCobradores($scope.filters) |
59 | .then(function(res) { | 59 | .then(function(res) { |
60 | $scope.vendedoresCobradores = res.data; | 60 | $scope.vendedoresCobradores = res.data; |
61 | 61 | ||
62 | $scope.lastPage = Math.ceil( | 62 | $scope.lastPage = Math.ceil( |
63 | $scope.vendedoresCobradores.length / $scope.numPerPage | 63 | $scope.vendedoresCobradores.length / $scope.numPerPage |
64 | ); | 64 | ); |
65 | 65 | ||
66 | $scope.resetPage(); | 66 | $scope.resetPage(); |
67 | }); | 67 | }); |
68 | }; | 68 | }; |
69 | 69 | ||
70 | function calcularPages(paginaActual) { | 70 | function calcularPages(paginaActual) { |
71 | var paginas = []; | 71 | var paginas = []; |
72 | paginas.push(paginaActual); | 72 | paginas.push(paginaActual); |
73 | 73 | ||
74 | if(paginaActual - 1 > 1) { | 74 | if(paginaActual - 1 > 1) { |
75 | 75 | ||
76 | paginas.unshift(paginaActual - 1); | 76 | paginas.unshift(paginaActual - 1); |
77 | if(paginaActual - 2 > 1) { | 77 | if(paginaActual - 2 > 1) { |
78 | paginas.unshift(paginaActual - 2); | 78 | paginas.unshift(paginaActual - 2); |
79 | } | 79 | } |
80 | } | 80 | } |
81 | 81 | ||
82 | if(paginaActual + 1 < $scope.lastPage) { | 82 | if(paginaActual + 1 < $scope.lastPage) { |
83 | paginas.push(paginaActual + 1); | 83 | paginas.push(paginaActual + 1); |
84 | if(paginaActual + 2 < $scope.lastPage) { | 84 | if(paginaActual + 2 < $scope.lastPage) { |
85 | paginas.push(paginaActual + 2); | 85 | paginas.push(paginaActual + 2); |
86 | } | 86 | } |
87 | } | 87 | } |
88 | 88 | ||
89 | if(paginaActual !== 1) { | 89 | if(paginaActual !== 1) { |
90 | paginas.unshift(1); | 90 | paginas.unshift(1); |
91 | } | 91 | } |
92 | 92 | ||
93 | if(paginaActual !== $scope.lastPage) { | 93 | if(paginaActual !== $scope.lastPage) { |
94 | paginas.push($scope.lastPage); | 94 | paginas.push($scope.lastPage); |
95 | } | 95 | } |
96 | 96 | ||
97 | return paginas; | 97 | return paginas; |
98 | } | 98 | } |
99 | 99 | // TODO: descomentar cuando se use | |
100 | function primera() { | 100 | // function primera() { |
101 | $scope.selectedClientes = 0; | 101 | // $scope.selectedClientes = 0; |
102 | } | 102 | // } |
103 | 103 | ||
104 | function anterior() { | 104 | // function anterior() { |
105 | if ($scope.selectedClientes === 0 && $scope.currentPage > 1) { | 105 | // if ($scope.selectedClientes === 0 && $scope.currentPage > 1) { |
106 | retrocederPagina(); | 106 | // retrocederPagina(); |
107 | } else { | 107 | // } else { |
108 | $scope.selectedClientes--; | 108 | // $scope.selectedClientes--; |
109 | } | 109 | // } |
110 | } | 110 | // } |
111 | 111 | ||
112 | function siguiente() { | 112 | // function siguiente() { |
113 | if ($scope.selectedClientes < $scope.currentPageVendedoresCobradores.length - 1 ) { | 113 | // if ($scope.selectedClientes < $scope.currentPageVendedoresCobradores.length - 1 ) |
114 | $scope.selectedClientes++; | 114 | //{ |
115 | } else { | 115 | // $scope.selectedClientes++; |
116 | avanzarPagina(); | 116 | // } else { |
117 | } | 117 | // avanzarPagina(); |
118 | } | 118 | // } |
119 | 119 | // } | |
120 | function retrocederPagina() { | 120 | |
121 | if ($scope.currentPage > 1) { | 121 | // function retrocederPagina() { |
122 | $scope.selectPage($scope.currentPage - 1); | 122 | // if ($scope.currentPage > 1) { |
123 | $scope.selectedClientes = $scope.numPerPage - 1; | 123 | // $scope.selectPage($scope.currentPage - 1); |
124 | } | 124 | // $scope.selectedClientes = $scope.numPerPage - 1; |
125 | } | 125 | // } |
126 | 126 | // } | |
127 | function avanzarPagina() { | 127 | |
128 | if ($scope.currentPage < $scope.lastPage) { | 128 | // function avanzarPagina() { |
129 | $scope.selectPage($scope.currentPage + 1); | 129 | // if ($scope.currentPage < $scope.lastPage) { |
130 | $scope.selectedClientes = 0; | 130 | // $scope.selectPage($scope.currentPage + 1); |
131 | } | 131 | // $scope.selectedClientes = 0; |
132 | } | 132 | // } |
133 | // } | ||
133 | } | 134 | } |
134 | ]); | 135 | ]); |
135 | 136 |
src/js/service.js
1 | angular.module('focaAbmVendedorCobrador') | 1 | angular.module('focaAbmVendedorCobrador') |
2 | .factory('focaAbmVendedorCobradorService', ['$http', 'API_ENDPOINT', function($http, API_ENDPOINT) { | 2 | .factory('focaAbmVendedorCobradorService', ['$http', 'API_ENDPOINT', |
3 | function($http, API_ENDPOINT) { | ||
3 | return { | 4 | return { |
4 | getVendedoresCobradores: function(nombre) { | 5 | getVendedoresCobradores: function(nombre) { |
5 | return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador/list', {nombre: nombre}); | 6 | return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador/list', {nombre: nombre}); |
6 | }, | 7 | }, |
7 | getVendedorCobradorById: function(id) { | 8 | getVendedorCobradorById: function(id) { |
8 | return $http.get(API_ENDPOINT.URL + '/vendedor-cobrador/' + id); | 9 | return $http.get(API_ENDPOINT.URL + '/vendedor-cobrador/' + id); |
9 | }, | 10 | }, |
10 | guardarVendedorCobrador: function(vendedorCobrador) { | 11 | guardarVendedorCobrador: function(vendedorCobrador) { |
11 | return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador', | 12 | return $http.post(API_ENDPOINT.URL + '/vendedor-cobrador', |
12 | {vendedorCobrador: vendedorCobrador}); | 13 | {vendedorCobrador: vendedorCobrador}); |
13 | }, | 14 | }, |
14 | eliminarVendedorCobrador: function(id) { | 15 | eliminarVendedorCobrador: function(id) { |
15 | return $http.delete(API_ENDPOINT.URL + '/vendedor-cobrador/' + id); | 16 | return $http.delete(API_ENDPOINT.URL + '/vendedor-cobrador/' + id); |
16 | }, | 17 | }, |
17 | getCodigoSiguiente: function() { | 18 | getCodigoSiguiente: function() { |
18 | return $http.get(API_ENDPOINT.URL + '/vendedor-cobrador/obtener/siguiente-codigo'); | 19 | return $http.get(API_ENDPOINT.URL + '/vendedor-cobrador/obtener/siguiente-codigo'); |
19 | } | 20 | } |
20 | }; | 21 | }; |
21 | }]); | 22 | }]); |
22 | 23 |