source-line-processor
Version:
`source-line-processor script.js --dir $PWD/test --dry-run --pattern "*.js"`
51 lines (41 loc) • 1.24 kB
text/typescript
import { parse, TodoFormat, build } from '../parser';
describe('Todo', () => {
describe('parse', () => {
const validate = (message: string, result: TodoFormat, rebuild?: string) => {
const parsed = parse(message);
expect(parsed).toEqual(result);
const built = build(result);
expect(built).toEqual(rebuild || message);
}
const create = (todo: TodoFormat, rebuild?: string) => {
const built = build(todo);
expect(built).toBe(rebuild);
}
test('it should be able to parse', () => {
validate(' // TOdo(#asdsdf): Hello world', {
prefix: ' // TOdo',
content: 'Hello world',
issueId: 'asdsdf',
});
validate('# TODO do stuff', {
prefix: '# TODO',
content: 'do stuff',
}, '# TODO: do stuff');
validate('todo: do stuff', {
prefix: 'todo',
content: 'do stuff',
});
create({
prefix: '#todo',
content: 'some text',
issueId: '234',
owner: 'foo',
}, '#todo(#234,foo): some text')
create({
prefix: ' //TODO',
content: 'some text',
issueId: '234',
}, ' //TODO(#234): some text')
})
});
});