Server/src/test/java/de/towerdefence/server/IntegrationTest.java

62 lines
1.8 KiB
Java
Raw Normal View History

2025-02-01 14:18:34 +01:00
package de.towerdefence.server;
import com.fasterxml.jackson.databind.ObjectMapper;
import de.towerdefence.server.player.Player;
2025-02-11 14:16:35 +01:00
import de.towerdefence.server.player.PlayerRepository;
import de.towerdefence.server.player.PlayerService;
2025-02-01 14:18:34 +01:00
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.ActiveProfiles;
import org.springframework.test.web.servlet.MockMvc;
import java.security.NoSuchAlgorithmException;
import java.util.HashMap;
import java.util.Map;
2025-02-01 14:18:34 +01:00
@SpringBootTest
@AutoConfigureMockMvc(addFilters = false)
@ActiveProfiles("test")
public abstract class IntegrationTest {
protected final static String baseUri = "/api/v1";
@Autowired
protected MockMvc mvc;
@Autowired
protected ObjectMapper objectMapper;
2025-02-11 14:16:35 +01:00
@Autowired
protected PlayerRepository playerRepository;
@Autowired
protected PlayerService playerService;
2025-02-01 14:18:34 +01:00
@BeforeEach
void setUp() {
2025-02-11 14:16:35 +01:00
playerRepository.deleteAll();
Map<String, String> players = new HashMap<>();
players.put("Alex", "1234");
players.put("Zorro", "1234");
players.forEach((username, password) -> {
Player player = new Player();
player.setUsername(username);
try {
playerService.setPassword(player, password);
playerRepository.save(player);
} catch (NoSuchAlgorithmException e) {
System.err.println("Error setting password for player: " + username);
}
});
2025-02-01 14:18:34 +01:00
}
@AfterEach
void cleanUp() {
2025-02-11 14:16:35 +01:00
playerRepository.deleteAll();
2025-02-01 14:18:34 +01:00
}
}
2025-02-01 14:18:34 +01:00