Просмотр исходного кода

Verify poll exists before put, add tests

vvmk 8 лет назад
Родитель
Сommit
d1ab84ccd4

+ 1
- 4
src/main/java/io/zipcoder/tc_spring_poll_application/controllers/PollController.java Просмотреть файл

@@ -70,10 +70,7 @@ public class PollController {
70 70
 
71 71
     @RequestMapping(value = "/polls/{pollId}", method = RequestMethod.PUT)
72 72
     public ResponseEntity<Poll> updatePoll(@RequestBody Poll poll, @PathVariable Long pollId) {
73
-        //TODO: check ids
74
-        //if (pollId != poll.getId())
75
-        //return BAD_REQUEST
76
-
73
+        verifyPoll(pollId);
77 74
         return new ResponseEntity<>(pollRepository.save(poll), HttpStatus.OK);
78 75
     }
79 76
 

+ 13
- 4
src/test/java/io/zipcoder/tc_spring_poll_application/controllers/PollControllerTest.java Просмотреть файл

@@ -38,6 +38,8 @@ public class PollControllerTest {
38 38
     private PollRepository pollRepo;
39 39
 
40 40
     private List<Poll> polls = new ArrayList<>();
41
+    private Long exists = 10L;
42
+    private Long dne = 999L;
41 43
 
42 44
     @Before
43 45
     public void setup() {
@@ -114,14 +116,22 @@ public class PollControllerTest {
114 116
     }
115 117
 
116 118
     @Test
117
-    public void updatesPoll() {
119
+    public void updatesPollExists() {
118 120
         HttpStatus expected = HttpStatus.OK;
119
-        HttpStatus actual = pollCtrl.updatePoll(mock(Poll.class), anyLong()).getStatusCode();
121
+        HttpStatus actual = pollCtrl.updatePoll(mock(Poll.class), exists).getStatusCode();
120 122
 
121 123
         verify(pollRepo).save(any(Poll.class));
122 124
         assertEquals(expected, actual);
123 125
     }
124 126
 
127
+    @Test(expected = ResourceNotFoundException.class)
128
+    public void updatePollFails404() {
129
+        HttpStatus expected = HttpStatus.OK;
130
+        HttpStatus actual = pollCtrl.updatePoll(mock(Poll.class), dne).getStatusCode();
131
+
132
+        verify(pollRepo).save(any(Poll.class));
133
+    }
134
+
125 135
     @Test
126 136
     public void deletePoll() {
127 137
         HttpStatus expected = HttpStatus.OK;
@@ -134,7 +144,6 @@ public class PollControllerTest {
134 144
     @Test
135 145
     public void testVerifyPoll() {
136 146
 
137
-        Long exists = 10L;
138 147
 
139 148
         try {
140 149
             pollCtrl.verifyPoll(exists);
@@ -145,6 +154,6 @@ public class PollControllerTest {
145 154
 
146 155
     @Test(expected = ResourceNotFoundException.class)
147 156
     public void testVerifyPollNotFound() {
148
-        pollCtrl.verifyPoll(999L);
157
+        pollCtrl.verifyPoll(dne);
149 158
     }
150 159
 }