diff --git a/client/app/app.scss b/client/app/app.scss index e06e40c66cef45f807f4566149077330e095a4aa..db3d7bbcbc98502bf55f979ed4271a775954f8cb 100644 --- a/client/app/app.scss +++ b/client/app/app.scss @@ -196,7 +196,6 @@ input[type=checkbox].with-font:checked ~ label:before { @import 'etapas/etapas.scss'; @import 'evaluaciones/evaluaciones.scss'; @import 'evaluacionesCargosEtapas/evaluacionesCargosEtapas.scss'; -@import 'gruposConvocatoria/gruposConvocatoria.scss'; @import 'main/main.scss'; @import 'personas/personas.scss'; @import 'postulaciones/postulaciones.scss'; diff --git a/client/app/cargos/cargos.controller.spec.js b/client/app/cargos/cargos.controller.spec.js index 00e5633265fe795437fd6e480f20df8683c5f5ca..420ad0f673e06e85693a5f56369677a1bc358507 100644 --- a/client/app/cargos/cargos.controller.spec.js +++ b/client/app/cargos/cargos.controller.spec.js @@ -1,11 +1,11 @@ 'use strict'; -describe('Controller: CargosCtrl', function () { +describe('Controller: CargoCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var CargosCtrl, scope, cargoService, postulacionService, personaService; + var CargoCtrl, scope, cargoService, postulacionService, personaService; var cargos = { "count": 2, "rows": [ @@ -38,7 +38,7 @@ describe('Controller: CargosCtrl', function () { let lstStub = sinon.stub(cargoService, 'getCargos'); lstStub.returns($q.when(cargos)); - CargosCtrl = $controller('CargosCtrl', { + CargoCtrl = $controller('CargoCtrl', { $scope: scope, cargoService }); @@ -46,7 +46,7 @@ describe('Controller: CargosCtrl', function () { it('Debe obtener cargos paginados', function () { scope.$digest(); - expect(CargosCtrl.totalElementos).to.be.equal(2); - expect(CargosCtrl.cargosLibres.length).to.be.equal(2); + expect(CargoCtrl.totalElementos).to.be.equal(2); + expect(CargoCtrl.cargos.length).to.be.equal(2); }); }); diff --git a/client/app/cargosConvocatorias/cargosConvocatorias.controller.spec.js b/client/app/cargosConvocatorias/cargosConvocatorias.controller.spec.js index a90f55834f38aee5ad7d9366f91ab93bac434285..ba70e9ef19f26d8ea8692bd4d8c5c5f6f64d5670 100644 --- a/client/app/cargosConvocatorias/cargosConvocatorias.controller.spec.js +++ b/client/app/cargosConvocatorias/cargosConvocatorias.controller.spec.js @@ -1,21 +1,44 @@ 'use strict'; -describe('Controller: CargosConvocatoriasCtrl', function () { +describe('Controller: CargoConvocatoriaCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var CargosConvocatoriasCtrl, scope; + var CargosConvocatoriasCtrl, scope, cargoConvocatoriaService, convocatoriaService; + var cargosConvocatorias = { + 'count': 2, + 'rows': [ + { + "_id": 1, + "fk_cargo": 1, + "fk_convocatoria": 2 + }, + { + "_id": 2, + "fk_cargo": 1, + "fk_convocatoria": 2 + } + ] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, _CargoConvocatoriaService_, _ConvocatoriaService_, $q) { + cargoConvocatoriaService = _CargoConvocatoriaService_; + convocatoriaService = _ConvocatoriaService_; scope = $rootScope.$new(); - CargosConvocatoriasCtrl = $controller('CargosConvocatoriasCtrl', { - $scope: scope + + let lstStub = sinon.stub(convocatoriaService, 'cargosConvocatoria'); + lstStub.returns($q.when(cargosConvocatorias)); + CargosConvocatoriasCtrl = $controller('CargoConvocatoriaCtrl', { + $scope: scope, + convocatoriaService }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('Debe obtener cargos asociados a una convocatoria', function () { + scope.$digest(); + expect(CargosConvocatoriasCtrl.cargosConvocatoria.count).to.be.equal(2); + expect(CargosConvocatoriasCtrl.cargosConvocatoria.rows.length).to.be.equal(2); }); }); diff --git a/client/app/cargosGrupos/cargosGrupos.service.js b/client/app/cargosGrupos/cargosGrupos.service.js deleted file mode 100644 index 0231f0fd26f4ff1d1c17b590c07070a974898e5e..0000000000000000000000000000000000000000 --- a/client/app/cargosGrupos/cargosGrupos.service.js +++ /dev/null @@ -1,25 +0,0 @@ -(()=> { - 'use strict'; - class CargoGrupoService { - constructor($resource, appConfig) { - this.resource = $resource(appConfig.serverAddress + '/api/cargosGrupos/:id', {id: '@_id'}, { - update: {method: 'PUT'}, - query: {isArray: false}, - save: { - method: 'POST', - isArray: true - } - }) - } - - guardar(cargoGrupo) { - return this.resource.save(cargoGrupo).$promise; - } - } - - angular.module('moduloPersonalApp') - .service('CargoGrupoService', CargoGrupoService); -})(); - - - diff --git a/client/app/contrataciones/contrataciones.controller.js b/client/app/contrataciones/contrataciones.controller.js index b484461d924e34e52a04c2242eeb41469209f702..c389d8243cdc2df7ce03a6b15a903ce9e76bd973 100644 --- a/client/app/contrataciones/contrataciones.controller.js +++ b/client/app/contrataciones/contrataciones.controller.js @@ -25,8 +25,7 @@ let parametros = { pagina: this.paginaActual, elementos: 10, ordenarPor: 'nombre', incluye: [{entidad: 'Persona'}] }; - if (this.cargoId - ) { + if (this.cargoId) { this.cargoService.relacionesLaborales(this.cargoId, parametros) .then(relacionesLaborales=> { this.relacionesLaborales = relacionesLaborales; @@ -34,56 +33,10 @@ } } - // crear() { - // this.modal.open({ - // templateUrl: 'app/convocatorias/modals/convocatorias.modal.html', - // controller: 'ConvocatoriaCrearModalCtrl', - // controllerAs: 'vm', - // resolve: {parametro: {entidadId: this.entidadId}} - // }).result.then(convocatoria=> { - // this.alertas.push({ - // tipo: 'success', - // mensaje: 'Se creo correctamente la convocatoria ' + convocatoria.descripcion - // }); - // this.convocatorias.rows.push(convocatoria); - // this.convocatorias.count += 1; - // }) - // } - // - // editar(convocatoria) { - // this.modal.open({ - // templateUrl: 'app/convocatorias/modals/convocatorias.modal.html', - // controller: 'ConvocatoriaEditarModalCtrl', - // controllerAs: 'vm', - // resolve: {parametro: {entidadId: this.entidadId, convocatoria: convocatoria}} - // }).result.then(convocatoria=> { - // this.alertas.push({ - // tipo: 'success', - // mensaje: 'Se edito correctamente la convocatoria ' + convocatoria.descripcion - // }); - // }) - // } - // - // eliminar(convocatoria) { - // this.Modal.confirm.eliminar(convocatoria=> { - // this.service.eliminar(convocatoria._id).then(()=> { - // this.convocatorias.rows.splice(this.convocatorias.rows.indexOf(convocatoria), 1); - // this.alertas.push({tipo: 'danger', mensaje: 'La convocatoria se elimino correctamente'}); - // }); - // })(convocatoria.descripcion, convocatoria); - // } } - angular - .module( - 'moduloPersonalApp' - ) - .controller( - 'RelacionLaboralCtrl' - , - RelacionLaboralController - ) - ; + angular.module('moduloPersonalApp') + .controller('RelacionLaboralCtrl', RelacionLaboralController); })(); diff --git a/client/app/contrataciones/contrataciones.controller.spec.js b/client/app/contrataciones/contrataciones.controller.spec.js index 578a6181f93725fc00075312a8c8c00cbda83778..545655c8315fe20e215d4466fa42ade8506c0c60 100644 --- a/client/app/contrataciones/contrataciones.controller.spec.js +++ b/client/app/contrataciones/contrataciones.controller.spec.js @@ -5,17 +5,43 @@ describe('Controller: ContratacionesCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var ContratacionesCtrl, scope; + var ContratacionesCtrl, scope, cargoService; + var relacionesLaborales = { + 'count': 3, + 'rows': [ + { + fk_persona: 1, + fk_cargo: 1 + }, + { + fk_persona: 2, + fk_cargo: 2 + }, + { + fk_persona: 3, + fk_cargo: 4 + } + ] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, $q, _cargoService_, $stateParams) { + cargoService = _cargoService_; + scope = $rootScope.$new(); - ContratacionesCtrl = $controller('ContratacionesCtrl', { - $scope: scope + $stateParams.cargoId = 10; + let lstStub = sinon.stub(cargoService, 'relacionesLaborales'); + lstStub.returns($q.when(relacionesLaborales)); + ContratacionesCtrl = $controller('RelacionLaboralCtrl', { + $scope: scope, + cargoService, + $stateParams }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('Debe retornar las relaciones laborales paginadas', function () { + scope.$digest(); + expect(ContratacionesCtrl.relacionesLaborales.count).to.be.equal(3); + expect(ContratacionesCtrl.relacionesLaborales.rows.length).to.be.equal(3); }); }); diff --git a/client/app/convocatorias/convocatorias.controller.spec.js b/client/app/convocatorias/convocatorias.controller.spec.js index 04a315ce0f7f83151a77f44e31567c106ec93024..538b576de5867a00d2c2a83c30b81b5270a9c7e5 100644 --- a/client/app/convocatorias/convocatorias.controller.spec.js +++ b/client/app/convocatorias/convocatorias.controller.spec.js @@ -5,17 +5,38 @@ describe('Controller: ConvocatoriasCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var ConvocatoriasCtrl, scope; + var ConvocatoriasCtrl, scope, cargoService; + + var convocatorias = { + 'count': 2, + 'rows': [ + { + _id: 2, + nombre: 'Convocatoria 1' + }, { + _id: 3, + nombre: 'Convocatoria 2' + } + ] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, $q, _cargoService_, $stateParams) { + cargoService = _cargoService_; scope = $rootScope.$new(); - ConvocatoriasCtrl = $controller('ConvocatoriasCtrl', { - $scope: scope + $stateParams.cargoId = 2; + let lstStub = sinon.stub(cargoService, 'convocatorias'); + lstStub.returns($q.when(convocatorias)); + ConvocatoriasCtrl = $controller('ConvocatoriaCtrl', { + $scope: scope, + cargoService, + $stateParams }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('Debe retornar convocatorias paginadas', function () { + scope.$digest(); + expect(ConvocatoriasCtrl.convocatorias.count).to.be.equal(2); + expect(ConvocatoriasCtrl.convocatorias.rows.length).to.be.equal(2); }); }); diff --git a/client/app/etapas/etapas.controller.spec.js b/client/app/etapas/etapas.controller.spec.js index 50a1976b70524dab7cc9bd88000f0d1d4c004ee7..ecfd274a9f8d5c3c3b0089766cfda07a2040552e 100644 --- a/client/app/etapas/etapas.controller.spec.js +++ b/client/app/etapas/etapas.controller.spec.js @@ -5,17 +5,37 @@ describe('Controller: EtapasCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var EtapasCtrl, scope; + var EtapasCtrl, scope, convocatoriaService; + var etapas = { + 'count': 2, + 'rows': [ + { + _id: 2, + nombre: 'etapa 1' + }, { + _id: 3, + nombre: 'etapa 2' + } + ] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, $q, _ConvocatoriaService_, $stateParams) { + convocatoriaService = _ConvocatoriaService_; scope = $rootScope.$new(); - EtapasCtrl = $controller('EtapasCtrl', { - $scope: scope + $stateParams.convocatoriaId = 2; + let lstStub = sinon.stub(convocatoriaService, 'etapas'); + lstStub.returns($q.when(etapas)); + EtapasCtrl = $controller('EtapaCtrl', { + $scope: scope, + convocatoriaService, + $stateParams }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('Debe retornar etapas paginadas', function () { + scope.$digest(); + expect(EtapasCtrl.etapas.count).to.be.equal(2); + expect(EtapasCtrl.etapas.rows.length).to.be.equal(2); }); }); diff --git a/client/app/evaluaciones/evaluaciones.controller.spec.js b/client/app/evaluaciones/evaluaciones.controller.spec.js index fc340da9bcb5ced374a8cadf980f6a4f46642787..c7668a924b991bddb561887610137006367ffc3b 100644 --- a/client/app/evaluaciones/evaluaciones.controller.spec.js +++ b/client/app/evaluaciones/evaluaciones.controller.spec.js @@ -5,17 +5,38 @@ describe('Controller: EvaluacionesCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var EvaluacionesCtrl, scope; + var EvaluacionesCtrl, scope, convocatoriaService; + var evaluaciones = { + 'count': 2, + 'rows': [ + { + _id: 1, + nombre: 'Evaluacion 1' + }, { + _id: 2, + nombre: 'Evaluacion 3' + } + ] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, $q, _ConvocatoriaService_, $stateParams) { + convocatoriaService = _ConvocatoriaService_; + $stateParams.convocatoriaId = 2; scope = $rootScope.$new(); - EvaluacionesCtrl = $controller('EvaluacionesCtrl', { - $scope: scope + + let lstStub = sinon.stub(convocatoriaService, 'evaluaciones'); + lstStub.returns($q.when(evaluaciones)); + EvaluacionesCtrl = $controller('EvaluacionCtrl', { + $scope: scope, + convocatoriaService, + $stateParams }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('Debe retornar evaluaciones paginadas', function () { + scope.$digest(); + expect(EvaluacionesCtrl.evaluaciones.count).to.be.equal(2); + expect(EvaluacionesCtrl.evaluaciones.rows.length).to.be.equal(2); }); }); diff --git a/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.js b/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.js index 935d3fff5f5eab93e3684ede1f8aae9a03d44559..f1c9b58e862425b2b0bf1c0dccd4fd77e1deea33 100644 --- a/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.js +++ b/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.js @@ -14,12 +14,10 @@ this.service = EvaluacionCargoEtapaService; this.convocatoriaService = ConvocatoriaService; this.cargoConvocatoriaService = CargoConvocatoriaService; - - + this.cargoConvocatoriaService.evaluacionesCargosEtapas(this.cargoConvocatoriaId) - .then(evaluacionCargoEtapa=> { - console.log(evaluacionCargoEtapa); - this.evaluacionesCargosEtapas = evaluacionCargoEtapa; + .then(evaluacionesCargosEtapas=> { + this.evaluacionesCargosEtapas = evaluacionesCargosEtapas; return this.convocatoriaService.evaluaciones(this.convocatoriaId); }) .then(evaluaciones=> { @@ -28,7 +26,7 @@ }) .then(etapas=> { this.etapas = etapas; - this.etapas.rows.sort((a, b)=>a.orden - b.orden) + this.etapas.rows.sort((a, b)=>a.orden - b.orden); this.etapas.rows.forEach(etapa=> { etapa.evaluaciones = this.evaluaciones.rows.filter( x=> this.evaluacionesCargosEtapas.rows.filter( @@ -38,8 +36,6 @@ }) } - - guardar() { var evaluacionesCargosEtapas = []; this.etapas.rows.forEach(etapa=> { diff --git a/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.spec.js b/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.spec.js index d22185e694ca04057c2a4842f29f7ef0d01e02bc..f8031f51a6802c84c2d0a252703a8fc7b722420a 100644 --- a/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.spec.js +++ b/client/app/evaluacionesCargosEtapas/evaluacionesCargosEtapas.controller.spec.js @@ -5,17 +5,69 @@ describe('Controller: EvaluacionesCargosEtapasCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var EvaluacionesCargosEtapasCtrl, scope; + var EvaluacionesCargosEtapasCtrl, scope, cargoConvocatoriaService, convocatoriaService; + var evaluacionesCargosEtapas = { + 'count': 2, + 'rows': [ + { + _id: 1, + fk_evaluacion: 1, + fk_cargo_convocatoria: 1, + fk_etapa: 1 + }, { + _id: 2, + fk_evaluacion: 2, + fk_cargo_convocatoria: 1, + fk_etapa: 1 + }, + { + _id: 3, + fk_evaluacion: 3, + fk_cargo_convocatoria: 1, + fk_etapa: 2 + } + ] + }; + var etapas = { + 'count': 2, + 'rows': [ + {_id: 1, nombre: 'Etapa 1', orden: 1}, {_id: 2, nombre: 'Etapa 2', orden: 0} + ] + }; + var evaluaciones = { + 'count': 3, + 'rows': [ + {_id: 1, nombre: 'Evaluacion 1'}, {_id: 2, nombre: 'Evaluacion 2'}, {_id: 3, nombre: 'Evaluacion 3'} + ] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, $q, _CargoConvocatoriaService_, _ConvocatoriaService_, $stateParams) { + cargoConvocatoriaService = _CargoConvocatoriaService_; + convocatoriaService = _ConvocatoriaService_; + $stateParams.convocatoriaId = 1; + $stateParams.cargoConvocatoriaId = 1; scope = $rootScope.$new(); - EvaluacionesCargosEtapasCtrl = $controller('EvaluacionesCargosEtapasCtrl', { - $scope: scope + + let evaluacionesStub = sinon.stub(convocatoriaService, 'evaluaciones'); + evaluacionesStub.returns($q.when(evaluaciones)); + let etapasStub = sinon.stub(convocatoriaService, 'etapas'); + etapasStub.returns($q.when(etapas)); + let evaluacionesCargosEtapasStub = sinon.stub(cargoConvocatoriaService, 'evaluacionesCargosEtapas'); + evaluacionesCargosEtapasStub.returns($q.when(evaluacionesCargosEtapas)); + EvaluacionesCargosEtapasCtrl = $controller('EvaluacionCargoEtapaCtrl', { + $scope: scope, + $stateParams, + cargoConvocatoriaService, + convocatoriaService }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('debe retornar evaluacionesCargosEtapas, etapas y evaluaciones', function () { + scope.$digest(); + expect(EvaluacionesCargosEtapasCtrl.etapas.count).to.be.equal(2); + expect(EvaluacionesCargosEtapasCtrl.etapas.rows[0].orden).to.be.equal(0); + expect(EvaluacionesCargosEtapasCtrl.evaluaciones.rows.length).to.be.equal(0); + expect(EvaluacionesCargosEtapasCtrl.etapas.rows[1].evaluaciones.length).to.be.equal(2); }); }); diff --git a/client/app/gruposConvocatoria/editar/gruposConvocatoria.editar.controller.js b/client/app/gruposConvocatoria/editar/gruposConvocatoria.editar.controller.js deleted file mode 100644 index 97f292341364018a0d050cc3be60192ec03ff2c9..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/editar/gruposConvocatoria.editar.controller.js +++ /dev/null @@ -1,41 +0,0 @@ -(()=> { - 'use strict'; - - class GrupoConvocatoriaEditarController { - constructor($stateParams, $previousState, $uibModal, Modal, GrupoConvocatoriaService) { - this.errores = {}; // lista de errores - this.modal = $uibModal; - this.Modal = Modal; - this.alertas = []; - this.estadoAnterior = $previousState; - - this.entidadId = $stateParams.entidadId; - this.convocatoriaId = $stateParams.convocatoriaId; - this.id = $stateParams.grupoId; - - this.service = GrupoConvocatoriaService; - - this.service.grupoConvocatoria(this.id) - .then(grupoConvocatoria=> { - this.grupoConvocatoria = grupoConvocatoria; - }) - } - - guardar(form, campo) { - if (form.$valid) { - this.service.editar(this.id, {[campo]: form[campo].$modelValue}) - .then(entidad=> { - form[campo].$dirty = false; - this.enviado = false; - this.grupoConvocatoria[campo] = entidad[campo]; - }) - .catch(err => { - this.errores.other = err.message; - }); - } - } - } - - angular.module('moduloPersonalApp') - .controller('GrupoConvocatoriaEditarCtrl', GrupoConvocatoriaEditarController); -})(); diff --git a/client/app/gruposConvocatoria/editar/gruposConvocatoria.editar.html b/client/app/gruposConvocatoria/editar/gruposConvocatoria.editar.html deleted file mode 100644 index 361789dc3586e4924b9918764a57e7d705a684d8..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/editar/gruposConvocatoria.editar.html +++ /dev/null @@ -1,50 +0,0 @@ -
-
-
-

Grupo

-
- -
- {{alerta.mensaje}} - -
-
-

Grupo

-
-
-
-
-
-
- -
- - - - -
-
-
-
-

- Debe llenar todos los campos -

-

{{ vm.errores.other }}

-
-
-
-
- diff --git a/client/app/gruposConvocatoria/gruposConvocatoria.controller.js b/client/app/gruposConvocatoria/gruposConvocatoria.controller.js deleted file mode 100644 index 4ee9924d6c31f7925a233846cc38c65d72cdcf46..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/gruposConvocatoria.controller.js +++ /dev/null @@ -1,62 +0,0 @@ -(()=> { - 'use strict'; - - class GrupoConvocatoriaController { - constructor($stateParams, $uibModal, Modal, GrupoConvocatoriaService, ConvocatoriaService) { - this.errores = {}; // lista de errores - this.modal = $uibModal; - this.Modal = Modal; - this.alertas = []; - - this.entidadId = $stateParams.entidadId; - this.convocatoriaId = $stateParams.convocatoriaId; - - this.grupoConvocatoriaService = GrupoConvocatoriaService; - this.convocatoriaService = ConvocatoriaService; - - this.convocatoriaService.grupos(this.convocatoriaId) - .then(grupos=> { - this.grupos = grupos; - }) - } - - crear() { - this.modal.open({ - templateUrl: 'app/gruposConvocatoria/modals/gruposConvocatoria.modal.html', - controller: 'GrupoConvocatoriaCrearModalCtrl', - controllerAs: 'vm', - resolve: {parametro: {convocatoriaId: this.convocatoriaId, entidadId: this.entidadId}} - }).result.then(grupo=> { - this.alertas.push({ - tipo: 'success', - mensaje: 'Se creo correctamente el grupo' - }); - this.grupos.rows.push(grupo); - this.grupos.count += 1; - }) - } - - editar(grupo) { - this.modal.open({ - templateUrl: 'app/gruposConvocatoria/modals/gruposConvocatoria.modal.html', - controller: 'GrupoConvocatoriaEditarModalCtrl', - controllerAs: 'vm', - resolve: { - parametro: {grupo: grupo, entidadId: this.entidadId} - } - }).result.then(grupoEditado=> { - this.alertas.push({ - tipo: 'success', - mensaje: 'Se edito correctamente el grupo' - }); - grupo = Object.assign(grupo, grupoEditado); - }) - } - } - - angular.module('moduloPersonalApp') - .controller('GrupoConvocatoriaCtrl', GrupoConvocatoriaController); -})(); - - - diff --git a/client/app/gruposConvocatoria/gruposConvocatoria.controller.spec.js b/client/app/gruposConvocatoria/gruposConvocatoria.controller.spec.js deleted file mode 100644 index 8d1b757a33c60fbd658826c6f54da3446708a1cf..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/gruposConvocatoria.controller.spec.js +++ /dev/null @@ -1,21 +0,0 @@ -'use strict'; - -describe('Controller: GruposConvocatoriaCtrl', function () { - - // load the controller's module - beforeEach(module('moduloPersonalApp')); - - var GruposConvocatoriaCtrl, scope; - - // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { - scope = $rootScope.$new(); - GruposConvocatoriaCtrl = $controller('GruposConvocatoriaCtrl', { - $scope: scope - }); - })); - - it('should ...', function () { - expect(1).to.equal(1); - }); -}); diff --git a/client/app/gruposConvocatoria/gruposConvocatoria.html b/client/app/gruposConvocatoria/gruposConvocatoria.html deleted file mode 100644 index 61dd3479b477b674e3a9bed9b3957a1ae4bf3540..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/gruposConvocatoria.html +++ /dev/null @@ -1,7 +0,0 @@ -
-
-
-
-
-
- diff --git a/client/app/gruposConvocatoria/gruposConvocatoria.js b/client/app/gruposConvocatoria/gruposConvocatoria.js deleted file mode 100644 index 4b831df6cf5f11896e8458efb6b6fae51b3b9689..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/gruposConvocatoria.js +++ /dev/null @@ -1,11 +0,0 @@ -'use strict'; - -angular.module('moduloPersonalApp') - .config(function ($stateProvider) { - $stateProvider - .state('gruposConvocatoria', { - url: '/gruposConvocatoria', - templateUrl: 'app/gruposConvocatoria/gruposConvocatoria.html', - controller: 'GruposConvocatoriaCtrl' - }); - }); diff --git a/client/app/gruposConvocatoria/gruposConvocatoria.lista.html b/client/app/gruposConvocatoria/gruposConvocatoria.lista.html deleted file mode 100644 index 9c32f0103fbd31f0b211b3481612b90b14434687..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/gruposConvocatoria.lista.html +++ /dev/null @@ -1,55 +0,0 @@ -
-
-
-

Grupos - {{vm.convocatorias.count}} -

-
-
-
- -
-
-
-
- {{alerta.mensaje}} - -
-
-
-
- - - - - - - - - - - - - -
DescripciónOpciones
{{grupo.descripcion}} - -
-
-
-
-
diff --git a/client/app/gruposConvocatoria/gruposConvocatoria.scss b/client/app/gruposConvocatoria/gruposConvocatoria.scss deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/client/app/gruposConvocatoria/gruposConvocatoria.service.js b/client/app/gruposConvocatoria/gruposConvocatoria.service.js deleted file mode 100644 index b15cba3738422809c53cb2f840c7e39d383a8453..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/gruposConvocatoria.service.js +++ /dev/null @@ -1,76 +0,0 @@ -(()=> { - 'use strict'; - - class GrupoConvocatoriaService { - constructor($resource, appConfig) { - this.resource = $resource(appConfig.serverAddress + '/api/gruposConvocatoria/:id', { - id: '@_id' - }, { - update: {method: 'PUT'}, - query: {isArray: false}, - postulantes: { - method: 'GET', - url: appConfig.serverAddress + '/api/gruposConvocatoria/:id/postulantes', - isArray: false - }, - cargos: { - method: 'GET', - url: appConfig.serverAddress + '/api/gruposConvocatoria/:id/cargos', - isArray: false - }, - cargosLibres: { - method: 'GET', - url: appConfig.serverAddress + '/api/gruposConvocatoria/:id/cargosLibres', - isArray: false - }, - cargosOcupados: { - method: 'GET', - url: appConfig.serverAddress + '/api/gruposConvocatoria/:id/cargosOcupados', - isArray: true - }, - eliminarCargos: { - method: 'DELETE', - url: appConfig.serverAddress + '/api/gruposConvocatoria/:id/cargos' - } - }) - } - - grupoConvocatoria(id) { - return this.resource.get({id: id}).$promise; - } - - postulantes(id, parametros = {}) { - parametros.id = id; - return this.resource.postulantes(parametros).$promise; - } - - cargos(id, parametros = {}) { - parametros.id = id; - return this.resource.cargos(parametros).$promise; - } - - cargosLibres(id, parametros = {}) { - parametros.id = id; - return this.resource.cargosLibres(parametros).$promise; - } - - cargosOcupados(id) { - return this.resource.cargosOcupados({id: id}).$promise; - } - - eliminarCargos(id) { - return this.resource.eliminarCargos({id: id}).$promise; - } - - guardar(grupoConvocatoria) { - return this.resource.save(grupoConvocatoria).$promise; - } - - editar(id, grupoConvocatoria) { - return this.resource.update({id: id}, grupoConvocatoria).$promise; - } - } - - angular.module('moduloPersonalApp') - .service('GrupoConvocatoriaService', GrupoConvocatoriaService); -})(); diff --git a/client/app/gruposConvocatoria/modals/gruposConvocatoria.crear.modal.controller.js b/client/app/gruposConvocatoria/modals/gruposConvocatoria.crear.modal.controller.js deleted file mode 100644 index 06e62184d5bb752d524aaaf946415d99717e7427..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/modals/gruposConvocatoria.crear.modal.controller.js +++ /dev/null @@ -1,49 +0,0 @@ -(()=> { - 'use strict'; - - class GrupoConvocatoriaCrearModalController { - constructor($uibModalInstance, parametro, GrupoConvocatoriaService, EntidadService, CargoGrupoService) { - this.errores = {}; - this.enviado = false; - this.modal = $uibModalInstance; - - this.convocatoriaId = parametro.convocatoriaId; - this.entidadId = parametro.entidadId; - - this.service = GrupoConvocatoriaService; - this.entidadService = EntidadService; - this.cargoGrupoService = CargoGrupoService; - - this.cargosSeleccionados = []; - this.cargos = {}; - this.grupo = {fk_convocatoria: this.convocatoriaId}; - - this.entidadService.cargosDisponibles(this.entidadId) - .then(cargos=> { - this.cargos = cargos; - }) - } - - guardar(form) { - this.enviado = true; - if (form.$valid) { - this.service.guardar(this.grupo) - .then(grupo=> { - this.grupo = Object.assign(this.grupo, grupo); - let cargosGrupos = []; - this.cargosSeleccionados.forEach(x=> { - cargosGrupos.push({fk_cargo: x._id, fk_grupo_convocatoria: grupo._id}) - }); - return this.cargoGrupoService.guardar(cargosGrupos); - }) - .then(cargosGrupos=> { - this.modal.close(this.grupo) - }) - - } - } - } - - angular.module('moduloPersonalApp') - .controller('GrupoConvocatoriaCrearModalCtrl', GrupoConvocatoriaCrearModalController) -})(); diff --git a/client/app/gruposConvocatoria/modals/gruposConvocatoria.editar.modal.controller.js b/client/app/gruposConvocatoria/modals/gruposConvocatoria.editar.modal.controller.js deleted file mode 100644 index bda3893b9cece0ad8a8b42b5000d0c0ab07885b1..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/modals/gruposConvocatoria.editar.modal.controller.js +++ /dev/null @@ -1,60 +0,0 @@ -(()=> { - 'use strict'; - - class GrupoConvocatoriaEditarModalController { - constructor($uibModalInstance, parametro, GrupoConvocatoriaService, EntidadService, CargoGrupoService) { - this.errores = {}; - this.enviado = false; - this.modal = $uibModalInstance; - - this.service = GrupoConvocatoriaService; - this.entidadService = EntidadService; - this.cargoGrupoService = CargoGrupoService; - - this.cargosSeleccionados = []; - this.cargos = {}; - - this.grupo = Object.assign({}, parametro.grupo); - this.entidadId = parametro.entidadId; - - this.entidadService.cargosDisponibles(this.entidadId) - .then(cargosDisponibles=> { - console.log(cargosDisponibles) - this.cargos = cargosDisponibles; - return this.service.cargos(this.grupo._id) - }) - .then(cargos=> { - console.log(cargos) - this.cargos = [...this.cargos, ...cargos.rows]; - // this.cargosSeleccionados = this.cargos.filter(x=>cargos.rows.find(y=>y._id == x._id)); - this.cargosSeleccionados = cargos.rows; - }); - } - - guardar(form) { - console.log(this.cargosSeleccionados); - this.enviado = true; - if (form.$valid) { - this.service.editar(this.grupo._id, this.grupo) - .then(grupo=> { - this.grupo = Object.assign(this.grupo, grupo); - return this.service.eliminarCargos(grupo._id); - }) - .then(()=> { - console.log('se eliminaron'); - let cargosGrupos = []; - this.cargosSeleccionados.forEach(x=> { - cargosGrupos.push({fk_cargo: x._id, fk_grupo_convocatoria: this.grupo._id}) - }); - return this.cargoGrupoService.guardar(cargosGrupos); - }) - .then(cargosGruposEditados=> { - this.modal.close(this.grupo) - }) - } - } - } - - angular.module('moduloPersonalApp') - .controller('GrupoConvocatoriaEditarModalCtrl', GrupoConvocatoriaEditarModalController) -})(); diff --git a/client/app/gruposConvocatoria/modals/gruposConvocatoria.modal.html b/client/app/gruposConvocatoria/modals/gruposConvocatoria.modal.html deleted file mode 100644 index 671abc32b7bb24baf03198e0021f9ccd171f545b..0000000000000000000000000000000000000000 --- a/client/app/gruposConvocatoria/modals/gruposConvocatoria.modal.html +++ /dev/null @@ -1,41 +0,0 @@ -
- - - -
diff --git a/client/app/personas/personas.controller.js b/client/app/personas/personas.controller.js index 51d8483b131f47b34bd9283ed5a0d7e9ad6d300a..7a28fea26d3e1253833ca8b9de8d2d32cc315833 100644 --- a/client/app/personas/personas.controller.js +++ b/client/app/personas/personas.controller.js @@ -2,7 +2,7 @@ (()=> { class PersonaController { - constructor($stateParams, personaService, postulacionService, $uibModal, Modal, tagService, GrupoConvocatoriaService) { + constructor($stateParams, personaService, postulacionService, $uibModal, Modal, tagService) { this.personas = []; this.postulante = {}; this.alertas = []; @@ -14,10 +14,7 @@ this.modal = $uibModal; this.Modal = Modal; - this.grupoId = $stateParams.grupoId; - this.service = personaService; - this.grupoConvocatoriaService = GrupoConvocatoriaService; this.postulacionService = postulacionService; this.tagService = tagService; @@ -101,21 +98,12 @@ if (this.datosPersonalesBusqueda.length > 0) { parametros.buscar = this.datosPersonalesBusqueda; } - console.log(this.grupoId); - if (this.grupoId) - this.grupoConvocatoriaService.postulantes(this.grupoId, parametros) - .then(respuesta=> { - console.log(respuesta); - this.personas = respuesta.rows; - this.totalElementos = respuesta.count; - }); - else - this.service.postulantes(parametros) - .then(respuesta=> { - console.log(respuesta); - this.personas = respuesta.rows; - this.totalElementos = respuesta.count; - }); + this.service.postulantes(parametros) + .then(respuesta=> { + console.log(respuesta); + this.personas = respuesta.rows; + this.totalElementos = respuesta.count; + }); } diff --git a/client/app/personas/personas.controller.spec.js b/client/app/personas/personas.controller.spec.js index 76c4b219f30857e688037d64e7c725f5083917e4..e5f86a9e5d4d7de3e372f1d5dc9953de4ed1c94e 100644 --- a/client/app/personas/personas.controller.spec.js +++ b/client/app/personas/personas.controller.spec.js @@ -40,7 +40,7 @@ describe('Controller: PostulantesCtrl', function () { personaService = _personaService_; scope = $rootScope.$new(); - let stub = sinon.stub(personaService, 'getPostulantes') + let stub = sinon.stub(personaService, 'postulantes') stub.returns($q.when(postulantes)); PersonaCtrl = $controller('PersonaCtrl', { $scope: scope, diff --git a/client/app/postulaciones/postulaciones.controller.js b/client/app/postulaciones/postulaciones.controller.js index 52dd37b776c821623990042e331823f3cfd2116c..1704671efb2fdaaf5f3b5553fac629b63ba9aac3 100644 --- a/client/app/postulaciones/postulaciones.controller.js +++ b/client/app/postulaciones/postulaciones.controller.js @@ -95,7 +95,6 @@ } this.cargoConvocatoriaService.postulaciones(this.cargoConvocatoriaId, parametros) .then(respuesta=> { - console.log(respuesta); this.postulaciones = respuesta; if (this.cargoConvocatoriaId) return this.cargoConvocatoriaService.cargoConvocatoria(this.cargoConvocatoriaId, { @@ -133,7 +132,7 @@ } : evaluacionEncontrada[0].Calificacion; }); etapaPostulante.calificacion = etapaPostulante.Evaluaciones.length > 0 ? - etapaPostulante.Evaluaciones.map(evaluacion=>parseInt(evaluacion.Calificacion.valor)).reduce((a, b)=>a + b) : 0; + etapaPostulante.Evaluaciones.map(evaluacion=>parseFloat(evaluacion.Calificacion.valor)).reduce((a, b)=>a + b) : 0; etapaPostulante.calificacion = Math.round((etapaPostulante.calificacion / etapaPostulante.Evaluaciones.length) * (etapaPostulante.porcentaje / 100)); postulante.total += etapaPostulante.calificacion; var x = JSON.stringify(etapaPostulante); @@ -165,15 +164,14 @@ } editarCalificacion(evaluacion, postulacion) { - evaluacion.Calificacion.valor = parseInt(evaluacion.Calificacion.valor); + evaluacion.Calificacion.valor = parseFloat(evaluacion.Calificacion.valor); this.modal.open({ templateUrl: 'app/calificaciones/modals/calificaciones.modal.html', controller: 'CalificacionCrearModalCtrl', controllerAs: 'vm', resolve: {parametros: {evaluacion: evaluacion}} }).result.then(cal=> { - cal.valor = parseInt(cal.valor); - console.log(cal); + cal.valor = parseFloat(cal.valor); evaluacion.Calificacion = Object.assign(evaluacion.Calificacion, cal); var evaluacionEncontrada = postulacion.Evaluaciones.filter(x=>x._id == evaluacion._id)[0]; if (!evaluacionEncontrada) diff --git a/client/app/postulaciones/postulaciones.controller.spec.js b/client/app/postulaciones/postulaciones.controller.spec.js index 92acf1c67787cf2b65b82276803644c1480c59df..a7b813d56713d37798e9422bd044c9530d3298fc 100644 --- a/client/app/postulaciones/postulaciones.controller.spec.js +++ b/client/app/postulaciones/postulaciones.controller.spec.js @@ -5,17 +5,116 @@ describe('Controller: PostulacionesCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var PostulacionesCtrl, scope; + var PostulacionesCtrl, scope, cargoConvocatoriaService; + var postulaciones = { + 'count': 3, + 'rows': [ + { + _id: 1, + nombre: 'Juan Carlos', + apellidos: 'Perez Gomez', + Cargos: [{_id: 1, nombre: 'Encargado de Sistemas', Contratacion: {_id: 1, fk_cargo: 1, estado: true}}], + Evaluaciones: [ + { + _id: 1, + nombre: 'Evaluacion 1', + Calificacion: {_id: 1, valor: '20', fk_evaluacion: 1} + }, { + _id: 3, + nombre: 'Evaluacion 3', + Calificacion: {_id: 2, valor: '30', fk_evaluacion: 2} + }] + }, { + _id: 2, + nombre: 'Ana', + apellidos: 'Torrez Mendoza', + Cargos: [], + Evaluaciones: [ + { + _id: 1, + nombre: 'Evaluacion 1', + Calificacion: {_id: 3, valor: '10', fk_evaluacion: 1} + }, { + _id: 2, + nombre: 'Evaluacion 2', + Calificacion: {_id: 4, valor: '10', fk_evaluacion: 2} + }] + }, { + _id: 3, + nombre: 'Luis', + apellidos: 'Ramirez', + Cargos: [], + Evaluaciones: [ + { + _id: 1, + nombre: 'Evaluacion 1', + Calificacion: {_id: 5, valor: '100', fk_evaluacion: 1} + }, { + _id: 2, + nombre: 'Evaluacion 2', + Calificacion: {_id: 6, valor: '50', fk_evaluacion: 2} + }] + } + ] + }; + + var cargoConvocatoria = { + _id: 1, + fk_cargo: 1, + fk_convocatoria: 1, + Etapas: [ + { + _id: 1, + nombre: 'Etapa 1', + porcentaje: 50, + porcentajeMinimo: 30, + orden: 1, + EvaluacionCargoEtapa: {_id: 1, fk_evaluacion: 1, fk_cargo_convocatoria: 1, fk_etapa: 1} + }, + { + _id: 2, + nombre: 'Etapa 2', + porcentaje: 50, + porcentajeMinimo: 20, + orden: 0, + EvaluacionCargoEtapa: {_id: 2, fk_evaluacion: 2, fk_cargo_convocatoria: 1, fk_etapa: 2} + } + ], + Evaluaciones: [ + { + _id: 1, + nombre: 'Evaluacion 1', + EvaluacionCargoEtapa: {_id: 1, fk_evaluacion: 1, fk_cargo_convocatoria: 1, fk_etapa: 1} + }, + { + _id: 2, + nombre: 'Evaluacion 2', + EvaluacionCargoEtapa: {_id: 2, fk_evaluacion: 2, fk_cargo_convocatoria: 1, fk_etapa: 2} + } + ] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, $q, _CargoConvocatoriaService_, $stateParams) { + cargoConvocatoriaService = _CargoConvocatoriaService_; + $stateParams.cargoConvocatoriaId = 1; scope = $rootScope.$new(); - PostulacionesCtrl = $controller('PostulacionesCtrl', { - $scope: scope + let postulacionesStub = sinon.stub(cargoConvocatoriaService, 'postulaciones') + postulacionesStub.returns($q.when(postulaciones)); + let cargoConvocatoriaStub = sinon.stub(cargoConvocatoriaService, 'cargoConvocatoria') + cargoConvocatoriaStub.returns($q.when(cargoConvocatoria)); + PostulacionesCtrl = $controller('PostulacionCtrl', { + $scope: scope, + cargoConvocatoriaService, + $stateParams }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('Debe realizar el calculo de las notas de los postuantes a un cargo de una convocatoria', function () { + scope.$digest(); + expect(PostulacionesCtrl.cargoConvocatoria.Etapas[0].orden).to.be.equal(0); + expect(PostulacionesCtrl.cargoConvocatoria.Etapas[1].orden).to.be.equal(1); + expect(PostulacionesCtrl.cargoConvocatoria.Etapas[0].Evaluaciones[0]._id).to.be.equal(2); + expect(PostulacionesCtrl.postulaciones.rows[0]._id).to.be.equal(3); }); }); diff --git a/client/app/relacionesLaborales/relacionesLaborales.controller.js b/client/app/relacionesLaborales/relacionesLaborales.controller.js index df44f8eebb5867139f67f1cf62106ff76a47c152..a42e6cbb7df6eb87a1c2052cf78feec173e03f0b 100644 --- a/client/app/relacionesLaborales/relacionesLaborales.controller.js +++ b/client/app/relacionesLaborales/relacionesLaborales.controller.js @@ -29,7 +29,6 @@ this.cargoService.relacionesLaborales(this.cargoId, parametros) .then(relacionesLaborales=> { this.relacionesLaborales = relacionesLaborales; - console.log(this.relacionesLaborales); }) } } diff --git a/client/app/relacionesLaborales/relacionesLaborales.controller.spec.js b/client/app/relacionesLaborales/relacionesLaborales.controller.spec.js index 392d7d72237c1ce345085c95eecf958f7877f6ea..ed6dd6389ca2ef0b9f05d1486e5145c05fe3f303 100644 --- a/client/app/relacionesLaborales/relacionesLaborales.controller.spec.js +++ b/client/app/relacionesLaborales/relacionesLaborales.controller.spec.js @@ -5,17 +5,29 @@ describe('Controller: RelacionesLaboralesCtrl', function () { // load the controller's module beforeEach(module('moduloPersonalApp')); - var RelacionesLaboralesCtrl, scope; + var RelacionesLaboralesCtrl, scope, cargoService; + var relacionesLaborales = { + 'count': 2, + 'rows': [{}, {}] + }; // Initialize the controller and a mock scope - beforeEach(inject(function ($controller, $rootScope) { + beforeEach(inject(function ($controller, $rootScope, $q, _cargoService_, $stateParams) { + cargoService = _cargoService_; + $stateParams.cargoId = 1; scope = $rootScope.$new(); - RelacionesLaboralesCtrl = $controller('RelacionesLaboralesCtrl', { - $scope: scope + let relacionesLaboralesStub = sinon.stub(cargoService, 'relacionesLaborales') + relacionesLaboralesStub.returns($q.when(relacionesLaborales)); + RelacionesLaboralesCtrl = $controller('RelacionLaboralCtrl', { + $scope: scope, + cargoService, + $stateParams }); })); - it('should ...', function () { - expect(1).to.equal(1); + it('Debe retornar las relaciones laborales de un cargo', function () { + scope.$digest(); + expect(RelacionesLaboralesCtrl.relacionesLaborales.count).to.be.equal(2); + expect(RelacionesLaboralesCtrl.relacionesLaborales.rows.length).to.be.equal(2); }); }); diff --git a/client/index.html b/client/index.html index cfbc5e414f3d889953e4e5ec071b868617267a5d..27aeeac3e5c500d026f39f4d1c124bcd2b78b4fe 100644 --- a/client/index.html +++ b/client/index.html @@ -75,7 +75,7 @@ - + @@ -85,7 +85,6 @@ - @@ -124,15 +123,9 @@ - - - - - - - + diff --git a/karma.conf.js b/karma.conf.js index b8dbe73b9b26a45157fad04baaef63a0ba0a4352..58392bd90987cee1e1679e368da648822482c3f9 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -1,13 +1,13 @@ // Karma configuration // http://karma-runner.github.io/0.10/config/configuration-file.html -module.exports = function(config) { +module.exports = function (config) { config.set({ // base path, that will be used to resolve files and exclude basePath: '', // testing framework to use (jasmine/mocha/qunit/...) - frameworks: ['mocha', 'chai', 'sinon-chai', 'chai-as-promised', 'chai-things'], + frameworks: ['mocha', 'chai', 'sinon-chai', 'chai-as-promised', 'chai-things', 'es6-shim'], client: { mocha: { diff --git a/package.json b/package.json index a203ed16fdf4f9b89b8d7f5d2c431882dc20c08c..93a5f7550ee0024fadaa5f0b6d326f8e46154d68 100644 --- a/package.json +++ b/package.json @@ -18,8 +18,14 @@ "devDependencies": { "autoprefixer": "^6.0.0", "babel-core": "^5.6.4", + "chai": "^3.2.0", + "chai-as-promised": "^5.1.0", + "chai-things": "^0.2.0", + "connect-livereload": "^0.5.3", "grunt": "~0.4.5", - "grunt-wiredep": "^2.0.0", + "grunt-angular-templates": "^0.5.4", + "grunt-babel": "~5.0.0", + "grunt-build-control": "^0.6.0", "grunt-concurrent": "^2.0.1", "grunt-contrib-clean": "~0.7.0", "grunt-contrib-concat": "^0.5.1", @@ -27,60 +33,55 @@ "grunt-contrib-cssmin": "~0.14.0", "grunt-contrib-imagemin": "~1.0.0", "grunt-contrib-jshint": "~0.11.2", + "grunt-contrib-sass": "^0.9.0", "grunt-contrib-uglify": "~0.11.0", "grunt-contrib-watch": "~0.6.1", - "grunt-babel": "~5.0.0", + "grunt-dom-munger": "^3.4.0", + "grunt-env": "~0.4.1", + "grunt-express-server": "^0.5.1", + "grunt-filerev": "^2.3.1", "grunt-google-cdn": "~0.4.0", + "grunt-injector": "^0.6.0", "grunt-jscs": "^2.1.0", + "grunt-karma": "~0.12.0", + "grunt-mocha-istanbul": "^3.0.1", + "grunt-mocha-test": "~0.12.7", "grunt-newer": "^1.1.1", "grunt-ng-annotate": "^1.0.1", "grunt-ng-constant": "^1.1.0", - "grunt-filerev": "^2.3.1", - "grunt-usemin": "^3.0.0", - "grunt-env": "~0.4.1", "grunt-node-inspector": "^0.4.1", "grunt-nodemon": "^0.4.0", - "grunt-angular-templates": "^0.5.4", - "grunt-dom-munger": "^3.4.0", + "grunt-open": "~0.2.3", + "grunt-postcss": "~0.7.1", "grunt-protractor-runner": "^2.0.0", - "grunt-injector": "^0.6.0", - "grunt-karma": "~0.12.0", - "grunt-build-control": "^0.6.0", - "grunt-contrib-sass": "^0.9.0", + "grunt-usemin": "^3.0.0", + "grunt-wiredep": "^2.0.0", + "istanbul": "~0.4.1", "jit-grunt": "^0.9.1", - "grunt-express-server": "^0.5.1", - "grunt-postcss": "~0.7.1", - "grunt-open": "~0.2.3", - "time-grunt": "^1.2.1", - "grunt-mocha-test": "~0.12.7", - "grunt-mocha-istanbul": "^3.0.1", - "open": "~0.0.4", "jshint-stylish": "~2.1.0", - "connect-livereload": "^0.5.3", - "istanbul": "~0.4.1", - "chai": "^3.2.0", - "sinon": "^1.16.1", - "chai-as-promised": "^5.1.0", - "chai-things": "^0.2.0", "karma": "~0.13.3", - "karma-ng-scenario": "~0.1.0", - "karma-firefox-launcher": "~0.1.6", - "karma-script-launcher": "~0.1.0", + "karma-babel-preprocessor": "^5.2.1", + "karma-chai-plugins": "^0.6.0", "karma-chrome-launcher": "~0.2.0", - "karma-requirejs": "~0.2.2", + "karma-es6-shim": "^1.0.0", + "karma-firefox-launcher": "~0.1.6", "karma-jade-preprocessor": "0.0.11", - "karma-phantomjs-launcher": "~0.2.0", + "karma-mocha": "^0.2.0", "karma-ng-html2js-preprocessor": "~0.2.0", + "karma-ng-scenario": "~0.1.0", + "karma-phantomjs-launcher": "~0.2.0", + "karma-requirejs": "~0.2.2", + "karma-script-launcher": "~0.1.0", "karma-spec-reporter": "~0.0.20", - "sinon-chai": "^2.8.0", "mocha": "^2.2.5", - "karma-mocha": "^0.2.0", - "karma-chai-plugins": "^0.6.0", - "karma-babel-preprocessor": "^5.2.1", - "requirejs": "~2.1.11", + "open": "~0.0.4", "phantomjs": "^1.9.18", "proxyquire": "^1.0.1", - "supertest": "^1.1.0" + "requirejs": "~2.1.11", + "sinon": "^1.16.1", + "sinon-chai": "^2.8.0", + "supertest": "^1.1.0", + "time-grunt": "^1.2.1" }, "engines": { "node": "^4.2.3",