CatchTheLettersBackend/src/test/java/com/example/catchTheLetters/TestInsertLevel.java

86 lines
2.7 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.example.catchTheLetters;
import com.example.catchTheLetters.controller.LevelController;
import com.example.catchTheLetters.entity.Level;
import com.example.catchTheLetters.service.LevelService;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
@SpringBootTest
class TestInsertLevel {
@Resource
private LevelController levelController;
private final List<String> words = new ArrayList<>() {
{
add("apple");
add("banana");
add("cherry");
add("date");
add("elderberry");
add("fig");
add("grape");
add("honeydew");
add("imbe");
add("jackfruit");
add("kiwi");
add("lemon");
add("mango");
add("nectarine");
add("orange");
add("papaya");
add("quince");
add("raspberry");
add("strawberry");
add("tangerine");
add("ugli");
add("vanilla");
add("watermelon");
add("ximenia");
add("yuzu");
add("zucchini");
}
};
@Test
void testInsertLevel() {
// 存20个关卡
for (int i = 0; i < 20; i++) {
var type = new Random().nextInt(2);
// 如果是1则需要设置目标分数
var targetScore = type == 1 ? new Random().nextInt(100) : null;
// 如果是0则单词列表5个就够否则15个
var wordList = new ArrayList<String>();
for (int j = 0; j < (type == 0 ? 5 : 15); j++) {
wordList.add(words.get(new Random().nextInt(words.size())));
}
// 时间全部设置为3分钟
var level = new Level(Integer.toString(i), i, "Level " + i, type, 180000L, targetScore, wordList);
levelController.create(level);
}
}
@Test
void insertALevel() {
var type = new Random().nextInt(2);
// 如果是1则需要设置目标分数
var targetScore = type == 1 ? new Random().nextInt(100) : null;
// 如果是0则单词列表5个就够否则15个
var wordList = new ArrayList<String>();
for (int j = 0; j < (type == 0 ? 5 : 15); j++) {
wordList.add(words.get(new Random().nextInt(words.size())));
}
// 时间全部设置为3分钟
var level = new Level("21", 21, "Level 21", type, 180000L, targetScore, wordList);
levelController.create(level);
}
}