From 9ca3e76f9a2707bee9ddfae8f89136d850d21e47 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Wed, 13 May 2020 14:58:09 -0500 Subject: [PATCH 1/2] Issue 88: partial refector of project to product Only refactor the parts needed to get this working with Product Management System. A full refactor is still needed. --- app/services/projectService.js | 4 ++-- tests/mocks/services/mockWsApi.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/services/projectService.js b/app/services/projectService.js index aa76f5fe..aa140516 100644 --- a/app/services/projectService.js +++ b/app/services/projectService.js @@ -5,7 +5,7 @@ app.service('ProjectService', function ($q, WsApi) { WsApi.fetch(apiMapping.Project.all).then(function (response) { var apiRes = angular.fromJson(response.body); if (apiRes.meta.status === 'SUCCESS') { - resolve(apiRes.payload['ArrayList']); + resolve(apiRes.payload['ArrayList']); } else { reject(); } @@ -45,4 +45,4 @@ app.service('ProjectService', function ($q, WsApi) { }); }; -}); \ No newline at end of file +}); diff --git a/tests/mocks/services/mockWsApi.js b/tests/mocks/services/mockWsApi.js index eb5b7454..fa50dc3b 100644 --- a/tests/mocks/services/mockWsApi.js +++ b/tests/mocks/services/mockWsApi.js @@ -38,7 +38,7 @@ angular.module('mock.wsApi', []).service('WsApi', function ($q) { break; default: payloadResponse({ - 'ArrayList': mockProjects + 'ArrayList': mockProjects }); } } else { From aba024fb1addfbd8f963ad01c493b65a071d6872 Mon Sep 17 00:00:00 2001 From: Kevin Day Date: Fri, 15 May 2020 11:46:30 -0500 Subject: [PATCH 2/2] Refactor Project to Product --- app/config/apiMapping.js | 8 ++-- app/constants/featureProposalState.js | 6 +-- app/controllers/featureProposalController.js | 6 +-- app/controllers/serviceController.js | 24 +++++----- app/index.html | 2 +- .../{projectService.js => productService.js} | 14 +++--- .../detail/service/featureProposals.html | 4 +- app/views/management/services.html | 4 +- app/views/modals/addServiceModal.html | 8 ++-- app/views/modals/editServiceModal.html | 10 ++--- tests/mocks/models/mockFeatureProposal.js | 6 +-- tests/mocks/models/mockIdea.js | 6 +-- tests/mocks/models/mockNote.js | 6 +-- tests/mocks/models/mockProducts.js | 45 +++++++++++++++++++ tests/mocks/models/mockProjects.js | 45 ------------------- tests/mocks/models/mockService.js | 8 ++-- tests/mocks/repo/mockFeatureProposalRepo.js | 6 +-- tests/mocks/repo/mockIdeaRepo.js | 6 +-- tests/mocks/repo/mockNoteRepo.js | 6 +-- tests/mocks/repo/mockServiceRepo.js | 6 +-- ...rojectService.js => mockProductService.js} | 2 +- tests/mocks/services/mockWsApi.js | 10 ++--- .../featureProposalControllerTest.js | 6 +-- ...featureProposalManagementControllerTest.js | 6 +-- tests/unit/controllers/ideaControllerTest.js | 6 +-- .../ideaManagementControllerTest.js | 6 +-- .../unit/controllers/serviceControllerTest.js | 36 +++++++-------- ...DetailFeatureProposalListControllerTest.js | 6 +-- ...FeatureProposalManagementControllerTest.js | 6 +-- ...rviceDetailIdeaManagementControllerTest.js | 6 +-- tests/unit/service/productServiceTest.js | 42 +++++++++++++++++ tests/unit/service/projectServiceTest.js | 42 ----------------- 32 files changed, 200 insertions(+), 200 deletions(-) rename app/services/{projectService.js => productService.js} (73%) create mode 100644 tests/mocks/models/mockProducts.js delete mode 100644 tests/mocks/models/mockProjects.js rename tests/mocks/services/{mockProjectService.js => mockProductService.js} (97%) create mode 100644 tests/unit/service/productServiceTest.js delete mode 100644 tests/unit/service/projectServiceTest.js diff --git a/app/config/apiMapping.js b/app/config/apiMapping.js index 870eeb84..9f639b3d 100644 --- a/app/config/apiMapping.js +++ b/app/config/apiMapping.js @@ -316,18 +316,18 @@ var apiMapping = { 'method': 'remove' } }, - Project: { + Product: { all: { 'endpoint': '/private/queue', - 'controller': 'projects' + 'controller': 'products' }, getById: { 'endpoint': '/private/queue', - 'controller': 'projects' + 'controller': 'products' }, submitFeatureProposal: { 'endpoint': '/private/queue', - 'controller': 'projects', + 'controller': 'products', 'method': 'feature' } } diff --git a/app/constants/featureProposalState.js b/app/constants/featureProposalState.js index 70128021..6e0d4973 100644 --- a/app/constants/featureProposalState.js +++ b/app/constants/featureProposalState.js @@ -12,16 +12,16 @@ app.constant("FeatureProposalState", { SUBMITTED: { gloss: "Submitted", value: "SUBMITTED", - summary: "Sent off to project management API." + summary: "Sent off to product management API." }, ON_HOLD: { gloss: "On Hold", value: "ON_HOLD", - summary: "Closed for voting, but not sent to project management API. \"There may be hope\"." + summary: "Closed for voting, but not sent to product management API. \"There may be hope\"." }, REJECTED: { gloss: "Rejected", value: "REJECTED", summary: "Closed for voting, terminal state." } -}); \ No newline at end of file +}); diff --git a/app/controllers/featureProposalController.js b/app/controllers/featureProposalController.js index 5cf79e3b..b83ee3c5 100644 --- a/app/controllers/featureProposalController.js +++ b/app/controllers/featureProposalController.js @@ -1,4 +1,4 @@ -app.controller('FeatureProposalController', function ($controller, $scope, Idea, IdeaState, FeatureProposalState, ProjectService) { +app.controller('FeatureProposalController', function ($controller, $scope, Idea, IdeaState, FeatureProposalState, ProductService) { angular.extend(this, $controller('AbstractIdeaController', { $scope: $scope @@ -67,7 +67,7 @@ app.controller('FeatureProposalController', function ($controller, $scope, Idea, $scope.submitFeatureProposal = function (fp) { $scope.submitting = true; - ProjectService.submitFeatureProposal(fp).then(function (res) { + ProductService.submitFeatureProposal(fp).then(function (res) { if (angular.fromJson(res.body).meta.status === 'SUCCESS') { $scope.submitting = false; $scope.resetFeatureProposals(); @@ -105,4 +105,4 @@ app.controller('FeatureProposalController', function ($controller, $scope, Idea, $scope.openModal('#addFpModal'); }; -}); \ No newline at end of file +}); diff --git a/app/controllers/serviceController.js b/app/controllers/serviceController.js index 7a989249..74e1a7c3 100644 --- a/app/controllers/serviceController.js +++ b/app/controllers/serviceController.js @@ -1,4 +1,4 @@ -app.controller('ServiceController', function ($controller, $scope, ProjectService, Service, ServiceRepo) { +app.controller('ServiceController', function ($controller, $scope, ProductService, Service, ServiceRepo) { angular.extend(this, $controller('AbstractScheduleController', { $scope: $scope @@ -53,7 +53,7 @@ app.controller('ServiceController', function ($controller, $scope, ProjectServic sortable: true }, { - gloss: 'Project', + gloss: 'Product', filterable: false, sortable: false }, @@ -70,20 +70,20 @@ app.controller('ServiceController', function ($controller, $scope, ProjectServic }; }); - ProjectService.getAll().then(function (projects) { - $scope.projects = projects; + ProductService.getAll().then(function (products) { + $scope.products = products; - $scope.getProject = function (service) { - if (service.projectId && !service.project) { - service.project = {}; - ProjectService.getById(service.projectId).then(function (project) { + $scope.getProduct = function (service) { + if (service.productId && !service.product) { + service.product = {}; + ProductService.getById(service.productId).then(function (product) { angular.extend(service, { - project: project + product: product }); }); - return service.project; + return service.product; } - return service.project; + return service.product; }; }); @@ -177,4 +177,4 @@ app.controller('ServiceController', function ($controller, $scope, ProjectServic toolbar: "undo redo | formatselect bold italic separator | alignleft aligncenter alignright | bullist numlist | forecolor backcolor" }; -}); \ No newline at end of file +}); diff --git a/app/index.html b/app/index.html index 45f6e3bf..9ea3f043 100644 --- a/app/index.html +++ b/app/index.html @@ -256,7 +256,7 @@ - + diff --git a/app/services/projectService.js b/app/services/productService.js similarity index 73% rename from app/services/projectService.js rename to app/services/productService.js index aa140516..c82b948a 100644 --- a/app/services/projectService.js +++ b/app/services/productService.js @@ -1,8 +1,8 @@ -app.service('ProjectService', function ($q, WsApi) { +app.service('ProductService', function ($q, WsApi) { this.getAll = function (force) { return $q(function (resolve, reject) { - WsApi.fetch(apiMapping.Project.all).then(function (response) { + WsApi.fetch(apiMapping.Product.all).then(function (response) { var apiRes = angular.fromJson(response.body); if (apiRes.meta.status === 'SUCCESS') { resolve(apiRes.payload['ArrayList']); @@ -14,14 +14,14 @@ app.service('ProjectService', function ($q, WsApi) { }; this.getById = function (id) { - angular.extend(apiMapping.Project.getById, { + angular.extend(apiMapping.Product.getById, { 'method': id }); return $q(function (resolve, reject) { - WsApi.fetch(apiMapping.Project.getById).then(function (response) { + WsApi.fetch(apiMapping.Product.getById).then(function (response) { var apiRes = angular.fromJson(response.body); if (apiRes.meta.status === 'SUCCESS') { - resolve(apiRes.payload.Project); + resolve(apiRes.payload.Product); } else { reject(); } @@ -30,11 +30,11 @@ app.service('ProjectService', function ($q, WsApi) { }; this.submitFeatureProposal = function(fp) { - angular.extend(apiMapping.Project.submitFeatureProposal, { + angular.extend(apiMapping.Product.submitFeatureProposal, { 'data': fp }); return $q(function (resolve, reject) { - WsApi.fetch(apiMapping.Project.submitFeatureProposal).then(function (response) { + WsApi.fetch(apiMapping.Product.submitFeatureProposal).then(function (response) { var apiRes = angular.fromJson(response.body); if (apiRes.meta.status === 'SUCCESS') { resolve(); diff --git a/app/views/detail/service/featureProposals.html b/app/views/detail/service/featureProposals.html index 310ac545..4ee5c3ab 100644 --- a/app/views/detail/service/featureProposals.html +++ b/app/views/detail/service/featureProposals.html @@ -1,6 +1,6 @@
- +
@@ -40,4 +40,4 @@ -
\ No newline at end of file + diff --git a/app/views/management/services.html b/app/views/management/services.html index 83c5a21d..58204501 100644 --- a/app/views/management/services.html +++ b/app/views/management/services.html @@ -21,7 +21,7 @@ {{service.isAuto}} {{service.isPublic}} {{service.onShortList}} - {{getProject(service).name}} + {{getProduct(service).name}} @@ -40,4 +40,4 @@ - \ No newline at end of file + diff --git a/app/views/modals/addServiceModal.html b/app/views/modals/addServiceModal.html index 5aba3839..193307a3 100644 --- a/app/views/modals/addServiceModal.html +++ b/app/views/modals/addServiceModal.html @@ -17,11 +17,11 @@
- +
- - +
@@ -40,4 +40,4 @@ - \ No newline at end of file + diff --git a/app/views/modals/editServiceModal.html b/app/views/modals/editServiceModal.html index 26a7bae7..5e26a2e5 100644 --- a/app/views/modals/editServiceModal.html +++ b/app/views/modals/editServiceModal.html @@ -16,11 +16,11 @@
- +
- + +
@@ -40,4 +40,4 @@ - \ No newline at end of file + diff --git a/tests/mocks/models/mockFeatureProposal.js b/tests/mocks/models/mockFeatureProposal.js index 7652db93..5e499c34 100644 --- a/tests/mocks/models/mockFeatureProposal.js +++ b/tests/mocks/models/mockFeatureProposal.js @@ -29,7 +29,7 @@ var mockFeatureProposal1 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "IN_PROGRESS", @@ -67,7 +67,7 @@ var mockFeatureProposal2 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "SUBMITTED", @@ -105,7 +105,7 @@ var mockFeatureProposal3 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "REJECTED", diff --git a/tests/mocks/models/mockIdea.js b/tests/mocks/models/mockIdea.js index 73b1202e..55c11764 100644 --- a/tests/mocks/models/mockIdea.js +++ b/tests/mocks/models/mockIdea.js @@ -27,7 +27,7 @@ var mockIdea1 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "WAITING_ON_REVIEW", @@ -63,7 +63,7 @@ var mockIdea2 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "WAITING_ON_REVIEW", @@ -99,7 +99,7 @@ var mockIdea3 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "WAITING_ON_REVIEW", diff --git a/tests/mocks/models/mockNote.js b/tests/mocks/models/mockNote.js index 05620526..a3c2e403 100644 --- a/tests/mocks/models/mockNote.js +++ b/tests/mocks/models/mockNote.js @@ -30,7 +30,7 @@ var mockNote1 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "title": "Jack's Note", @@ -69,7 +69,7 @@ var mockNote2 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "title": "Jill's Note", @@ -109,7 +109,7 @@ var mockNote3 = { "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "title": "Jacob's Note", diff --git a/tests/mocks/models/mockProducts.js b/tests/mocks/models/mockProducts.js new file mode 100644 index 00000000..b2007793 --- /dev/null +++ b/tests/mocks/models/mockProducts.js @@ -0,0 +1,45 @@ +var mockProducts = [{ + "id": 1, + "name": "Product 1" + }, + { + "id": 2, + "name": "Product 2" + }, + { + "id": 3, + "name": "Product 3" + }, + { + "id": 4, + "name": "Product 4" + }, + { + "id": 5, + "name": "Product 5" + }, + { + "id": 6, + "name": "Product 6" + }, + { + "id": 7, + "name": "Product 7" + }, + { + "id": 8, + "name": "Product 8" + }, + { + "id": 9, + "name": "Product 9" + }, + { + "id": 10, + "name": "Product 10" + } +]; + +angular.module('mock.products', []).service('Products', function () { + return mockProducts; +}); diff --git a/tests/mocks/models/mockProjects.js b/tests/mocks/models/mockProjects.js deleted file mode 100644 index 5c3addb2..00000000 --- a/tests/mocks/models/mockProjects.js +++ /dev/null @@ -1,45 +0,0 @@ -var mockProjects = [{ - "id": 1, - "name": "Project 1" - }, - { - "id": 2, - "name": "Project 2" - }, - { - "id": 3, - "name": "Project 3" - }, - { - "id": 4, - "name": "Project 4" - }, - { - "id": 5, - "name": "Project 5" - }, - { - "id": 6, - "name": "Project 6" - }, - { - "id": 7, - "name": "Project 7" - }, - { - "id": 8, - "name": "Project 8" - }, - { - "id": 9, - "name": "Project 9" - }, - { - "id": 10, - "name": "Project 10" - } -]; - -angular.module('mock.projects', []).service('Projects', function () { - return mockProjects; -}); diff --git a/tests/mocks/models/mockService.js b/tests/mocks/models/mockService.js index 03bfd1d9..6d2adfeb 100644 --- a/tests/mocks/models/mockService.js +++ b/tests/mocks/models/mockService.js @@ -14,7 +14,7 @@ var mockService1 = { "onShortList": false, "serviceUrl": null, "description": "

Hello, Test 1!

", - "projectId": null, + "productId": null, "type": "service", "website": "https://example.tamu.edu/" }; @@ -35,7 +35,7 @@ var mockService2 = { "onShortList": true, "serviceUrl": null, "description": "

Hello, Test 2!

", - "projectId": null, + "productId": null, "type": "service", "website": "http://example.tamu.edu/" }; @@ -56,7 +56,7 @@ var mockService3 = { "onShortList": true, "serviceUrl": null, "description": "

Hello, Test 3!

", - "projectId": 1, + "productId": 1, "type": "service", "website": null }; @@ -78,7 +78,7 @@ angular.module('mock.service', []).service('Service', function ($q) { this.onShortList = toMock.onShortList; this.serviceUrl = toMock.serviceUrl; this.description = toMock.description; - this.projectId = toMock.projectId; + this.productId = toMock.productId; this.type = toMock.type; this.website = toMock.website; }; diff --git a/tests/mocks/repo/mockFeatureProposalRepo.js b/tests/mocks/repo/mockFeatureProposalRepo.js index 6caeaca7..073d334a 100644 --- a/tests/mocks/repo/mockFeatureProposalRepo.js +++ b/tests/mocks/repo/mockFeatureProposalRepo.js @@ -28,7 +28,7 @@ var mockFeatureProposals = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "IN_PROGRESS", @@ -63,7 +63,7 @@ var mockFeatureProposals = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "SUBMITTED", @@ -98,7 +98,7 @@ var mockFeatureProposals = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "REJECTED", diff --git a/tests/mocks/repo/mockIdeaRepo.js b/tests/mocks/repo/mockIdeaRepo.js index b7f629fc..0e2c7588 100644 --- a/tests/mocks/repo/mockIdeaRepo.js +++ b/tests/mocks/repo/mockIdeaRepo.js @@ -28,7 +28,7 @@ var mockIdeas = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "WAITING_ON_REVIEW", @@ -63,7 +63,7 @@ var mockIdeas = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "WAITING_ON_REVIEW", @@ -98,7 +98,7 @@ var mockIdeas = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "state": "WAITING_ON_REVIEW", diff --git a/tests/mocks/repo/mockNoteRepo.js b/tests/mocks/repo/mockNoteRepo.js index 30cdc7d0..e1bb9c76 100644 --- a/tests/mocks/repo/mockNoteRepo.js +++ b/tests/mocks/repo/mockNoteRepo.js @@ -31,7 +31,7 @@ var mockNotes = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "title": "Jack's Note", @@ -69,7 +69,7 @@ var mockNotes = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "title": "Jill's Note", @@ -108,7 +108,7 @@ var mockNotes = [ "description": "Repository agnostic curation", "website": "cap.library.tamu.edu", "software": "Tomcat", - "projectId": 1, + "productId": 1, "type": "service" }, "title": "Jacob's Note", diff --git a/tests/mocks/repo/mockServiceRepo.js b/tests/mocks/repo/mockServiceRepo.js index 0757ea3b..e526e55a 100644 --- a/tests/mocks/repo/mockServiceRepo.js +++ b/tests/mocks/repo/mockServiceRepo.js @@ -15,7 +15,7 @@ var mockServices = [ "onShortList": false, "serviceUrl": null, "description": "

Hello, Test 1!

", - "projectId": null, + "productId": null, "type": "service", "website": "https://example.tamu.edu/" }, @@ -35,7 +35,7 @@ var mockServices = [ "onShortList": true, "serviceUrl": null, "description": "

Hello, Test 2!

", - "projectId": null, + "productId": null, "type": "service", "website": "http://example.tamu.edu/" }, @@ -55,7 +55,7 @@ var mockServices = [ "onShortList": true, "serviceUrl": null, "description": "

Hello, Test 3!

", - "projectId": null, + "productId": null, "type": "service", "website": null } diff --git a/tests/mocks/services/mockProjectService.js b/tests/mocks/services/mockProductService.js similarity index 97% rename from tests/mocks/services/mockProjectService.js rename to tests/mocks/services/mockProductService.js index ef95624c..a0c58494 100644 --- a/tests/mocks/services/mockProjectService.js +++ b/tests/mocks/services/mockProductService.js @@ -1,4 +1,4 @@ -angular.module('mock.projectService', []).service('ProjectService', function ($q) { +angular.module('mock.productService', []).service('ProductService', function ($q) { var defer; diff --git a/tests/mocks/services/mockWsApi.js b/tests/mocks/services/mockWsApi.js index fa50dc3b..0a15e755 100644 --- a/tests/mocks/services/mockWsApi.js +++ b/tests/mocks/services/mockWsApi.js @@ -27,7 +27,7 @@ angular.module('mock.wsApi', []).service('WsApi', function ($q) { this.fetch = function (apiReq) { defer = $q.defer(); switch (apiReq.controller) { - case 'projects': + case 'products': if (isNaN(apiReq.method)) { switch (apiReq.method) { case 'feature': @@ -38,15 +38,15 @@ angular.module('mock.wsApi', []).service('WsApi', function ($q) { break; default: payloadResponse({ - 'ArrayList': mockProjects + 'ArrayList': mockProducts }); } } else { var id = apiReq.method; - for (var i in mockProjects) { - if (mockProjects[i].id == id) { + for (var i in mockProducts) { + if (mockProducts[i].id == id) { payloadResponse({ - 'Project': mockProjects[i] + 'Product': mockProducts[i] }); break; } diff --git a/tests/unit/controllers/featureProposalControllerTest.js b/tests/unit/controllers/featureProposalControllerTest.js index 0fac826c..d670521b 100644 --- a/tests/unit/controllers/featureProposalControllerTest.js +++ b/tests/unit/controllers/featureProposalControllerTest.js @@ -9,10 +9,10 @@ describe('controller: FeatureProposalController', function () { module('mock.featureProposalRepo'); module('mock.idea'); module('mock.ideaRepo'); - module('mock.projectService'); + module('mock.productService'); module('mock.serviceRepo'); - inject(function ($controller, $compile, $q, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProjectService_, _ServiceRepo_) { + inject(function ($controller, $compile, $q, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProductService_, _ServiceRepo_) { installPromiseMatchers(); compile = $compile; scope = $rootScope.$new(); @@ -26,7 +26,7 @@ describe('controller: FeatureProposalController', function () { Idea: _Idea_, IdeaRepo: _IdeaRepo_, IdeaState: IdeaState, - ProjectService: _ProjectService_, + ProductService: _ProductService_, ServiceRepo: _ServiceRepo_ }); diff --git a/tests/unit/controllers/featureProposalManagementControllerTest.js b/tests/unit/controllers/featureProposalManagementControllerTest.js index 018b487f..d4f17f5c 100644 --- a/tests/unit/controllers/featureProposalManagementControllerTest.js +++ b/tests/unit/controllers/featureProposalManagementControllerTest.js @@ -9,10 +9,10 @@ describe('controller: FeatureProposalManagementController', function () { module('mock.featureProposalRepo'); module('mock.idea'); module('mock.ideaRepo'); - module('mock.projectService'); + module('mock.productService'); module('mock.serviceRepo'); - inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProjectService_, _ServiceRepo_) { + inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProductService_, _ServiceRepo_) { installPromiseMatchers(); scope = $rootScope.$new(); @@ -24,7 +24,7 @@ describe('controller: FeatureProposalManagementController', function () { Idea: _Idea_, IdeaRepo: _IdeaRepo_, IdeaState: IdeaState, - ProjectService: _ProjectService_, + ProductService: _ProductService_, ServiceRepo: _ServiceRepo_ }); diff --git a/tests/unit/controllers/ideaControllerTest.js b/tests/unit/controllers/ideaControllerTest.js index 4521627d..a6824297 100644 --- a/tests/unit/controllers/ideaControllerTest.js +++ b/tests/unit/controllers/ideaControllerTest.js @@ -9,11 +9,11 @@ describe('controller: IdeaController', function () { module('mock.featureProposalRepo'); module('mock.idea'); module('mock.ideaRepo'); - module('mock.projectService'); + module('mock.productService'); module('mock.service'); module('mock.serviceRepo'); - inject(function ($controller, $q, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProjectService_, _Service_, _ServiceRepo_) { + inject(function ($controller, $q, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProductService_, _Service_, _ServiceRepo_) { installPromiseMatchers(); q = $q; scope = $rootScope.$new(); @@ -26,7 +26,7 @@ describe('controller: IdeaController', function () { Idea: _Idea_, IdeaRepo: _IdeaRepo_, IdeaState: IdeaState, - ProjectService: _ProjectService_, + ProductService: _ProductService_, ServiceRepo: _ServiceRepo_ }); diff --git a/tests/unit/controllers/ideaManagementControllerTest.js b/tests/unit/controllers/ideaManagementControllerTest.js index a2e6ae9f..0525feed 100644 --- a/tests/unit/controllers/ideaManagementControllerTest.js +++ b/tests/unit/controllers/ideaManagementControllerTest.js @@ -9,10 +9,10 @@ describe('controller: IdeaManagementController', function () { module('mock.featureProposalRepo'); module('mock.idea'); module('mock.ideaRepo'); - module('mock.projectService'); + module('mock.productService'); module('mock.serviceRepo'); - inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProjectService_, _ServiceRepo_) { + inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProductService_, _ServiceRepo_) { installPromiseMatchers(); scope = $rootScope.$new(); @@ -24,7 +24,7 @@ describe('controller: IdeaManagementController', function () { Idea: _Idea_, IdeaRepo: _IdeaRepo_, IdeaState: IdeaState, - ProjectService: _ProjectService_, + ProductService: _ProductService_, ServiceRepo: _ServiceRepo_ }); diff --git a/tests/unit/controllers/serviceControllerTest.js b/tests/unit/controllers/serviceControllerTest.js index 7c3cb868..22c63a79 100644 --- a/tests/unit/controllers/serviceControllerTest.js +++ b/tests/unit/controllers/serviceControllerTest.js @@ -1,30 +1,30 @@ describe('controller: ServiceController', function () { - var scope, q, controller, Projects, ProjectService, Service, ServiceRepo; + var scope, q, controller, Products, ProductService, Service, ServiceRepo; beforeEach(function () { module('core'); module('app'); - module('mock.projects'); - module('mock.projectService'); + module('mock.products'); + module('mock.productService'); module('mock.service'); module('mock.serviceRepo'); - inject(function ($controller, $q, $rootScope, _Projects_, _ProjectService_, _Service_, _ServiceRepo_) { + inject(function ($controller, $q, $rootScope, _Products_, _ProductService_, _Service_, _ServiceRepo_) { installPromiseMatchers(); q = $q; scope = $rootScope.$new(); controller = $controller('ServiceController', { $scope: scope, - Projects: _Projects_, - ProjectService: _ProjectService_, + Products: _Products_, + ProductService: _ProductService_, Service: _Service_, ServiceRepo: _ServiceRepo_ }); - Projects = _Projects_; - ProjectService = _ProjectService_; + Products = _Products_; + ProductService = _ProductService_; Service = _Service_; ServiceRepo = _ServiceRepo_; @@ -72,9 +72,9 @@ describe('controller: ServiceController', function () { expect(scope.deleteService).toBeDefined(); expect(typeof scope.deleteService).toEqual("function"); }); - it('getProject should be defined', function () { - expect(scope.getProject).toBeDefined(); - expect(typeof scope.getProject).toEqual("function"); + it('getProduct should be defined', function () { + expect(scope.getProduct).toBeDefined(); + expect(typeof scope.getProduct).toEqual("function"); }); }); @@ -177,19 +177,19 @@ describe('controller: ServiceController', function () { expect(scope.resetServices).toHaveBeenCalled(); }); - /* todo: ProjectService/Project needs proper mocks and so on. - it('getProject should reset services', function () { + /* todo: ProductService/Product needs proper mocks and so on. + it('getProduct should reset services', function () { var service = new Service(); - var project = new ProjectService(); + var product = new ProductService(); service.mock(mockService3); - project(mockProjectservice1); + product(mockProductservice1); - spyOn(ProjectService, 'getById'); + spyOn(ProductService, 'getById'); // todo: more work needed. - scope.getProject(service); + scope.getProduct(service); - expect(ProjectService.getById).toHaveBeenCalled(); + expect(ProductService.getById).toHaveBeenCalled(); }); */ }); diff --git a/tests/unit/controllers/serviceDetailFeatureProposalListControllerTest.js b/tests/unit/controllers/serviceDetailFeatureProposalListControllerTest.js index faabb656..cb4bf641 100644 --- a/tests/unit/controllers/serviceDetailFeatureProposalListControllerTest.js +++ b/tests/unit/controllers/serviceDetailFeatureProposalListControllerTest.js @@ -9,13 +9,13 @@ describe('controller: ServiceDetailFeatureProposalListController', function () { module('mock.featureProposalRepo'); module('mock.idea'); module('mock.ideaRepo'); - module('mock.projectService'); + module('mock.productService'); module('mock.service'); module('mock.serviceRepo'); module('mock.user'); module('mock.userRepo'); - inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProjectService_, _Service_, _ServiceRepo_, _User_, _UserRepo_) { + inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProductService_, _Service_, _ServiceRepo_, _User_, _UserRepo_) { installPromiseMatchers(); scope = $rootScope.$new(); @@ -30,7 +30,7 @@ describe('controller: ServiceDetailFeatureProposalListController', function () { Idea: _Idea_, IdeaRepo: _IdeaRepo_, IdeaState: IdeaState, - ProjectService: _ProjectService_, + ProductService: _ProductService_, ServiceRepo: _ServiceRepo_, User: _User_, UserRepo: _UserRepo_ diff --git a/tests/unit/controllers/serviceDetailFeatureProposalManagementControllerTest.js b/tests/unit/controllers/serviceDetailFeatureProposalManagementControllerTest.js index 0e5b5c37..1f388c58 100644 --- a/tests/unit/controllers/serviceDetailFeatureProposalManagementControllerTest.js +++ b/tests/unit/controllers/serviceDetailFeatureProposalManagementControllerTest.js @@ -9,11 +9,11 @@ describe('controller: ServiceDetailFeatureProposalManagementController', functio module('mock.featureProposalRepo'); module('mock.idea'); module('mock.ideaRepo'); - module('mock.projectService'); + module('mock.productService'); module('mock.service'); module('mock.serviceRepo'); - inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProjectService_, _Service_, _ServiceRepo_) { + inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProductService_, _Service_, _ServiceRepo_) { installPromiseMatchers(); scope = $rootScope.$new(); @@ -28,7 +28,7 @@ describe('controller: ServiceDetailFeatureProposalManagementController', functio Idea: _Idea_, IdeaRepo: _IdeaRepo_, IdeaState: IdeaState, - ProjectService: _ProjectService_, + ProductService: _ProductService_, ServiceRepo: _ServiceRepo_ }); diff --git a/tests/unit/controllers/serviceDetailIdeaManagementControllerTest.js b/tests/unit/controllers/serviceDetailIdeaManagementControllerTest.js index 990c9b65..6dcc3171 100644 --- a/tests/unit/controllers/serviceDetailIdeaManagementControllerTest.js +++ b/tests/unit/controllers/serviceDetailIdeaManagementControllerTest.js @@ -9,10 +9,10 @@ describe('controller: ServiceDetailIdeaManagementController', function () { module('mock.featureProposalRepo'); module('mock.idea'); module('mock.ideaRepo'); - module('mock.projectService'); + module('mock.productService'); module('mock.serviceRepo'); - inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProjectService_, _ServiceRepo_) { + inject(function ($controller, $rootScope, _FeatureProposal_, _FeatureProposalRepo_, FeatureProposalState, _Idea_, _IdeaRepo_, IdeaState, _ProductService_, _ServiceRepo_) { installPromiseMatchers(); scope = $rootScope.$new(); @@ -24,7 +24,7 @@ describe('controller: ServiceDetailIdeaManagementController', function () { Idea: _Idea_, IdeaRepo: _IdeaRepo_, IdeaState: IdeaState, - ProjectService: _ProjectService_, + ProductService: _ProductService_, ServiceRepo: _ServiceRepo_ }); diff --git a/tests/unit/service/productServiceTest.js b/tests/unit/service/productServiceTest.js new file mode 100644 index 00000000..261d7403 --- /dev/null +++ b/tests/unit/service/productServiceTest.js @@ -0,0 +1,42 @@ +describe('service: ProductService', function () { + + var WsApi, ProductService; + + beforeEach(function() { + module('core'); + module('app'); + module('mock.products'); + module('mock.wsApi'); + + inject(function ($q, _WsApi_, $injector) { + ProductService = $injector.get('ProductService'); + WsApi = _WsApi_; + installPromiseMatchers(); + }); + }); + + describe('Are the service methods defined', function () { + it('getAll should be defined', function () { + expect(ProductService.getAll).toBeDefined(); + expect(typeof ProductService.getAll).toEqual("function"); + }); + it('getById should be defined', function () { + expect(ProductService.getById).toBeDefined(); + expect(typeof ProductService.getById).toEqual("function"); + }); + }); + + describe('Do the service methods work as expected', function () { + it('getAll should return all mock products', function () { + expect(ProductService.getAll()).toBeResolvedWith(mockProducts); + }); + it('getById should return the correct product', function () { + expect(ProductService.getById(1)).toBeResolvedWith(mockProducts[0]); + expect(ProductService.getById(2)).toBeResolvedWith(mockProducts[1]); + expect(ProductService.getById(3)).toBeResolvedWith(mockProducts[2]); + expect(ProductService.getById(5)).toBeResolvedWith(mockProducts[4]); + expect(ProductService.getById(9)).toBeResolvedWith(mockProducts[8]); + }); + }); + +}); diff --git a/tests/unit/service/projectServiceTest.js b/tests/unit/service/projectServiceTest.js deleted file mode 100644 index 53818a4d..00000000 --- a/tests/unit/service/projectServiceTest.js +++ /dev/null @@ -1,42 +0,0 @@ -describe('service: ProjectService', function () { - - var WsApi, ProjectService; - - beforeEach(function() { - module('core'); - module('app'); - module('mock.projects'); - module('mock.wsApi'); - - inject(function ($q, _WsApi_, $injector) { - ProjectService = $injector.get('ProjectService'); - WsApi = _WsApi_; - installPromiseMatchers(); - }); - }); - - describe('Are the service methods defined', function () { - it('getAll should be defined', function () { - expect(ProjectService.getAll).toBeDefined(); - expect(typeof ProjectService.getAll).toEqual("function"); - }); - it('getById should be defined', function () { - expect(ProjectService.getById).toBeDefined(); - expect(typeof ProjectService.getById).toEqual("function"); - }); - }); - - describe('Do the service methods work as expected', function () { - it('getAll should return all mock projects', function () { - expect(ProjectService.getAll()).toBeResolvedWith(mockProjects); - }); - it('getById should return the correct project', function () { - expect(ProjectService.getById(1)).toBeResolvedWith(mockProjects[0]); - expect(ProjectService.getById(2)).toBeResolvedWith(mockProjects[1]); - expect(ProjectService.getById(3)).toBeResolvedWith(mockProjects[2]); - expect(ProjectService.getById(5)).toBeResolvedWith(mockProjects[4]); - expect(ProjectService.getById(9)).toBeResolvedWith(mockProjects[8]); - }); - }); - -});