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

86 lines
2.7 KiB
Java
Raw Normal View History

2024-04-12 02:59:19 +00:00
package com.example.catchTheLetters;
import com.example.catchTheLetters.controller.LevelController;
2024-04-12 02:59:19 +00:00
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;
2024-04-12 02:59:19 +00:00
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");
}
};
2024-04-12 02:59:19 +00:00
@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);
2024-04-12 02:59:19 +00:00
levelController.create(level);
2024-04-12 02:59:19 +00:00
}
}
@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("20", 20, "Level 20", type, 180000L, targetScore, wordList);
levelController.create(level);
}
2024-04-12 02:59:19 +00:00
}