import { EventFormatter } from '../../src/util';
describe('EventFormatter', () => {
let eventFormatter;
beforeEach(() => {
eventFormatter = new EventFormatter('App.Events');
});
test('prepends an event with a namespace and replaces dot separators with backslashes', () => {
let formatted = eventFormatter.format('Users.UserCreated');
expect(formatted).toBe('App\\Events\\Users\\UserCreated');
});
test('does not prepend a namespace when an event starts with a dot', () => {
let formatted = eventFormatter.format('.App\\Users\\UserCreated');
expect(formatted).toBe('App\\Users\\UserCreated');
});
test('does not prepend a namespace when an event starts with a backslash', () => {
let formatted = eventFormatter.format('\\App\\Users\\UserCreated');
expect(formatted).toBe('App\\Users\\UserCreated');
});
test('does not replace dot separators when the event starts with a dot', () => {
let formatted = eventFormatter.format('.users.created');
expect(formatted).toBe('users.created');
});
test('does not replace dot separators when the event starts with a backslash', () => {
let formatted = eventFormatter.format('\\users.created');
expect(formatted).toBe('users.created');
});
test('does not prepend a namespace when none is set', () => {
let eventFormatter = new EventFormatter(false);
let formatted = eventFormatter.format('Users.UserCreated');
expect(formatted).toBe('Users\\UserCreated');
});
});
|