32 lines
981 B
TypeScript
32 lines
981 B
TypeScript
import { describe, it, expect } from 'vitest';
|
|
import { TrackId } from './TrackId';
|
|
|
|
describe('TrackId', () => {
|
|
it('should create track id', () => {
|
|
const id = TrackId.create('track-123');
|
|
expect(id.toString()).toBe('track-123');
|
|
expect(id.props).toBe('track-123');
|
|
});
|
|
|
|
it('should trim whitespace', () => {
|
|
const id = TrackId.create(' track-123 ');
|
|
expect(id.toString()).toBe('track-123');
|
|
});
|
|
|
|
it('should throw for empty id', () => {
|
|
expect(() => TrackId.create('')).toThrow('Track ID cannot be empty');
|
|
expect(() => TrackId.create(' ')).toThrow('Track ID cannot be empty');
|
|
});
|
|
|
|
it('should equal same ids', () => {
|
|
const i1 = TrackId.create('track-123');
|
|
const i2 = TrackId.create('track-123');
|
|
expect(i1.equals(i2)).toBe(true);
|
|
});
|
|
|
|
it('should not equal different ids', () => {
|
|
const i1 = TrackId.create('track-123');
|
|
const i2 = TrackId.create('track-456');
|
|
expect(i1.equals(i2)).toBe(false);
|
|
});
|
|
}); |