Skip to content

Commit

Permalink
MAT-6487 updated code to take incorrect version number
Browse files Browse the repository at this point in the history
  • Loading branch information
sb-prateekkeerthi committed Sep 17, 2024
1 parent dcc05de commit b3262ce
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -178,11 +178,13 @@ public ResponseEntity<Measure> correctMeasureVersion(
@Value("${admin-api-key}") String apiKey,
Principal principal,
@PathVariable String id,
@RequestParam String inCorrectVersion,
@RequestParam String correctVersion,
@RequestParam String draftVersion) {

Measure measureToCorrectVersion = measureService.findMeasureById(id);
if (measureToCorrectVersion == null) {
if (measureToCorrectVersion == null
|| !measureToCorrectVersion.getVersion().toString().equals(inCorrectVersion)) {
throw new ResourceNotFoundException("Measure", id);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -424,17 +424,24 @@ public void testAdminMeasureChangeVersionThrowsWhenMeasureNotFound() throws Exce
.with(user(TEST_USER_ID))
.queryParam("correctVersion", "2.0.000")
.queryParam("draftVersion", "1.0.000")
.queryParam("inCorrectVersion", "3.0.000")
.header(ADMIN_TEST_API_KEY_HEADER, ADMIN_TEST_API_KEY_HEADER_VALUE)
.header("Authorization", "test-okta"))
.andExpect(status().isNotFound());
verify(measureService, times(1)).findMeasureById(anyString());
}

@Test
public void testAdminMeasureChangeVersionThrowsIfAssociatedMeasureSetAlreadyHasDraft()
throws Exception {
Measure testMsr = Measure.builder().id("12345").measureSetId("ms-123").build();
when(measureService.findMeasureById(anyString()))
.thenReturn(Measure.builder().id("123456").measureSetId("ms-123").build());
.thenReturn(
Measure.builder()
.id("123456")
.measureSetId("ms-123")
.version(Version.builder().major(3).minor(0).revisionNumber(0).build())
.build());
doReturn(List.of(testMsr))
.when(measureRepository)
.findAllByMeasureSetIdInAndActiveAndMeasureMetaDataDraft(List.of("ms-123"), true, true);
Expand All @@ -446,16 +453,23 @@ public void testAdminMeasureChangeVersionThrowsIfAssociatedMeasureSetAlreadyHasD
.with(user(TEST_USER_ID))
.queryParam("correctVersion", "2.0.000")
.queryParam("draftVersion", "1.0.000")
.queryParam("inCorrectVersion", "3.0.000")
.header(ADMIN_TEST_API_KEY_HEADER, ADMIN_TEST_API_KEY_HEADER_VALUE)
.header("Authorization", "test-okta"))
.andExpect(status().isBadRequest());
verify(measureService, times(1)).findMeasureById(anyString());
}

@Test
public void testAdminMeasureChangeVersionThrowsWhenDraftVersionIsGreaterThanCorrectVersion()
throws Exception {
when(measureService.findMeasureById(anyString()))
.thenReturn(Measure.builder().id("123456").measureSetId("ms-123").build());
.thenReturn(
Measure.builder()
.id("123456")
.measureSetId("ms-123")
.version(Version.builder().major(3).minor(0).revisionNumber(0).build())
.build());
doReturn(null)
.when(measureRepository)
.findAllByMeasureSetIdInAndActiveAndMeasureMetaDataDraft(List.of("ms-123"), true, true);
Expand All @@ -467,9 +481,12 @@ public void testAdminMeasureChangeVersionThrowsWhenDraftVersionIsGreaterThanCorr
.with(user(TEST_USER_ID))
.queryParam("correctVersion", "2.0.000")
.queryParam("draftVersion", "3.0.000")
.queryParam("inCorrectVersion", "3.0.000")
.header(ADMIN_TEST_API_KEY_HEADER, ADMIN_TEST_API_KEY_HEADER_VALUE)
.header("Authorization", "test-okta"))
.andExpect(status().isBadRequest());

verify(measureService, times(1)).findMeasureById(anyString());
}

@Test
Expand All @@ -478,7 +495,12 @@ public void testAdminMeasureChangeVersionThrowsWhenGivenVersionIsAlreadyAssociat
Version version = Version.builder().major(2).minor(0).revisionNumber(0).build();
Measure testMsr = Measure.builder().id("12345").measureSetId("ms-123").version(version).build();
when(measureService.findMeasureById(anyString()))
.thenReturn(Measure.builder().id("123456").measureSetId("ms-123").build());
.thenReturn(
Measure.builder()
.id("123456")
.measureSetId("ms-123")
.version(Version.builder().major(3).minor(0).revisionNumber(0).build())
.build());
doReturn(null)
.when(measureRepository)
.findAllByMeasureSetIdInAndActiveAndMeasureMetaDataDraft(List.of("ms-123"), true, true);
Expand All @@ -493,9 +515,12 @@ public void testAdminMeasureChangeVersionThrowsWhenGivenVersionIsAlreadyAssociat
.with(user(TEST_USER_ID))
.queryParam("correctVersion", "2.0.000")
.queryParam("draftVersion", "1.0.000")
.queryParam("inCorrectVersion", "3.0.000")
.header(ADMIN_TEST_API_KEY_HEADER, ADMIN_TEST_API_KEY_HEADER_VALUE)
.header("Authorization", "test-okta"))
.andExpect(status().isConflict());
verify(measureRepository, times(1))
.findAllByMeasureSetIdInAndActiveAndMeasureMetaDataDraft(List.of("ms-123"), true, true);
}

@Test
Expand Down Expand Up @@ -540,8 +565,13 @@ public void testAdminMeasureChangeVersionSuccessfully() throws Exception {
.with(user(TEST_USER_ID))
.queryParam("correctVersion", "2.0.000")
.queryParam("draftVersion", "1.0.000")
.queryParam("inCorrectVersion", "3.0.000")
.header(ADMIN_TEST_API_KEY_HEADER, ADMIN_TEST_API_KEY_HEADER_VALUE)
.header("Authorization", "test-okta"))
.andExpect(status().isOk());

verify(measureRepository, times(1))
.findAllByMeasureSetIdInAndActiveAndMeasureMetaDataDraft(List.of("ms-123"), true, true);
verify(measureRepository, times(1)).findAllByMeasureSetIdAndActive("ms-123", true);
}
}

0 comments on commit b3262ce

Please sign in to comment.