|
1 | 1 | import test from '../testFunctions'; |
2 | 2 |
|
3 | 3 | describe('isISO31661Alpha3', () => { |
4 | | - it('should validate official alpha 3 code', () => { |
| 4 | + it('should validate ISO 3166-1 alpha 3 country codes', () => { |
| 5 | + // from https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3 |
5 | 6 | test({ |
6 | 7 | validator: 'isISO31661Alpha3', |
7 | | - args: [], |
8 | | - valid: ['BEL', 'FRA', 'GBR', 'USA'], |
9 | | - invalid: ['XXK'], |
| 8 | + valid: [ |
| 9 | + 'ABW', |
| 10 | + 'HND', |
| 11 | + 'KHM', |
| 12 | + 'RWA', |
| 13 | + ], |
| 14 | + invalid: [ |
| 15 | + '', |
| 16 | + 'FR', |
| 17 | + 'fR', |
| 18 | + 'GB', |
| 19 | + 'PT', |
| 20 | + 'CM', |
| 21 | + 'JP', |
| 22 | + 'PM', |
| 23 | + 'ZW', |
| 24 | + 'XXK', |
| 25 | + ], |
10 | 26 | }); |
11 | 27 | }); |
12 | 28 |
|
13 | | - it('should validate user assigned alpha 3 code if provided', () => { |
| 29 | + it('should validate user assigned ISO 3166-1 alpha 3 code if provided', () => { |
14 | 30 | test({ |
15 | 31 | validator: 'isISO31661Alpha3', |
16 | | - args: [{ userAssignedCodes: ['XXK', 'XXL'] }], |
| 32 | + args: [{ userAssignedCodes: ['XXK', 'xxl'] }], |
17 | 33 | valid: ['BEL', 'FRA', 'GBR', 'USA', 'XXK', 'XXL'], |
18 | 34 | invalid: ['XXA', 'GGG'], |
19 | 35 | }); |
20 | 36 | }); |
21 | 37 |
|
22 | | - it('should not validate user assigned alpha 3 not valid code if provided', () => { |
| 38 | + it('should not validate user assigned ISO 3166-1 alpha 3 not valid code if provided', () => { |
23 | 39 | test({ |
24 | 40 | validator: 'isISO31661Alpha3', |
25 | 41 | args: [{ userAssignedCodes: ['', 'x', 'XX', 'XXXX'] }], |
26 | 42 | valid: ['FRA'], |
27 | 43 | invalid: ['XX', 'XXXX', 'X'], |
28 | 44 | }); |
29 | 45 | }); |
| 46 | + |
| 47 | + it('should still validate ISO 3166-1 alpha 3 country codes if the options object is empty', () => { |
| 48 | + test({ |
| 49 | + validator: 'isISO31661Alpha3', |
| 50 | + args: [{}], |
| 51 | + valid: ['FRA', 'USA'], |
| 52 | + invalid: ['XXK'], |
| 53 | + }); |
| 54 | + }); |
| 55 | + |
| 56 | + it('should still validate ISO 3166-1 alpha 3 country codes if the userAssignedCodes option is empty', () => { |
| 57 | + test({ |
| 58 | + validator: 'isISO31661Alpha3', |
| 59 | + args: [{ userAssignedCodes: [] }], |
| 60 | + valid: ['FRA', 'USA'], |
| 61 | + invalid: ['XXK'], |
| 62 | + }); |
| 63 | + }); |
30 | 64 | }); |
0 commit comments