Skip to content

Commit

Permalink
test
Browse files Browse the repository at this point in the history
  • Loading branch information
johanah29 committed Oct 21, 2024
1 parent ba7cd7e commit 5942004
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 38 deletions.
17 changes: 12 additions & 5 deletions openbas-api/src/test/java/io/openbas/rest/InjectApiTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import jakarta.annotation.Resource;
import jakarta.annotation.Resources;
import org.junit.jupiter.api.*;
import org.mockito.ArgumentCaptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.mock.mockito.SpyBean;
import org.springframework.http.MediaType;
Expand Down Expand Up @@ -306,7 +307,7 @@ void executeEmailInjectForExerciseTest() throws Exception {
inject.setExercise(EXERCISE);
ObjectNode content = objectMapper.createObjectNode();
content.set("subject", objectMapper.convertValue("Subject", JsonNode.class));
content.set("body", objectMapper.convertValue("Test body g", JsonNode.class));
content.set("body", objectMapper.convertValue("Test body", JsonNode.class));
content.set("expectationType", objectMapper.convertValue("none", JsonNode.class));
inject.setContent(content);
Inject savedInject = this.injectRepository.save(inject);
Expand Down Expand Up @@ -335,15 +336,21 @@ void executeEmailInjectForExerciseTest() throws Exception {
in.readAllBytes());

// -- EXECUTE --
mvc.perform(multipart(EXERCISE_URI + "/" + EXERCISE.getId() + "/inject")
String response = mvc.perform(multipart(EXERCISE_URI + "/" + EXERCISE.getId() + "/inject")
.file(inputJson)
.file(fileJson))
.andExpect(status().is2xxSuccessful())
/*.andReturn()
.andReturn()
.getResponse()
.getContentAsString()*/;
.getContentAsString();
// -- ASSERT --
verify(executor).execute(injection);
assertNotNull(response);
assertEquals("ERROR", JsonPath.read(response, "$.status_name"));
ArgumentCaptor<ExecutableInject> executableInjectCaptor = ArgumentCaptor.forClass(ExecutableInject.class);
verify(executor).execute(executableInjectCaptor.capture());

ExecutableInject capturedInjection = executableInjectCaptor.getValue();
assertEquals(injection.getExercise(), capturedInjection.getExercise());

//-- THEN ---
injectRepository.delete(savedInject);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,41 +9,49 @@

public class ExerciseFixture {

public static final String EXERCISE_NAME = "Exercise test";
public static final String EXERCISE_NAME = "Exercise test";

public static Exercise getExercise() {
return getExercise(null);
}

public static Exercise getExercise(List<Team> exerciseTeams) {
Exercise exercise = new Exercise();
exercise.setName(EXERCISE_NAME);
if(exerciseTeams != null){
exercise.setTeams(exerciseTeams);
}
return exercise;
}

public static Exercise createDefaultCrisisExercise() {
Exercise exercise = new Exercise();
exercise.setName("Crisis exercise");
exercise.setDescription("A crisis exercise for my enterprise");
exercise.setSubtitle("A crisis exercise");
exercise.setFrom("exercise@mail.fr");
exercise.setCategory("crisis-communication");
return exercise;
}
public static Exercise getExercise() {
return getExercise(null);
}

public static Exercise createDefaultIncidentResponseExercise() {
Exercise exercise = new Exercise();
exercise.setName("Incident response exercise");
exercise.setDescription("An incident response exercise for my enterprise");
exercise.setSubtitle("An incident response exercise");
exercise.setFrom("exercise@mail.fr");
exercise.setCategory("incident-response");
exercise.setStatus(ExerciseStatus.SCHEDULED);
exercise.setStart(Instant.now());
return exercise;
public static Exercise getExercise(List<Team> exerciseTeams) {
Exercise exercise = new Exercise();
exercise.setName(EXERCISE_NAME);
if (exerciseTeams != null) {
exercise.setTeams(exerciseTeams);
}
return exercise;
}

public static Exercise createDefaultCrisisExercise() {
Exercise exercise = new Exercise();
exercise.setName("Crisis exercise");
exercise.setDescription("A crisis exercise for my enterprise");
exercise.setSubtitle("A crisis exercise");
exercise.setFrom("exercise@mail.fr");
exercise.setCategory("crisis-communication");
return exercise;
}

public static Exercise createDefaultIncidentResponseExercise() {
Exercise exercise = new Exercise();
exercise.setName("Incident response exercise");
exercise.setDescription("An incident response exercise for my enterprise");
exercise.setSubtitle("An incident response exercise");
exercise.setFrom("exercise@mail.fr");
exercise.setCategory("incident-response");
exercise.setStatus(ExerciseStatus.SCHEDULED);
exercise.setStart(Instant.now());
return exercise;
}

/*
_ create exercise with team containing a user with email (user enabled)
_ create exercise with team containing a user with email (user not enabled)
_ create exercise without team
_ create exercise with team without user
_ create email
*/

}

0 comments on commit 5942004

Please sign in to comment.