Commit 99f38aa7c6be5b06470b6bad79de6b92af9befb0

Authored by Adhidarma Hadiwinoto
1 parent 68534cf30e
Exists in master

Some test

Showing 1 changed file with 46 additions and 28 deletions Side-by-side Diff

... ... @@ -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