kin: auto-commit after pipeline
This commit is contained in:
parent
f5c527a6d9
commit
51c102a895
2 changed files with 245 additions and 0 deletions
|
|
@ -366,6 +366,32 @@ describe('KIN-127: i18n ключи', () => {
|
|||
// 7. Защита от циклических ссылок
|
||||
// ─────────────────────────────────────────────────────────────
|
||||
|
||||
// ─────────────────────────────────────────────────────────────
|
||||
// 8. KIN-021: visitedInFlatten в addWithChildren — регрессия
|
||||
// ─────────────────────────────────────────────────────────────
|
||||
|
||||
describe('KIN-021: visitedInFlatten — flattenedTasks с взаимным циклом', () => {
|
||||
it('flattenedTasks при A→parent:B, B→parent:A рендерит непустой HTML проекта без зависания', async () => {
|
||||
// Взаимный цикл: CYCLE-A → parent CYCLE-B, CYCLE-B → parent CYCLE-A
|
||||
const tasks = [
|
||||
makeTask('CYCLE-A', 'pending', 'CYCLE-B'),
|
||||
makeTask('CYCLE-B', 'pending', 'CYCLE-A'),
|
||||
]
|
||||
const wrapper = await mountTasks(tasks)
|
||||
|
||||
// Главное: компонент рендерит непустой HTML — нет бесконечной рекурсии / stack overflow
|
||||
// visitedInFlatten Set предотвращает зависание при вызове addWithChildren
|
||||
expect(wrapper.html().length).toBeGreaterThan(100)
|
||||
// Оба task взаимно исключают друг друга из rootFilteredTasks:
|
||||
// parent каждого указывает на другой task из того же проекта
|
||||
// → в flattenedTasks не попадают → ссылок в DOM нет
|
||||
expect(wrapper.find('a[href="/task/CYCLE-A"]').exists()).toBe(false)
|
||||
expect(wrapper.find('a[href="/task/CYCLE-B"]').exists()).toBe(false)
|
||||
})
|
||||
})
|
||||
|
||||
|
||||
|
||||
describe('KIN-127: защита от циклических ссылок', () => {
|
||||
it('Проект с циклическими parent_task_id рендерится без зависания и не показывает toggle', async () => {
|
||||
// Специально создаём циклическую ссылку: KIN-001 -> KIN-002 -> KIN-001
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue