chore: rewrite ARCHITECTURE, enable tests via MockBukkit, checkstyle for tests, cleanup bin/libs
This commit is contained in:
parent
a0c1ab8ca1
commit
e8d516020c
53 changed files with 1093 additions and 1410 deletions
29
todo.md
29
todo.md
|
|
@ -1,7 +1,7 @@
|
|||
# LoMines — План реструктуризации и улучшения качества
|
||||
|
||||
> **Обновлено:** 2026-07-06
|
||||
> **Цели:** Разбивка на подпапки (≤3 файла), лимит 150 строк/файл, Checkstyle
|
||||
> **Обновлено:** 2026-08-12
|
||||
> **Цели:** Разбивка на подпапки (≤3 файла), лимит 150 строк/файл, Checkstyle, тестовое покрытие
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -574,3 +574,28 @@ dev.loki.lomines/
|
|||
- **0 файлов >150 строк**
|
||||
- **0 папок >3 файлов**
|
||||
- **145 main + 31 test = 176 файлов**
|
||||
|
||||
---
|
||||
|
||||
## ✅ Постреструктуризационные задачи завершены (2026-08-12)
|
||||
|
||||
### Docs
|
||||
- `ARCHITECTURE.md` полностью переписан под реальный код: `dev.loki.lomines`, `extends JavaPlugin`, без lolib/LoAPI (ранее описывал Kotlin-версию)
|
||||
- Удалён устаревший `core/common/package-info.java` (ссылался на `LoPlugin`, `Mines`/`Mine` в `core.common`) — пакет был пустым
|
||||
|
||||
### Checkstyle
|
||||
- `BeforeExecutionExclusionFileFilter` (исключавший `src/test`) убран — тесты теперь проверяются
|
||||
- `MethodLength` 80 → 30
|
||||
- Исправлены нарушения: 23 в main (выделение private-методов) + 60 в test (unused imports, camelCase для тестов)
|
||||
|
||||
### Тесты: MockBukkit
|
||||
- Подключён `org.mockbukkit.mockbukkit:mockbukkit-v1.21:4.110.0` (testImplementation)
|
||||
- `testImplementation` paper-api приведён к `1.21.11-R0.1-SNAPSHOT` (требование MockBukkit), `compileOnly` остаётся `1.21.4`
|
||||
- Включены все 48 ранее отключённых тестов: `BlockKeyTest`, `BlockConfigTest`, `MineTest`, `MineConfigTest`, `MineConfigValidationTest`, `MinesTest`, `MinesLoadingTest`, `MinesLifecycleTest`
|
||||
- **Итог: 184 теста, 0 skipped, 0 failures**
|
||||
|
||||
### Багфикс
|
||||
- `Mines.create("TestMine")` сохранял `testmine.yml` (record нормализует имя в lowercase), но загружал `TestMine.yml` → `IOException`. Исправлено нормализацией имени в `Mines.create` (`name.toLowerCase().trim()`)
|
||||
|
||||
### Cleanup
|
||||
- Удалены `bin/` (Eclipse output, был gitignored) и `libs/` (содержал только `.gitkeep`)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue