test(cli): validate mentions handle
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import { normalizeHandle } from '../src/lib/normalize-handle.js';
|
||||
import { mentionsQueryFromUserOption, normalizeHandle } from '../src/lib/normalize-handle.js';
|
||||
|
||||
describe('normalizeHandle', () => {
|
||||
it('accepts bare handle', () => {
|
||||
@@ -22,3 +22,20 @@ describe('normalizeHandle', () => {
|
||||
expect(normalizeHandle('a'.repeat(16))).toBeNull();
|
||||
});
|
||||
});
|
||||
|
||||
describe('mentionsQueryFromUserOption', () => {
|
||||
it('returns null query when option omitted', () => {
|
||||
expect(mentionsQueryFromUserOption(undefined)).toEqual({ query: null, error: null });
|
||||
});
|
||||
|
||||
it('returns normalized @query for valid handle', () => {
|
||||
expect(mentionsQueryFromUserOption('@steipete')).toEqual({ query: '@steipete', error: null });
|
||||
expect(mentionsQueryFromUserOption(' steipete ')).toEqual({ query: '@steipete', error: null });
|
||||
});
|
||||
|
||||
it('returns error for invalid handle', () => {
|
||||
const result = mentionsQueryFromUserOption('@stei-pete');
|
||||
expect(result.query).toBeNull();
|
||||
expect(result.error).toMatch(/Invalid --user handle/);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user