Browse Source

Verify poll exists before put, add tests

vvmk 8 years ago
parent
commit
d1ab84ccd4

+ 1
- 4
src/main/java/io/zipcoder/tc_spring_poll_application/controllers/PollController.java View File

70
 
70
 
71
     @RequestMapping(value = "/polls/{pollId}", method = RequestMethod.PUT)
71
     @RequestMapping(value = "/polls/{pollId}", method = RequestMethod.PUT)
72
     public ResponseEntity<Poll> updatePoll(@RequestBody Poll poll, @PathVariable Long pollId) {
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
         return new ResponseEntity<>(pollRepository.save(poll), HttpStatus.OK);
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 View File

38
     private PollRepository pollRepo;
38
     private PollRepository pollRepo;
39
 
39
 
40
     private List<Poll> polls = new ArrayList<>();
40
     private List<Poll> polls = new ArrayList<>();
41
+    private Long exists = 10L;
42
+    private Long dne = 999L;
41
 
43
 
42
     @Before
44
     @Before
43
     public void setup() {
45
     public void setup() {
114
     }
116
     }
115
 
117
 
116
     @Test
118
     @Test
117
-    public void updatesPoll() {
119
+    public void updatesPollExists() {
118
         HttpStatus expected = HttpStatus.OK;
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
         verify(pollRepo).save(any(Poll.class));
123
         verify(pollRepo).save(any(Poll.class));
122
         assertEquals(expected, actual);
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
     @Test
135
     @Test
126
     public void deletePoll() {
136
     public void deletePoll() {
127
         HttpStatus expected = HttpStatus.OK;
137
         HttpStatus expected = HttpStatus.OK;
134
     @Test
144
     @Test
135
     public void testVerifyPoll() {
145
     public void testVerifyPoll() {
136
 
146
 
137
-        Long exists = 10L;
138
 
147
 
139
         try {
148
         try {
140
             pollCtrl.verifyPoll(exists);
149
             pollCtrl.verifyPoll(exists);
145
 
154
 
146
     @Test(expected = ResourceNotFoundException.class)
155
     @Test(expected = ResourceNotFoundException.class)
147
     public void testVerifyPollNotFound() {
156
     public void testVerifyPollNotFound() {
148
-        pollCtrl.verifyPoll(999L);
157
+        pollCtrl.verifyPoll(dne);
149
     }
158
     }
150
 }
159
 }