Files
portal/tools/bash-tokenizer.test.mjs
T
2026-05-29 19:44:55 +03:00

19 lines
628 B
JavaScript

import { describe, it, expect } from 'vitest';
import { tokenizeBash, isMutatingSegment } from './bash-tokenizer.mjs';
describe('tokenizeBash — basics', () => {
it('tokenizes a simple command', () => {
const r = tokenizeBash('ls -la /tmp');
expect(r.ok).toBe(true);
expect(r.segments).toHaveLength(1);
expect(r.segments[0].tokens).toEqual(['ls', '-la', '/tmp']);
expect(r.hasSubshell).toBe(false);
});
it('returns ok:false on empty input', () => {
expect(tokenizeBash('').ok).toBe(false);
expect(tokenizeBash(' ').ok).toBe(false);
expect(tokenizeBash(null).ok).toBe(false);
});
});