Commit 99f38aa7c6be5b06470b6bad79de6b92af9befb0
1 parent
68534cf30e
Exists in
master
Some test
Showing 1 changed file with 46 additions and 28 deletions Side-by-side Diff
test/main.js
... | ... | @@ -107,36 +107,54 @@ describe('#irs', function() { |
107 | 107 | .should.equal('NAMA:MASJID-NURUL-IMAN/DAYA:900/TARIF:S2/JMLBLN:1BLN/PERIODE:201912/METERKINI:19627/METERLALU:19428/TAGIHAN:79340/ADM:2500/DENDA:0/TOTALTAGIHAN:81840'); |
108 | 108 | }); |
109 | 109 | |
110 | - it('should return correct result with custom pattern', () => { | |
111 | - irs.getDetailFromMessage( | |
112 | - 'Cek Tagihan PLN SUKSES ke 520550410074, REFID: 520550410074/MASJID.. KATEGORI:S2/900 , PERIODE:092020, JUMLAH:1, TOTAL TAGIHAN : 72.010', | |
110 | + it('should return correct result with tajira response', () => { | |
111 | + const detailPattern = { | |
112 | + pattern: '(REFID: .*?)($|(, *SALDO))', | |
113 | + match_idx: 1, | |
114 | + }; | |
115 | + | |
116 | + const detailReplacements = [ | |
113 | 117 | { |
114 | - pattern: '(REFID: .*)$', | |
115 | - match_idx: 1, | |
118 | + pattern: ' *\\.\\.+ *', | |
119 | + replacement: '/', | |
120 | + flags: 'g', | |
116 | 121 | }, |
117 | - [ | |
118 | - { | |
119 | - pattern: ' *\\.\\.+ *', | |
120 | - replacement: '/', | |
121 | - flags: 'g', | |
122 | - }, | |
123 | - { | |
124 | - pattern: ' *, *', | |
125 | - replacement: '/', | |
126 | - flags: 'g', | |
127 | - }, | |
128 | - { | |
129 | - pattern: ' *: *', | |
130 | - replacement: ':', | |
131 | - flags: 'g', | |
132 | - }, | |
133 | - { | |
134 | - pattern: 'TOTAL TAGIHAN*', | |
135 | - replacement: 'TOTALTAGIHAN', | |
136 | - }, | |
137 | - ] | |
138 | - ) | |
139 | - .should.equal('REFID:520550410074/MASJID/KATEGORI:S2/900/PERIODE:092020/JUMLAH:1/TOTALTAGIHAN:72.010', 'TAJIRA PLN POSTPAID'); | |
122 | + { | |
123 | + pattern: ' *, *', | |
124 | + replacement: '/', | |
125 | + flags: 'g', | |
126 | + }, | |
127 | + { | |
128 | + pattern: ' *: *', | |
129 | + replacement: ':', | |
130 | + flags: 'g', | |
131 | + }, | |
132 | + { | |
133 | + pattern: 'TOTAL TAGIHAN*', | |
134 | + replacement: 'TOTALTAGIHAN', | |
135 | + }, | |
136 | + ] | |
137 | + | |
138 | + irs.getDetailFromMessage( | |
139 | + 'Cek Tagihan PLN SUKSES ke 520550410074, REFID: 520550410074/MASJID.. KATEGORI:S2/900 , PERIODE:092020, JUMLAH:1, TOTAL TAGIHAN : 72.010', | |
140 | + detailPattern, | |
141 | + detailReplacements | |
142 | + ).should.equal('REFID:520550410074/MASJID/KATEGORI:S2/900/PERIODE:092020/JUMLAH:1/TOTALTAGIHAN:72.010', 'TAJIRA PLN POSTPAID'); | |
143 | + | |
144 | + // const detailPattern2 = { | |
145 | + // pattern: '(REFID: .*), SALDO', | |
146 | + // match_idx: 1, | |
147 | + // }; | |
148 | + | |
149 | + irs.getDetailFromMessage( | |
150 | + 'CEK TAGIHAN PLNFULL SUKSES KE 520550388323, REFID: 52055038832320700700.. NAMA:MUSHOLA AL AMIN, KATEGORIDAYA:S2/450, PERIODE:092020, TAGIHANASLI:16620, DENDA:3000, ADMIN:2750, TOTALBAYAR:19.370, SALDO:500.000', | |
151 | + detailPattern, | |
152 | + detailReplacements | |
153 | + ).should.equal( | |
154 | + 'REFID:52055038832320700700/NAMA:MUSHOLA AL AMIN/KATEGORIDAYA:S2/450/PERIODE:092020/TAGIHANASLI:16620/DENDA:3000/ADMIN:2750/TOTALBAYAR:19.370', | |
155 | + 'TAJIRA PLN POSTPAID 2', | |
156 | + ); | |
157 | + | |
140 | 158 | }); |
141 | 159 | }); |
142 | 160 |