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