Files
superwork/vscode/src/panel/handlers/terminals.test.ts
T

40 lines
1.3 KiB
TypeScript

import { describe, expect, it } from 'vitest'
import { existingTerminalGroupColumn, terminalEditorColumn } from '../terminalColumn'
describe('terminalEditorColumn', () => {
it('分屏 → 右侧第 2 栏', () => {
expect(terminalEditorColumn(true)).toBe(2)
})
it('不分屏 → 当前栏(只加标签)', () => {
expect(terminalEditorColumn(false)).toBe(-1)
})
})
describe('existingTerminalGroupColumn', () => {
it('没有任何终端 tab → -1', () => {
expect(existingTerminalGroupColumn([
{ viewColumn: 1, isActive: true, tabs: [{ isTerminal: false }] },
])).toBe(-1)
})
it('已有一组含终端 → 该组 viewColumn', () => {
expect(existingTerminalGroupColumn([
{ viewColumn: 1, isActive: true, tabs: [{ isTerminal: true }] },
])).toBe(1)
})
it('多组时活动组有终端 → 活动组', () => {
expect(existingTerminalGroupColumn([
{ viewColumn: 1, isActive: false, tabs: [{ isTerminal: true }] },
{ viewColumn: 2, isActive: true, tabs: [{ isTerminal: true }] },
])).toBe(2)
})
it('多组时活动组没有终端、另一组有 → 有终端的那组', () => {
expect(existingTerminalGroupColumn([
{ viewColumn: 1, isActive: false, tabs: [{ isTerminal: true }] },
{ viewColumn: 2, isActive: true, tabs: [{ isTerminal: false }] },
])).toBe(1)
})
})