Skip to content

Commit

Permalink
test: tests for challenge
Browse files Browse the repository at this point in the history
  • Loading branch information
J1aM1ng committed Dec 6, 2023
1 parent 396a620 commit 4fb094c
Show file tree
Hide file tree
Showing 4 changed files with 197 additions and 200 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,11 @@
import lombok.*;

@Data
@NoArgsConstructor
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
@Builder(toBuilder = true)
@Table
@Entity
public class ChallengeType {
@Id
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,13 +43,13 @@ public GenericMessage<ChallengeTypeDto> getChallenge(ChallengeGetRequest request
} else {
return GenericMessage.<ChallengeTypeDto>builder()
.status(HttpStatus.UNAUTHORIZED)
.message("Heart rate is not in the range of this challenge type")
.message("GetChallenge failed, user heart rate not in range for this challenge type")
.build();
}
} else {
return GenericMessage.<ChallengeTypeDto>builder()
.status(HttpStatus.NOT_FOUND)
.message("No challenge type associated with this type")
.message("GetChallenge failed, no challenge type found with this type")
.build();
}
}
Expand Down Expand Up @@ -101,7 +101,7 @@ public GenericMessage<ChallengeTypeDto> deleteChallenge(ChallengeDeleteRequest r
if (!existingChallengeType.isPresent()) {
return GenericMessage.<ChallengeTypeDto>builder()
.status(HttpStatus.NOT_FOUND)
.message("Challenge type not found")
.message("DeleteChallenge failed, no challenge type found with this type")
.build();
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,72 +1,74 @@
//package com.cas.challengeservice;
//import static org.junit.jupiter.api.Assertions.assertEquals;
//import static org.mockito.ArgumentMatchers.any;
//import static org.mockito.Mockito.*;
//
//import com.cas.challengeservice.controller.ChallengeController;
//import com.cas.challengeservice.dto.*;
//import com.cas.challengeservice.service.ChallengeService;
//import org.junit.jupiter.api.BeforeEach;
//import org.junit.jupiter.api.Test;
//import org.mockito.InjectMocks;
//import org.mockito.Mock;
//import org.springframework.boot.test.context.SpringBootTest;
//import org.springframework.http.HttpStatus;
//import org.springframework.http.ResponseEntity;
//@SpringBootTest
//public class ChallengeControllerTests {
// @Mock private ChallengeService challengeService;
// @InjectMocks private ChallengeController challengeController;
// private Long userHeartRate;
// private String type;
//
// private GenericMessage<ChallengeTypeDto> message;
// private ChallengeGetRequest challengeGetRequest;
// private ChallengeAddRequest challengeAddRequest;
// private ChallengeDeleteRequest challengeDeleteRequest;
//
// @BeforeEach
// public void setUp() {
// userHeartRate = 70L;
// type = "Balance";
//
// challengeGetRequest = new ChallengeGetRequest(userHeartRate, type);
// challengeAddRequest = new ChallengeAddRequest(); // add properties as necessary
// challengeDeleteRequest = new ChallengeDeleteRequest(); // add properties as necessary
//
// message = GenericMessage.<ChallengeTypeDto>builder().status(HttpStatus.OK).build();
// }
//
// @Test
// public void testGetChallenge() {
// when(challengeService.getChallenge(any())).thenReturn(message);
//
// ResponseEntity<GenericMessage<ChallengeTypeDto>> responseEntity =
// challengeController.getChallenge(userHeartRate, type);
//
// assertEquals(HttpStatus.OK, responseEntity.getStatusCode());
// verify(challengeService, times(1)).getChallenge(any());
// }
//
// @Test
// public void testAddChallenge() {
// when(challengeService.addChallenge(any())).thenReturn(message);
//
// ResponseEntity<GenericMessage<ChallengeTypeDto>> responseEntity =
// challengeController.addChallenge(challengeAddRequest);
//
// assertEquals(HttpStatus.OK, responseEntity.getStatusCode());
// verify(challengeService, times(1)).addChallenge(any());
// }
//
// @Test
// public void testDeleteChallenge() {
// when(challengeService.deleteChallenge(any())).thenReturn(message);
//
// ResponseEntity<GenericMessage<ChallengeTypeDto>> responseEntity =
// challengeController.deleteChallenge(challengeDeleteRequest);
//
// assertEquals(HttpStatus.OK, responseEntity.getStatusCode());
// verify(challengeService, times(1)).deleteChallenge(any());
// }
//}
package com.cas.challengeservice;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.*;

import com.cas.challengeservice.controller.ChallengeController;
import com.cas.challengeservice.dto.*;
import com.cas.challengeservice.service.ChallengeService;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
@SpringBootTest
public class ChallengeControllerTests {
@Mock private ChallengeService challengeService;
@InjectMocks private ChallengeController challengeController;
private Long userHeartRate;
private Long exerciseCount;
private String type;

private GenericMessage<ChallengeTypeDto> message;
private ChallengeGetRequest challengeGetRequest;
private ChallengeAddRequest challengeAddRequest;
private ChallengeDeleteRequest challengeDeleteRequest;

@BeforeEach
public void setUp() {
userHeartRate = 70L;
type = "Balance";
exerciseCount = 30L;

challengeGetRequest = ChallengeGetRequest.builder().userHeartRate(userHeartRate).type(type).build();
challengeAddRequest = ChallengeAddRequest.builder().userHeartRate(userHeartRate).exerciseCount(exerciseCount).type(type).build();
challengeDeleteRequest = ChallengeDeleteRequest.builder().type(type).build();

message = GenericMessage.<ChallengeTypeDto>builder().status(HttpStatus.OK).message("Challenge Response").build();
}

@Test
public void testGetChallenge() {
when(challengeService.getChallenge(any())).thenReturn(message);

ResponseEntity<GenericMessage<ChallengeTypeDto>> responseEntity =
challengeController.getChallenge(userHeartRate, type);

assertEquals(HttpStatus.OK, responseEntity.getStatusCode());
verify(challengeService, times(1)).getChallenge(any());
}

@Test
public void testAddChallenge() {
when(challengeService.addChallenge(any())).thenReturn(message);

ResponseEntity<GenericMessage<ChallengeTypeDto>> responseEntity =
challengeController.addChallenge(challengeAddRequest);

assertEquals(HttpStatus.OK, responseEntity.getStatusCode());
verify(challengeService, times(1)).addChallenge(any());
}

@Test
public void testDeleteChallenge() {
when(challengeService.deleteChallenge(any())).thenReturn(message);

ResponseEntity<GenericMessage<ChallengeTypeDto>> responseEntity =
challengeController.deleteChallenge(challengeDeleteRequest);

assertEquals(HttpStatus.OK, responseEntity.getStatusCode());
verify(challengeService, times(1)).deleteChallenge(any());
}
}
Loading

0 comments on commit 4fb094c

Please sign in to comment.