-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsolution.spec.ts
66 lines (58 loc) · 3.39 KB
/
solution.spec.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import type { Equal, Expect } from 'type-testing'
import type { ToAsciiArt } from './solution'
describe('Challenge 20: turn a string into an ASCII art', () => {
it('Test 01', () => {
type Actual = ToAsciiArt<' * : * Merry * : * \n Christmas '>
type Expected = [
'░░░░░#░░░█▄░▄█ █▀▀ █▀█ █▀█ █ █ ░░░#░░░░░',
'░░░#░░░#░█ ▀ █ █▀▀ ██▀ ██▀ ▀█▀ ░#░░░#░░░',
'░░░░░#░░░▀ ░░▀ ▀▀▀ ▀ ▀ ▀ ▀ ░▀ ░░░░#░░░░░',
'░░█▀▀ █ █ █▀█ █ █▀▀ ▀█▀ █▄░▄█ █▀█ █▀▀ ░░',
'░░█ ░░█▀█ ██▀ █ ▀▀█ ░█ ░█ ▀ █ █▀█ ▀▀█ ░░',
'░░▀▀▀ ▀ ▀ ▀ ▀ ▀ ▀▀▀ ░▀ ░▀ ░░▀ ▀ ▀ ▀▀▀ ░░',
]
type Test = Expect<Equal<Actual, Expected>>
})
it('Test 02', () => {
type Actual = ToAsciiArt<' Happy new \n * : * : * Year * : * : * '>
type Expected = [
'░░█ █ █▀█ █▀█ █▀█ █ █ ░█▄░█ █▀▀ █ ░░█ ░░',
'░░█▀█ █▀█ █▀▀ █▀▀ ▀█▀ ░█ ▀█ █▀▀ █▄▀▄█ ░░',
'░░▀ ▀ ▀ ▀ ▀ ░░▀ ░░░▀ ░░▀ ░▀ ▀▀▀ ▀ ░ ▀ ░░',
'░░░░#░░░#░░░█ █ █▀▀ █▀█ █▀█ ░░░#░░░#░░░░',
'░░#░░░#░░░#░▀█▀ █▀▀ █▀█ ██▀ ░#░░░#░░░#░░',
'░░░░#░░░#░░░░▀ ░▀▀▀ ▀ ▀ ▀ ▀ ░░░#░░░#░░░░',
]
type Test = Expect<Equal<Actual, Expected>>
})
it('Test 03', () => {
type Actual = ToAsciiArt<' * : * : * : * : * : * \n Trash \n * : * : * : * : * : * '>
type Expected = [
'░░░░#░░░#░░░#░░░#░░░#░░░',
'░░#░░░#░░░#░░░#░░░#░░░#░',
'░░░░#░░░#░░░#░░░#░░░#░░░',
'░░▀█▀ █▀█ █▀█ █▀▀ █ █ ░░',
'░░░█ ░██▀ █▀█ ▀▀█ █▀█ ░░',
'░░░▀ ░▀ ▀ ▀ ▀ ▀▀▀ ▀ ▀ ░░',
'░░░░#░░░#░░░#░░░#░░░#░░░',
'░░#░░░#░░░#░░░#░░░#░░░#░',
'░░░░#░░░#░░░#░░░#░░░#░░░',
]
type Test = Expect<Equal<Actual, Expected>>
})
it('Test 04', () => {
type Actual = ToAsciiArt<' : * : * : * : * : * : * : \n Ecyrbe \n : * : * : * : * : * : * : '>
type Expected = [
'░░#░░░#░░░#░░░#░░░#░░░#░░░#░',
'░░░░#░░░#░░░#░░░#░░░#░░░#░░░',
'░░#░░░#░░░#░░░#░░░#░░░#░░░#░',
'░░█▀▀ █▀▀ █ █ █▀█ █▀▄ █▀▀ ░░',
'░░█▀▀ █ ░░▀█▀ ██▀ █▀▄ █▀▀ ░░',
'░░▀▀▀ ▀▀▀ ░▀ ░▀ ▀ ▀▀ ▀▀▀ ░░',
'░░#░░░#░░░#░░░#░░░#░░░#░░░#░',
'░░░░#░░░#░░░#░░░#░░░#░░░#░░░',
'░░#░░░#░░░#░░░#░░░#░░░#░░░#░',
]
type Test = Expect<Equal<Actual, Expected>>
})
})