Skip to content

Commit 8c8f86d

Browse files
tobiasakeemichaf
authored andcommitted
Fix updateSubscription RestApi issue that prevented subscription to b… (#11)
* Fix updateSubscription RestApi issue that prevented subscription to be updated. * Changed name on isDuplicateSubscriptions functions to doSubscriptionExist. Fixed impacted unit test due to this change.
1 parent 3ed9200 commit 8c8f86d

File tree

5 files changed

+16
-16
lines changed

5 files changed

+16
-16
lines changed

src/main/java/com/ericsson/ei/controller/SubscriptionControllerImpl.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public class SubscriptionControllerImpl implements SubscriptionController {
4444
@ApiOperation(value = "Creates the subscription")
4545
public ResponseEntity<SubscriptionResponse> createSubscription(@RequestBody Subscription subscription) {
4646
SubscriptionResponse subscriptionResponse = new SubscriptionResponse();
47-
if (!subscriptionService.isDuplicatedSubscription(subscription.getSubscriptionName())) {
47+
if (!subscriptionService.doSubscriptionExist(subscription.getSubscriptionName())) {
4848
subscriptionService.addSubscription(subscription);
4949
LOG.info("Subscription :" + subscription.getSubscriptionName() + " Inserted Successfully");
5050
subscriptionResponse.setMsg("Inserted Successfully"); subscriptionResponse.setStatusCode(HttpStatus.OK.value());
@@ -80,15 +80,15 @@ public ResponseEntity<Subscription> getSubscriptionById(@PathVariable String sub
8080
public ResponseEntity<SubscriptionResponse> updateSubscriptionById(@PathVariable String subscriptionName, @RequestBody Subscription subscription) {
8181
LOG.info("Subscription :" + subscriptionName + " update started");
8282
SubscriptionResponse subscriptionResponse = new SubscriptionResponse();
83-
if (!subscriptionService.isDuplicatedSubscription(subscription.getSubscriptionName())) {
83+
if (subscriptionService.doSubscriptionExist(subscription.getSubscriptionName())) {
8484
subscriptionService.modifySubscription(subscription, subscriptionName);
8585
LOG.info("Subscription :" + subscriptionName + " update completed");
8686
subscriptionResponse.setMsg("Updated Successfully"); subscriptionResponse.setStatusCode(HttpStatus.OK.value());
8787
return new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.OK);
8888

8989
} else {
90-
LOG.error("Subscription :" + subscription.getSubscriptionName() + " identified as duplicate subscription");
91-
subscriptionResponse.setMsg("Duplicate Subscription"); subscriptionResponse.setStatusCode(HttpStatus.BAD_REQUEST.value());
90+
LOG.error("Subscription :" + subscription.getSubscriptionName() + " can't be found.");
91+
subscriptionResponse.setMsg("Subscription can't be found"); subscriptionResponse.setStatusCode(HttpStatus.BAD_REQUEST.value());
9292
return new ResponseEntity<SubscriptionResponse>(subscriptionResponse, HttpStatus.BAD_REQUEST);
9393
}
9494

src/main/java/com/ericsson/ei/services/ISubscriptionService.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,11 +47,11 @@ public interface ISubscriptionService {
4747
boolean deleteSubscription(String name);
4848

4949
/**
50-
* isDuplicatedSubscription method checks the is there any Subscription By Subscription Name
50+
* doSubscriptionExist method checks the is there any Subscription By Subscription Name
5151
* @param name
5252
* @return true when Subscription available with same name. Otherwise returns false.
5353
*/
54-
boolean isDuplicatedSubscription(String name);
54+
boolean doSubscriptionExist(String name);
5555

5656

5757
}

src/main/java/com/ericsson/ei/services/SubscriptionService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public Subscription getSubscription(String name) throws SubscriptionNotFoundExce
5656
}
5757

5858
@Override
59-
public boolean isDuplicatedSubscription(String name) {
59+
public boolean doSubscriptionExist(String name) {
6060
String query = String.format(SUBSCRIPTION_NAME, name);
6161
ArrayList<String> list = subscriptionRepository.getSubscription(query);
6262
if (list.isEmpty()) {

src/test/java/com/ericsson/ei/subscription/SubscriptionRestAPITest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public static void setMongoDB() throws IOException, JSONException {
5050

5151
@Test
5252
public void addSubscription() throws Exception {
53-
Mockito.when(subscriptionService.isDuplicatedSubscription(Mockito.anyString())).thenReturn(false);
53+
Mockito.when(subscriptionService.doSubscriptionExist(Mockito.anyString())).thenReturn(false);
5454
Mockito.when(subscriptionService.addSubscription(Mockito.any(Subscription.class))).thenReturn(false);
5555
// Send subscription as body to /subscriptions
5656
RequestBuilder requestBuilder = MockMvcRequestBuilders.post("/subscriptions").accept(MediaType.APPLICATION_JSON)
@@ -66,7 +66,7 @@ public void addSubscription() throws Exception {
6666

6767
@Test
6868
public void updateSubscription() throws Exception {
69-
Mockito.when(subscriptionService.isDuplicatedSubscription(Mockito.anyString())).thenReturn(false);
69+
Mockito.when(subscriptionService.doSubscriptionExist(Mockito.anyString())).thenReturn(true);
7070
Mockito.when(subscriptionService.modifySubscription(Mockito.any(Subscription.class), Mockito.anyString()))
7171
.thenReturn(false);
7272
// Send subscription as body to /subscriptions
@@ -83,8 +83,8 @@ public void updateSubscription() throws Exception {
8383
}
8484

8585
@Test
86-
public void updateSubscriptionDulicate() throws Exception {
87-
Mockito.when(subscriptionService.isDuplicatedSubscription(Mockito.anyString())).thenReturn(true);
86+
public void updateSubscriptionFailWhenSubscriptionDoNotExist() throws Exception {
87+
Mockito.when(subscriptionService.doSubscriptionExist(Mockito.anyString())).thenReturn(false);
8888
// Send subscription as body to /subscriptions
8989
RequestBuilder requestBuilder = MockMvcRequestBuilders.put("/subscriptions/Subscription_Test")
9090
.accept(MediaType.APPLICATION_JSON).content(jsonArray.getJSONObject(0).toString())
@@ -95,7 +95,7 @@ public void updateSubscriptionDulicate() throws Exception {
9595
SubscriptionResponse subscriptionResponse = mapper
9696
.readValue(result.getResponse().getContentAsString().toString(), SubscriptionResponse.class);
9797
assertEquals(HttpStatus.BAD_REQUEST.value(), result.getResponse().getStatus());
98-
assertEquals("Duplicate Subscription", subscriptionResponse.getMsg());
98+
assertEquals("Subscription can't be found", subscriptionResponse.getMsg());
9999
}
100100

101101
@Test

src/test/java/com/ericsson/ei/subscription/SubscriptionServiceTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,16 +158,16 @@ public void testGetSubscriptionsByName() {
158158
}
159159

160160
@Test
161-
public void testIsDuplicatedSubscription() {
162-
boolean isDuplicatedSubscription;
161+
public void testdoSubscriptionExist() {
162+
boolean doSubscriptionExist;
163163
try {
164164
// Insert Subscription
165165
Subscription subscription2 = mapper.readValue(jsonArray.getJSONObject(0).toString(), Subscription.class);
166166
subscriptionService.addSubscription(subscription2);
167167

168168
subscriptionName = subscription2.getSubscriptionName();
169-
isDuplicatedSubscription = subscriptionService.isDuplicatedSubscription(subscriptionName);
170-
assertEquals(isDuplicatedSubscription, true);
169+
doSubscriptionExist = subscriptionService.doSubscriptionExist(subscriptionName);
170+
assertEquals(doSubscriptionExist, true);
171171
// deleting the test data
172172
deleteSubscriptionsByName(subscriptionName);
173173
} catch (IOException | JSONException e) {

0 commit comments

Comments
 (0)