on ea25a45 help sign in
bridge/src/form/formatters.test.ts
45 lines 1.4 kB history raw
1import { ensurePatFormat } from './formatters';
3describe('#ensurePatFormat', () => {
4 it('ensures a valid ticket', () => {
5 const input = '~ticket-ticket-ticket-ticket';
6 const expected = '~ticket-ticket-ticket-ticket';
8 expect(ensurePatFormat(input)).toEqual(expected);
9 });
11 it('prepends a ~ when missing', () => {
12 const input = 'ticket-ticket-ticket-ticket';
13 const expected = '~ticket-ticket-ticket-ticket';
15 expect(ensurePatFormat(input)).toEqual(expected);
16 });
18 it('inserts missing separators', () => {
19 const input = 'ticketticketticketticket';
20 const expected = '~ticket-ticket-ticket-ticket';
22 expect(ensurePatFormat(input)).toEqual(expected);
23 });
25 it('handles uneven patp', () => {
26 const input = 'ticket-ticket-tic';
27 const expected = '~ticket-ticket-tic';
29 expect(ensurePatFormat(input)).toEqual(expected);
30 });
32 it('supports master ticket + star combo for Activation flow', () => {
33 const input = 'ticket-ticket-ticket-ticket-sampel';
34 const expected = '~ticket-ticket-ticket-ticket-sampel';
36 expect(ensurePatFormat(input)).toEqual(expected);
37 });
39 it('supports master ticket + planet combo for Activation flow', () => {
40 const input = 'ticket-ticket-ticket-ticket-sampel-palnet';
41 const expected = '~ticket-ticket-ticket-ticket-sampel-palnet';
43 expect(ensurePatFormat(input)).toEqual(expected);
44 });
45});