Skip to content

Commit

Permalink
Merge pull request #644 from Nikhil1Reddy/mydevelop4
Browse files Browse the repository at this point in the history
MOSIP-28140 added test cases for invalidate datashare token
  • Loading branch information
mayuradesh committed Jul 13, 2023
2 parents 5ebe2ea + 1692bd0 commit 8ec4834
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import io.mosip.compliance.toolkit.util.RequestValidator;
import io.mosip.kernel.core.http.RequestWrapper;
import io.mosip.kernel.core.http.ResponseWrapper;
import static org.mockito.ArgumentMatchers.any;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
Expand All @@ -21,6 +22,9 @@
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.context.WebApplicationContext;

import static junit.framework.TestCase.assertEquals;
import static org.mockito.Mockito.*;

@ContextConfiguration(classes = {TestContext.class, WebApplicationContext.class})
@RunWith(SpringRunner.class)
@WebMvcTest
Expand Down Expand Up @@ -56,7 +60,7 @@ public void getDataShareUrlTest() throws Exception {
DataShareRequestDto dataShareRequestDto = new DataShareRequestDto();
value.setRequest(dataShareRequestDto);
ResponseWrapper<DataShareResponseWrapperDto> response = new ResponseWrapper<>();
Mockito.when(abisDataShareService.createDataShareUrl(dataShareRequestDto)).thenReturn(response);
when(abisDataShareService.createDataShareUrl(dataShareRequestDto)).thenReturn(response);
abisDataShareController.createDataShareUrl(value, errors);
}

Expand All @@ -66,7 +70,7 @@ public void expireDataShareUrlTest() {
DataShareExpireRequest dataShareExpireRequest = new DataShareExpireRequest();
value.setRequest(dataShareExpireRequest);
ResponseWrapper<Boolean> response = new ResponseWrapper<>();
Mockito.when(abisDataShareService.expireDataShareUrl(dataShareExpireRequest)).thenReturn(response);
when(abisDataShareService.expireDataShareUrl(dataShareExpireRequest)).thenReturn(response);
abisDataShareController.expireDataShareUrl(value, errors);
}

Expand All @@ -76,7 +80,26 @@ public void saveDataShareTokenTest() throws Exception {
DataShareSaveTokenRequest dataShareSaveTokenRequest = new DataShareSaveTokenRequest();
request.setRequest(dataShareSaveTokenRequest);
ResponseWrapper<String> response = new ResponseWrapper<>();
Mockito.when(abisDataShareService.saveDataShareToken(request)).thenReturn(response);
when(abisDataShareService.saveDataShareToken(request)).thenReturn(response);
abisDataShareController.saveDataShareToken(request, errors);
}

@Test
public void testInvalidateDataShareToken() throws Exception {
RequestWrapper<DataShareSaveTokenRequest> requestWrapper = new RequestWrapper<>();
DataShareSaveTokenRequest dataShareSaveTokenRequest = new DataShareSaveTokenRequest();
requestWrapper.setRequest(dataShareSaveTokenRequest);

ResponseWrapper<String> expectedResponse = new ResponseWrapper<>();
expectedResponse.setResponse("success");
doNothing().when(requestValidator).validateId(any(), any(), any());
when(abisDataShareService.invalidateDataShareToken(requestWrapper)).thenReturn(expectedResponse);

ResponseWrapper<String> actualResponse = abisDataShareController.invalidateDataShareToken(requestWrapper, errors);

assertEquals(expectedResponse, actualResponse);

verify(abisDataShareService).invalidateDataShareToken(requestWrapper);
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.ArgumentMatchers;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
Expand All @@ -36,8 +37,11 @@
import java.io.InputStream;
import java.util.Optional;

import static junit.framework.TestCase.assertEquals;
import static org.codehaus.groovy.runtime.DefaultGroovyMethods.any;
import static org.junit.Assert.assertNotNull;
import static org.mockito.Mockito.mock;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.Mockito.*;

@ContextConfiguration(classes = {TestContext.class, WebApplicationContext.class})
@RunWith(SpringRunner.class)
Expand Down Expand Up @@ -78,10 +82,10 @@ public class ABISDataShareServiceTest {

@Before
public void before() {
Mockito.when(securityContext.getAuthentication()).thenReturn(authentication);
when(securityContext.getAuthentication()).thenReturn(authentication);
mosipUserDto = getMosipUserDto();
AuthUserDetails authUserDetails = new AuthUserDetails(mosipUserDto, "token");
Mockito.when(authentication.getPrincipal()).thenReturn(authUserDetails);
when(authentication.getPrincipal()).thenReturn(authUserDetails);
SecurityContextHolder.setContext(securityContext);
}

Expand All @@ -108,8 +112,8 @@ public void getPartnerIdTest() {
@Test
public void getDataShareUrlTest() throws Exception {
InputStream inputStream = mock(InputStream.class);
Mockito.when(testCasesService.getPartnerTestDataStream(Mockito.any(), Mockito.any(), Mockito.any())).thenReturn(inputStream);
Mockito.when(keyManagerHelper.getAuthToken()).thenReturn("authToken");
when(testCasesService.getPartnerTestDataStream(Mockito.any(), Mockito.any(), Mockito.any())).thenReturn(inputStream);
when(keyManagerHelper.getAuthToken()).thenReturn("authToken");

DataShareRequestDto dataShareRequestDto = new DataShareRequestDto();
dataShareRequestDto.setTestcaseId("ABIS3000");
Expand Down Expand Up @@ -152,13 +156,13 @@ public void testSaveDataShareToken_existingToken() {
savedEntity.setTestCaseId("5678");
savedEntity.setPartnerId("1234");

Mockito.when(abisDataShareTokenRepository.findTokenForTestRun(
when(abisDataShareTokenRepository.findTokenForTestRun(
Mockito.any(), Mockito.any(), Mockito.any()))
.thenReturn(Optional.of(savedEntity));

ResponseWrapper<String> responseWrapper = abisDataShareService.saveDataShareToken(requestWrapper);

Mockito.verify(abisDataShareTokenRepository, Mockito.times(1)).updateResultInRow(
verify(abisDataShareTokenRepository, Mockito.times(1)).updateResultInRow(
AppConstants.SUCCESS, savedEntity.getPartnerId(), savedEntity.getTestCaseId(),
savedEntity.getTestRunId());
Assert.assertEquals(AppConstants.SUCCESS, responseWrapper.getResponse());
Expand All @@ -174,16 +178,31 @@ public void testSaveDataShareToken_newToken() {
dataShareSaveTokenRequest.setToken("token");
requestWrapper.setRequest(dataShareSaveTokenRequest);

Mockito.when(abisDataShareTokenRepository.findTokenForTestRun(
when(abisDataShareTokenRepository.findTokenForTestRun(
Mockito.any(), Mockito.any(), Mockito.any()))
.thenReturn(Optional.empty());

ResponseWrapper<String> responseWrapper = abisDataShareService.saveDataShareToken(requestWrapper);

Mockito.verify(abisDataShareTokenRepository, Mockito.times(1)).save(
verify(abisDataShareTokenRepository, Mockito.times(1)).save(
Mockito.any(AbisDataShareTokenEntity.class));
}

@Test
public void testInvalidateDataShareToken() {
RequestWrapper<DataShareSaveTokenRequest> requestWrapper = new RequestWrapper<>();
DataShareSaveTokenRequest dataShareSaveTokenRequest = new DataShareSaveTokenRequest();
dataShareSaveTokenRequest.setPartnerId("1234");
dataShareSaveTokenRequest.setCtkTestCaseId("5678");
dataShareSaveTokenRequest.setCtkTestRunId("9012");
dataShareSaveTokenRequest.setToken("Token");
requestWrapper.setRequest(dataShareSaveTokenRequest);

ResponseWrapper<String> response = abisDataShareService.invalidateDataShareToken(requestWrapper);

assertEquals(AppConstants.FAILURE, response.getResponse());
}

/*
* This method is used to get MosipUserDto in class
*/
Expand Down

0 comments on commit 8ec4834

Please sign in to comment.