@@ -102,6 +102,109 @@ describe('BankAccount', () => {
102
102
} )
103
103
} )
104
104
105
+ describe ( '.parse' , ( ) => {
106
+ const testCases = [
107
+ [
108
+ '000000000' ,
109
+ [
110
+ ' _ _ _ _ _ _ _ _ _ ' ,
111
+ '| || || || || || || || || |' ,
112
+ '|_||_||_||_||_||_||_||_||_|'
113
+ ]
114
+ ] ,
115
+ [
116
+ '111111111' ,
117
+ [
118
+ ' ' ,
119
+ ' | | | | | | | | |' ,
120
+ ' | | | | | | | | |'
121
+ ]
122
+ ] ,
123
+ [
124
+ '222222222' ,
125
+ [
126
+ ' _ _ _ _ _ _ _ _ _ ' ,
127
+ ' _| _| _| _| _| _| _| _| _|' ,
128
+ '|_ |_ |_ |_ |_ |_ |_ |_ |_ '
129
+ ]
130
+ ] ,
131
+ [
132
+ '333333333' ,
133
+ [
134
+ ' _ _ _ _ _ _ _ _ _ ' ,
135
+ ' _| _| _| _| _| _| _| _| _|' ,
136
+ ' _| _| _| _| _| _| _| _| _|'
137
+ ]
138
+ ] ,
139
+ [
140
+ '444444444' ,
141
+ [
142
+ ' ' ,
143
+ '|_||_||_||_||_||_||_||_||_|' ,
144
+ ' | | | | | | | | |'
145
+ ]
146
+ ] ,
147
+ [
148
+ '555555555' ,
149
+ [
150
+ ' _ _ _ _ _ _ _ _ _ ' ,
151
+ '|_ |_ |_ |_ |_ |_ |_ |_ |_ ' ,
152
+ ' _| _| _| _| _| _| _| _| _|'
153
+ ]
154
+ ] ,
155
+ [
156
+ '666666666' ,
157
+ [
158
+ ' _ _ _ _ _ _ _ _ _ ' ,
159
+ '|_ |_ |_ |_ |_ |_ |_ |_ |_ ' ,
160
+ '|_||_||_||_||_||_||_||_||_|'
161
+ ]
162
+ ] ,
163
+ [
164
+ '777777777' ,
165
+ [
166
+ ' _ _ _ _ _ _ _ _ _ ' ,
167
+ ' | | | | | | | | |' ,
168
+ ' | | | | | | | | |'
169
+ ]
170
+ ] ,
171
+ [
172
+ '888888888' ,
173
+ [
174
+ ' _ _ _ _ _ _ _ _ _ ' ,
175
+ '|_||_||_||_||_||_||_||_||_|' ,
176
+ '|_||_||_||_||_||_||_||_||_|'
177
+ ]
178
+ ] ,
179
+ [
180
+ '999999999' ,
181
+ [
182
+ ' _ _ _ _ _ _ _ _ _ ' ,
183
+ '|_||_||_||_||_||_||_||_||_|' ,
184
+ ' _| _| _| _| _| _| _| _| _|'
185
+ ]
186
+ ] ,
187
+ [
188
+ '123456789' ,
189
+ [
190
+ ' _ _ _ _ _ _ _ ' ,
191
+ ' | _| _||_||_ |_ ||_||_|' ,
192
+ ' ||_ _| | _||_| ||_| _|'
193
+ ]
194
+ ]
195
+ ]
196
+
197
+ testCases . forEach ( ( [ parsed , text ] ) => {
198
+ describe ( `when text is ${ parsed } ` , ( ) => {
199
+ const bankAccount = BankAccount . parse ( text . join ( '\n' ) )
200
+
201
+ it ( 'parses the expected bank account' , ( ) => {
202
+ expect ( bankAccount . format ( ) ) . toBe ( parsed )
203
+ } )
204
+ } )
205
+ } )
206
+ } )
207
+
105
208
describe ( 'constructor' , ( ) => {
106
209
const number = '345882865'
107
210
const digits = ''
0 commit comments