bible-ref-parse 3.0.14 → 3.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/am-bcv-parser.js +7218 -0
  2. package/dist/am-bcv-parser.min.js +1 -0
  3. package/dist/bb-bcv-parser.js +7247 -0
  4. package/dist/bb-bcv-parser.min.js +1 -0
  5. package/dist/bn-bcv-parser.js +7229 -0
  6. package/dist/bn-bcv-parser.min.js +1 -0
  7. package/dist/ee-bcv-parser.js +7127 -0
  8. package/dist/ee-bcv-parser.min.js +1 -0
  9. package/dist/hl-bcv-parser.js +7127 -0
  10. package/dist/hl-bcv-parser.min.js +1 -0
  11. package/dist/id-bcv-parser.js +7116 -0
  12. package/dist/id-bcv-parser.min.js +1 -0
  13. package/dist/lu-bcv-parser.js +7203 -0
  14. package/dist/lu-bcv-parser.min.js +1 -0
  15. package/dist/mg-bcv-parser.js +7116 -0
  16. package/dist/mg-bcv-parser.min.js +1 -0
  17. package/dist/mq-bcv-parser.js +7114 -0
  18. package/dist/mq-bcv-parser.min.js +1 -0
  19. package/dist/nd-bcv-parser.js +7116 -0
  20. package/dist/nd-bcv-parser.min.js +1 -0
  21. package/dist/ny-bcv-parser.js +7125 -0
  22. package/dist/ny-bcv-parser.min.js +1 -0
  23. package/dist/si-bcv-parser.js +7171 -0
  24. package/dist/si-bcv-parser.min.js +1 -0
  25. package/dist/test/am.spec.js +1939 -0
  26. package/dist/test/bb.spec.js +2083 -0
  27. package/dist/test/bn.spec.js +2340 -0
  28. package/dist/test/ee.spec.js +1781 -0
  29. package/dist/test/hl.spec.js +1771 -0
  30. package/dist/test/id.spec.js +1757 -0
  31. package/dist/test/lu.spec.js +1759 -0
  32. package/dist/test/mg.spec.js +1783 -0
  33. package/dist/test/mq.spec.js +1745 -0
  34. package/dist/test/nd.spec.js +1781 -0
  35. package/dist/test/ny.spec.js +1791 -0
  36. package/dist/test/si.spec.js +1797 -0
  37. package/dist/test/zu.spec.js +2075 -0
  38. package/dist/zu-bcv-parser.js +7236 -0
  39. package/dist/zu-bcv-parser.min.js +1 -0
  40. package/package.json +1 -1
@@ -0,0 +1,2340 @@
1
+ (function() {
2
+ var bcv_parser;
3
+
4
+ bcv_parser = require("../../dist/bn-bcv-parser.js").bcv_parser;
5
+
6
+ describe("Parsing (bn)", function() {
7
+ var p;
8
+ p = {};
9
+ beforeEach(function() {
10
+ p = new bcv_parser();
11
+ p.options.osis_compaction_strategy = "b";
12
+ p.options.sequence_combination_strategy = "combine";
13
+ });
14
+ it("should round-trip OSIS references", function() {
15
+ var bc, bcv, bcv_range, book, books, i, len;
16
+ p.set_options({
17
+ osis_compaction_strategy: "bc"
18
+ });
19
+ books = ["Gen", "Exod", "Lev", "Num", "Deut", "Josh", "Judg", "Ruth", "1Sam", "2Sam", "1Kgs", "2Kgs", "1Chr", "2Chr", "Ezra", "Neh", "Esth", "Job", "Ps", "Prov", "Eccl", "Song", "Isa", "Jer", "Lam", "Ezek", "Dan", "Hos", "Joel", "Amos", "Obad", "Jonah", "Mic", "Nah", "Hab", "Zeph", "Hag", "Zech", "Mal", "Matt", "Mark", "Luke", "John", "Acts", "Rom", "1Cor", "2Cor", "Gal", "Eph", "Phil", "Col", "1Thess", "2Thess", "1Tim", "2Tim", "Titus", "Phlm", "Heb", "Jas", "1Pet", "2Pet", "1John", "2John", "3John", "Jude", "Rev"];
20
+ for (i = 0, len = books.length; i < len; i++) {
21
+ book = books[i];
22
+ bc = book + ".1";
23
+ bcv = bc + ".1";
24
+ bcv_range = bcv + "-" + bc + ".2";
25
+ expect(p.parse(bc).osis()).toEqual(bc);
26
+ expect(p.parse(bcv).osis()).toEqual(bcv);
27
+ expect(p.parse(bcv_range).osis()).toEqual(bcv_range);
28
+ }
29
+ });
30
+ it("should round-trip OSIS Apocrypha references", function() {
31
+ var bc, bcv, bcv_range, book, books, i, j, len, len1;
32
+ p.set_options({
33
+ osis_compaction_strategy: "bc",
34
+ ps151_strategy: "b"
35
+ });
36
+ p.include_apocrypha(true);
37
+ books = ["Tob", "Jdt", "GkEsth", "Wis", "Sir", "Bar", "PrAzar", "Sus", "Bel", "SgThree", "EpJer", "1Macc", "2Macc", "3Macc", "4Macc", "1Esd", "2Esd", "PrMan", "Ps151"];
38
+ for (i = 0, len = books.length; i < len; i++) {
39
+ book = books[i];
40
+ bc = book + ".1";
41
+ bcv = bc + ".1";
42
+ bcv_range = bcv + "-" + bc + ".2";
43
+ expect(p.parse(bc).osis()).toEqual(bc);
44
+ expect(p.parse(bcv).osis()).toEqual(bcv);
45
+ expect(p.parse(bcv_range).osis()).toEqual(bcv_range);
46
+ }
47
+ p.set_options({
48
+ ps151_strategy: "bc"
49
+ });
50
+ expect(p.parse("Ps151.1").osis()).toEqual("Ps.151");
51
+ expect(p.parse("Ps151.1.1").osis()).toEqual("Ps.151.1");
52
+ expect(p.parse("Ps151.1-Ps151.2").osis()).toEqual("Ps.151.1-Ps.151.2");
53
+ p.include_apocrypha(false);
54
+ for (j = 0, len1 = books.length; j < len1; j++) {
55
+ book = books[j];
56
+ bc = book + ".1";
57
+ expect(p.parse(bc).osis()).toEqual("");
58
+ }
59
+ });
60
+ it("should handle a preceding character", function() {
61
+ expect(p.parse(" Gen 1").osis()).toEqual("Gen.1");
62
+ expect(p.parse("Matt5John3").osis()).toEqual("Matt.5,John.3");
63
+ expect(p.parse("1Ps 1").osis()).toEqual("");
64
+ expect(p.parse("11Sam 1").osis()).toEqual("");
65
+ });
66
+ });
67
+
68
+ describe("Localized book Gen (bn)", function() {
69
+ var p;
70
+ p = {};
71
+ beforeEach(function() {
72
+ p = new bcv_parser();
73
+ p.set_options({
74
+ book_alone_strategy: "ignore",
75
+ book_sequence_strategy: "ignore",
76
+ osis_compaction_strategy: "bc",
77
+ captive_end_digits_strategy: "delete"
78
+ });
79
+ p.include_apocrypha(true);
80
+ });
81
+ it("should handle book: Gen (bn)", function() {
82
+ expect(p.parse("উৎপত্তি 1:1").osis()).toEqual("Gen.1.1", "parsing: 'উৎপত্তি 1:1'");
83
+ expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'");
84
+ expect(p.parse("উৎ 1:1").osis()).toEqual("Gen.1.1", "parsing: 'উৎ 1:1'");
85
+ p.include_apocrypha(false);
86
+ expect(p.parse("উৎপত্তি 1:1").osis()).toEqual("Gen.1.1", "parsing: 'উৎপত্তি 1:1'");
87
+ expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'");
88
+ expect(p.parse("উৎ 1:1").osis()).toEqual("Gen.1.1", "parsing: 'উৎ 1:1'");
89
+ });
90
+ });
91
+
92
+ describe("Localized book Exod (bn)", function() {
93
+ var p;
94
+ p = {};
95
+ beforeEach(function() {
96
+ p = new bcv_parser();
97
+ p.set_options({
98
+ book_alone_strategy: "ignore",
99
+ book_sequence_strategy: "ignore",
100
+ osis_compaction_strategy: "bc",
101
+ captive_end_digits_strategy: "delete"
102
+ });
103
+ p.include_apocrypha(true);
104
+ });
105
+ it("should handle book: Exod (bn)", function() {
106
+ expect(p.parse("প্রস্থান 1:1").osis()).toEqual("Exod.1.1", "parsing: 'প্রস্থান 1:1'");
107
+ expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'");
108
+ expect(p.parse("প্র 1:1").osis()).toEqual("Exod.1.1", "parsing: 'প্র 1:1'");
109
+ p.include_apocrypha(false);
110
+ expect(p.parse("প্রস্থান 1:1").osis()).toEqual("Exod.1.1", "parsing: 'প্রস্থান 1:1'");
111
+ expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'");
112
+ expect(p.parse("প্র 1:1").osis()).toEqual("Exod.1.1", "parsing: 'প্র 1:1'");
113
+ });
114
+ });
115
+
116
+ describe("Localized book Bel (bn)", function() {
117
+ var p;
118
+ p = {};
119
+ beforeEach(function() {
120
+ p = new bcv_parser();
121
+ p.set_options({
122
+ book_alone_strategy: "ignore",
123
+ book_sequence_strategy: "ignore",
124
+ osis_compaction_strategy: "bc",
125
+ captive_end_digits_strategy: "delete"
126
+ });
127
+ p.include_apocrypha(true);
128
+ });
129
+ it("should handle book: Bel (bn)", function() {
130
+ expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'");
131
+ });
132
+ });
133
+
134
+ describe("Localized book Lev (bn)", function() {
135
+ var p;
136
+ p = {};
137
+ beforeEach(function() {
138
+ p = new bcv_parser();
139
+ p.set_options({
140
+ book_alone_strategy: "ignore",
141
+ book_sequence_strategy: "ignore",
142
+ osis_compaction_strategy: "bc",
143
+ captive_end_digits_strategy: "delete"
144
+ });
145
+ p.include_apocrypha(true);
146
+ });
147
+ it("should handle book: Lev (bn)", function() {
148
+ expect(p.parse("লেবীয় পুস্তক 1:1").osis()).toEqual("Lev.1.1", "parsing: 'লেবীয় পুস্তক 1:1'");
149
+ expect(p.parse("লেবী 1:1").osis()).toEqual("Lev.1.1", "parsing: 'লেবী 1:1'");
150
+ expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'");
151
+ p.include_apocrypha(false);
152
+ expect(p.parse("লেবীয় পুস্তক 1:1").osis()).toEqual("Lev.1.1", "parsing: 'লেবীয় পুস্তক 1:1'");
153
+ expect(p.parse("লেবী 1:1").osis()).toEqual("Lev.1.1", "parsing: 'লেবী 1:1'");
154
+ expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'");
155
+ });
156
+ });
157
+
158
+ describe("Localized book Num (bn)", function() {
159
+ var p;
160
+ p = {};
161
+ beforeEach(function() {
162
+ p = new bcv_parser();
163
+ p.set_options({
164
+ book_alone_strategy: "ignore",
165
+ book_sequence_strategy: "ignore",
166
+ osis_compaction_strategy: "bc",
167
+ captive_end_digits_strategy: "delete"
168
+ });
169
+ p.include_apocrypha(true);
170
+ });
171
+ it("should handle book: Num (bn)", function() {
172
+ expect(p.parse("গণনা 1:1").osis()).toEqual("Num.1.1", "parsing: 'গণনা 1:1'");
173
+ expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'");
174
+ expect(p.parse("গণ 1:1").osis()).toEqual("Num.1.1", "parsing: 'গণ 1:1'");
175
+ p.include_apocrypha(false);
176
+ expect(p.parse("গণনা 1:1").osis()).toEqual("Num.1.1", "parsing: 'গণনা 1:1'");
177
+ expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'");
178
+ expect(p.parse("গণ 1:1").osis()).toEqual("Num.1.1", "parsing: 'গণ 1:1'");
179
+ });
180
+ });
181
+
182
+ describe("Localized book Sir (bn)", function() {
183
+ var p;
184
+ p = {};
185
+ beforeEach(function() {
186
+ p = new bcv_parser();
187
+ p.set_options({
188
+ book_alone_strategy: "ignore",
189
+ book_sequence_strategy: "ignore",
190
+ osis_compaction_strategy: "bc",
191
+ captive_end_digits_strategy: "delete"
192
+ });
193
+ p.include_apocrypha(true);
194
+ });
195
+ it("should handle book: Sir (bn)", function() {
196
+ expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'");
197
+ });
198
+ });
199
+
200
+ describe("Localized book Wis (bn)", function() {
201
+ var p;
202
+ p = {};
203
+ beforeEach(function() {
204
+ p = new bcv_parser();
205
+ p.set_options({
206
+ book_alone_strategy: "ignore",
207
+ book_sequence_strategy: "ignore",
208
+ osis_compaction_strategy: "bc",
209
+ captive_end_digits_strategy: "delete"
210
+ });
211
+ p.include_apocrypha(true);
212
+ });
213
+ it("should handle book: Wis (bn)", function() {
214
+ expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'");
215
+ });
216
+ });
217
+
218
+ describe("Localized book Lam (bn)", function() {
219
+ var p;
220
+ p = {};
221
+ beforeEach(function() {
222
+ p = new bcv_parser();
223
+ p.set_options({
224
+ book_alone_strategy: "ignore",
225
+ book_sequence_strategy: "ignore",
226
+ osis_compaction_strategy: "bc",
227
+ captive_end_digits_strategy: "delete"
228
+ });
229
+ p.include_apocrypha(true);
230
+ });
231
+ it("should handle book: Lam (bn)", function() {
232
+ expect(p.parse("বিলাপগীতি 1:1").osis()).toEqual("Lam.1.1", "parsing: 'বিলাপগীতি 1:1'");
233
+ expect(p.parse("বিলা 1:1").osis()).toEqual("Lam.1.1", "parsing: 'বিলা 1:1'");
234
+ expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'");
235
+ p.include_apocrypha(false);
236
+ expect(p.parse("বিলাপগীতি 1:1").osis()).toEqual("Lam.1.1", "parsing: 'বিলাপগীতি 1:1'");
237
+ expect(p.parse("বিলা 1:1").osis()).toEqual("Lam.1.1", "parsing: 'বিলা 1:1'");
238
+ expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'");
239
+ });
240
+ });
241
+
242
+ describe("Localized book EpJer (bn)", function() {
243
+ var p;
244
+ p = {};
245
+ beforeEach(function() {
246
+ p = new bcv_parser();
247
+ p.set_options({
248
+ book_alone_strategy: "ignore",
249
+ book_sequence_strategy: "ignore",
250
+ osis_compaction_strategy: "bc",
251
+ captive_end_digits_strategy: "delete"
252
+ });
253
+ p.include_apocrypha(true);
254
+ });
255
+ it("should handle book: EpJer (bn)", function() {
256
+ expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'");
257
+ });
258
+ });
259
+
260
+ describe("Localized book Rev (bn)", function() {
261
+ var p;
262
+ p = {};
263
+ beforeEach(function() {
264
+ p = new bcv_parser();
265
+ p.set_options({
266
+ book_alone_strategy: "ignore",
267
+ book_sequence_strategy: "ignore",
268
+ osis_compaction_strategy: "bc",
269
+ captive_end_digits_strategy: "delete"
270
+ });
271
+ p.include_apocrypha(true);
272
+ });
273
+ it("should handle book: Rev (bn)", function() {
274
+ expect(p.parse("প্রকাশিত বাক্য 1:1").osis()).toEqual("Rev.1.1", "parsing: 'প্রকাশিত বাক্য 1:1'");
275
+ expect(p.parse("প্রকা 1:1").osis()).toEqual("Rev.1.1", "parsing: 'প্রকা 1:1'");
276
+ expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'");
277
+ p.include_apocrypha(false);
278
+ expect(p.parse("প্রকাশিত বাক্য 1:1").osis()).toEqual("Rev.1.1", "parsing: 'প্রকাশিত বাক্য 1:1'");
279
+ expect(p.parse("প্রকা 1:1").osis()).toEqual("Rev.1.1", "parsing: 'প্রকা 1:1'");
280
+ expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'");
281
+ });
282
+ });
283
+
284
+ describe("Localized book PrMan (bn)", function() {
285
+ var p;
286
+ p = {};
287
+ beforeEach(function() {
288
+ p = new bcv_parser();
289
+ p.set_options({
290
+ book_alone_strategy: "ignore",
291
+ book_sequence_strategy: "ignore",
292
+ osis_compaction_strategy: "bc",
293
+ captive_end_digits_strategy: "delete"
294
+ });
295
+ p.include_apocrypha(true);
296
+ });
297
+ it("should handle book: PrMan (bn)", function() {
298
+ expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'");
299
+ });
300
+ });
301
+
302
+ describe("Localized book Deut (bn)", function() {
303
+ var p;
304
+ p = {};
305
+ beforeEach(function() {
306
+ p = new bcv_parser();
307
+ p.set_options({
308
+ book_alone_strategy: "ignore",
309
+ book_sequence_strategy: "ignore",
310
+ osis_compaction_strategy: "bc",
311
+ captive_end_digits_strategy: "delete"
312
+ });
313
+ p.include_apocrypha(true);
314
+ });
315
+ it("should handle book: Deut (bn)", function() {
316
+ expect(p.parse("বিবরণ 1:1").osis()).toEqual("Deut.1.1", "parsing: 'বিবরণ 1:1'");
317
+ expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'");
318
+ expect(p.parse("বিব 1:1").osis()).toEqual("Deut.1.1", "parsing: 'বিব 1:1'");
319
+ p.include_apocrypha(false);
320
+ expect(p.parse("বিবরণ 1:1").osis()).toEqual("Deut.1.1", "parsing: 'বিবরণ 1:1'");
321
+ expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'");
322
+ expect(p.parse("বিব 1:1").osis()).toEqual("Deut.1.1", "parsing: 'বিব 1:1'");
323
+ });
324
+ });
325
+
326
+ describe("Localized book Josh (bn)", function() {
327
+ var p;
328
+ p = {};
329
+ beforeEach(function() {
330
+ p = new bcv_parser();
331
+ p.set_options({
332
+ book_alone_strategy: "ignore",
333
+ book_sequence_strategy: "ignore",
334
+ osis_compaction_strategy: "bc",
335
+ captive_end_digits_strategy: "delete"
336
+ });
337
+ p.include_apocrypha(true);
338
+ });
339
+ it("should handle book: Josh (bn)", function() {
340
+ expect(p.parse("যিহোশূয় 1:1").osis()).toEqual("Josh.1.1", "parsing: 'যিহোশূয় 1:1'");
341
+ expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'");
342
+ expect(p.parse("যিহ 1:1").osis()).toEqual("Josh.1.1", "parsing: 'যিহ 1:1'");
343
+ p.include_apocrypha(false);
344
+ expect(p.parse("যিহোশূয় 1:1").osis()).toEqual("Josh.1.1", "parsing: 'যিহোশূয় 1:1'");
345
+ expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'");
346
+ expect(p.parse("যিহ 1:1").osis()).toEqual("Josh.1.1", "parsing: 'যিহ 1:1'");
347
+ });
348
+ });
349
+
350
+ describe("Localized book Judg (bn)", function() {
351
+ var p;
352
+ p = {};
353
+ beforeEach(function() {
354
+ p = new bcv_parser();
355
+ p.set_options({
356
+ book_alone_strategy: "ignore",
357
+ book_sequence_strategy: "ignore",
358
+ osis_compaction_strategy: "bc",
359
+ captive_end_digits_strategy: "delete"
360
+ });
361
+ p.include_apocrypha(true);
362
+ });
363
+ it("should handle book: Judg (bn)", function() {
364
+ expect(p.parse("বিচারকগণ 1:1").osis()).toEqual("Judg.1.1", "parsing: 'বিচারকগণ 1:1'");
365
+ expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'");
366
+ expect(p.parse("বি 1:1").osis()).toEqual("Judg.1.1", "parsing: 'বি 1:1'");
367
+ p.include_apocrypha(false);
368
+ expect(p.parse("বিচারকগণ 1:1").osis()).toEqual("Judg.1.1", "parsing: 'বিচারকগণ 1:1'");
369
+ expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'");
370
+ expect(p.parse("বি 1:1").osis()).toEqual("Judg.1.1", "parsing: 'বি 1:1'");
371
+ });
372
+ });
373
+
374
+ describe("Localized book Ruth (bn)", function() {
375
+ var p;
376
+ p = {};
377
+ beforeEach(function() {
378
+ p = new bcv_parser();
379
+ p.set_options({
380
+ book_alone_strategy: "ignore",
381
+ book_sequence_strategy: "ignore",
382
+ osis_compaction_strategy: "bc",
383
+ captive_end_digits_strategy: "delete"
384
+ });
385
+ p.include_apocrypha(true);
386
+ });
387
+ it("should handle book: Ruth (bn)", function() {
388
+ expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'");
389
+ expect(p.parse("রূত 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'রূত 1:1'");
390
+ expect(p.parse("রূ 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'রূ 1:1'");
391
+ p.include_apocrypha(false);
392
+ expect(p.parse("RUTH 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTH 1:1'");
393
+ expect(p.parse("রূত 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'রূত 1:1'");
394
+ expect(p.parse("রূ 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'রূ 1:1'");
395
+ });
396
+ });
397
+
398
+ describe("Localized book 1Esd (bn)", function() {
399
+ var p;
400
+ p = {};
401
+ beforeEach(function() {
402
+ p = new bcv_parser();
403
+ p.set_options({
404
+ book_alone_strategy: "ignore",
405
+ book_sequence_strategy: "ignore",
406
+ osis_compaction_strategy: "bc",
407
+ captive_end_digits_strategy: "delete"
408
+ });
409
+ p.include_apocrypha(true);
410
+ });
411
+ it("should handle book: 1Esd (bn)", function() {
412
+ expect(p.parse("1Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1Esd 1:1'");
413
+ });
414
+ });
415
+
416
+ describe("Localized book 2Esd (bn)", function() {
417
+ var p;
418
+ p = {};
419
+ beforeEach(function() {
420
+ p = new bcv_parser();
421
+ p.set_options({
422
+ book_alone_strategy: "ignore",
423
+ book_sequence_strategy: "ignore",
424
+ osis_compaction_strategy: "bc",
425
+ captive_end_digits_strategy: "delete"
426
+ });
427
+ p.include_apocrypha(true);
428
+ });
429
+ it("should handle book: 2Esd (bn)", function() {
430
+ expect(p.parse("2Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2Esd 1:1'");
431
+ });
432
+ });
433
+
434
+ describe("Localized book Isa (bn)", function() {
435
+ var p;
436
+ p = {};
437
+ beforeEach(function() {
438
+ p = new bcv_parser();
439
+ p.set_options({
440
+ book_alone_strategy: "ignore",
441
+ book_sequence_strategy: "ignore",
442
+ osis_compaction_strategy: "bc",
443
+ captive_end_digits_strategy: "delete"
444
+ });
445
+ p.include_apocrypha(true);
446
+ });
447
+ it("should handle book: Isa (bn)", function() {
448
+ expect(p.parse("যিশাইয়া 1:1").osis()).toEqual("Isa.1.1", "parsing: 'যিশাইয়া 1:1'");
449
+ expect(p.parse("যিশা 1:1").osis()).toEqual("Isa.1.1", "parsing: 'যিশা 1:1'");
450
+ expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'");
451
+ p.include_apocrypha(false);
452
+ expect(p.parse("যিশাইয়া 1:1").osis()).toEqual("Isa.1.1", "parsing: 'যিশাইয়া 1:1'");
453
+ expect(p.parse("যিশা 1:1").osis()).toEqual("Isa.1.1", "parsing: 'যিশা 1:1'");
454
+ expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'");
455
+ });
456
+ });
457
+
458
+ describe("Localized book 2Sam (bn)", function() {
459
+ var p;
460
+ p = {};
461
+ beforeEach(function() {
462
+ p = new bcv_parser();
463
+ p.set_options({
464
+ book_alone_strategy: "ignore",
465
+ book_sequence_strategy: "ignore",
466
+ osis_compaction_strategy: "bc",
467
+ captive_end_digits_strategy: "delete"
468
+ });
469
+ p.include_apocrypha(true);
470
+ });
471
+ it("should handle book: 2Sam (bn)", function() {
472
+ expect(p.parse("2 শমূয়েল 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 শমূয়েল 1:1'");
473
+ expect(p.parse("২ শমূয়েল 1:1").osis()).toEqual("2Sam.1.1", "parsing: '২ শমূয়েল 1:1'");
474
+ expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'");
475
+ expect(p.parse("2শমূ 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2শমূ 1:1'");
476
+ expect(p.parse("২শমূ 1:1").osis()).toEqual("2Sam.1.1", "parsing: '২শমূ 1:1'");
477
+ });
478
+ it("should handle non-Latin digits in book: 2Sam (bn)", function() {
479
+ p.set_options({
480
+ non_latin_digits_strategy: "replace"
481
+ });
482
+ expect(p.parse("2 শমূয়েল 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 শমূয়েল 1:1'");
483
+ expect(p.parse("২ শমূয়েল 1:1").osis()).toEqual("2Sam.1.1", "parsing: '২ শমূয়েল 1:1'");
484
+ expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'");
485
+ expect(p.parse("2শমূ 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2শমূ 1:1'");
486
+ expect(p.parse("২শমূ 1:1").osis()).toEqual("2Sam.1.1", "parsing: '২শমূ 1:1'");
487
+ return;
488
+ p.include_apocrypha(false);
489
+ expect(p.parse("2 শমূয়েল 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 শমূয়েল 1:1'");
490
+ expect(p.parse("২ শমূয়েল 1:1").osis()).toEqual("2Sam.1.1", "parsing: '২ শমূয়েল 1:1'");
491
+ expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'");
492
+ expect(p.parse("2শমূ 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2শমূ 1:1'");
493
+ expect(p.parse("২শমূ 1:1").osis()).toEqual("2Sam.1.1", "parsing: '২শমূ 1:1'");
494
+ });
495
+ });
496
+
497
+ describe("Localized book 1Sam (bn)", function() {
498
+ var p;
499
+ p = {};
500
+ beforeEach(function() {
501
+ p = new bcv_parser();
502
+ p.set_options({
503
+ book_alone_strategy: "ignore",
504
+ book_sequence_strategy: "ignore",
505
+ osis_compaction_strategy: "bc",
506
+ captive_end_digits_strategy: "delete"
507
+ });
508
+ p.include_apocrypha(true);
509
+ });
510
+ it("should handle book: 1Sam (bn)", function() {
511
+ expect(p.parse("প্রথম শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'প্রথম শমূয়েল 1:1'");
512
+ expect(p.parse("1 শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 শমূয়েল 1:1'");
513
+ expect(p.parse("১ শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: '১ শমূয়েল 1:1'");
514
+ expect(p.parse("প্রথমশমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'প্রথমশমূ 1:1'");
515
+ expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'");
516
+ expect(p.parse("1শমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1শমূ 1:1'");
517
+ expect(p.parse("১শমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: '১শমূ 1:1'");
518
+ });
519
+ it("should handle non-Latin digits in book: 1Sam (bn)", function() {
520
+ p.set_options({
521
+ non_latin_digits_strategy: "replace"
522
+ });
523
+ expect(p.parse("প্রথম শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'প্রথম শমূয়েল 1:1'");
524
+ expect(p.parse("1 শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 শমূয়েল 1:1'");
525
+ expect(p.parse("১ শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: '১ শমূয়েল 1:1'");
526
+ expect(p.parse("প্রথমশমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'প্রথমশমূ 1:1'");
527
+ expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'");
528
+ expect(p.parse("1শমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1শমূ 1:1'");
529
+ expect(p.parse("১শমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: '১শমূ 1:1'");
530
+ return;
531
+ p.include_apocrypha(false);
532
+ expect(p.parse("প্রথম শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'প্রথম শমূয়েল 1:1'");
533
+ expect(p.parse("1 শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 শমূয়েল 1:1'");
534
+ expect(p.parse("১ শমূয়েল 1:1").osis()).toEqual("1Sam.1.1", "parsing: '১ শমূয়েল 1:1'");
535
+ expect(p.parse("প্রথমশমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'প্রথমশমূ 1:1'");
536
+ expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'");
537
+ expect(p.parse("1শমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1শমূ 1:1'");
538
+ expect(p.parse("১শমূ 1:1").osis()).toEqual("1Sam.1.1", "parsing: '১শমূ 1:1'");
539
+ });
540
+ });
541
+
542
+ describe("Localized book 2Kgs (bn)", function() {
543
+ var p;
544
+ p = {};
545
+ beforeEach(function() {
546
+ p = new bcv_parser();
547
+ p.set_options({
548
+ book_alone_strategy: "ignore",
549
+ book_sequence_strategy: "ignore",
550
+ osis_compaction_strategy: "bc",
551
+ captive_end_digits_strategy: "delete"
552
+ });
553
+ p.include_apocrypha(true);
554
+ });
555
+ it("should handle book: 2Kgs (bn)", function() {
556
+ expect(p.parse("2 রাজাবলী 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 রাজাবলী 1:1'");
557
+ expect(p.parse("২ রাজাবলী 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '২ রাজাবলী 1:1'");
558
+ expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'");
559
+ expect(p.parse("2রা 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2রা 1:1'");
560
+ expect(p.parse("২রা 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '২রা 1:1'");
561
+ });
562
+ it("should handle non-Latin digits in book: 2Kgs (bn)", function() {
563
+ p.set_options({
564
+ non_latin_digits_strategy: "replace"
565
+ });
566
+ expect(p.parse("2 রাজাবলী 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 রাজাবলী 1:1'");
567
+ expect(p.parse("২ রাজাবলী 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '২ রাজাবলী 1:1'");
568
+ expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'");
569
+ expect(p.parse("2রা 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2রা 1:1'");
570
+ expect(p.parse("২রা 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '২রা 1:1'");
571
+ return;
572
+ p.include_apocrypha(false);
573
+ expect(p.parse("2 রাজাবলী 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 রাজাবলী 1:1'");
574
+ expect(p.parse("২ রাজাবলী 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '২ রাজাবলী 1:1'");
575
+ expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'");
576
+ expect(p.parse("2রা 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2রা 1:1'");
577
+ expect(p.parse("২রা 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '২রা 1:1'");
578
+ });
579
+ });
580
+
581
+ describe("Localized book 1Kgs (bn)", function() {
582
+ var p;
583
+ p = {};
584
+ beforeEach(function() {
585
+ p = new bcv_parser();
586
+ p.set_options({
587
+ book_alone_strategy: "ignore",
588
+ book_sequence_strategy: "ignore",
589
+ osis_compaction_strategy: "bc",
590
+ captive_end_digits_strategy: "delete"
591
+ });
592
+ p.include_apocrypha(true);
593
+ });
594
+ it("should handle book: 1Kgs (bn)", function() {
595
+ expect(p.parse("প্রথম রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'প্রথম রাজাবলী 1:1'");
596
+ expect(p.parse("1 রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 রাজাবলী 1:1'");
597
+ expect(p.parse("১ রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '১ রাজাবলী 1:1'");
598
+ expect(p.parse("প্রথমরা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'প্রথমরা 1:1'");
599
+ expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'");
600
+ expect(p.parse("1রা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1রা 1:1'");
601
+ expect(p.parse("১রা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '১রা 1:1'");
602
+ });
603
+ it("should handle non-Latin digits in book: 1Kgs (bn)", function() {
604
+ p.set_options({
605
+ non_latin_digits_strategy: "replace"
606
+ });
607
+ expect(p.parse("প্রথম রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'প্রথম রাজাবলী 1:1'");
608
+ expect(p.parse("1 রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 রাজাবলী 1:1'");
609
+ expect(p.parse("১ রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '১ রাজাবলী 1:1'");
610
+ expect(p.parse("প্রথমরা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'প্রথমরা 1:1'");
611
+ expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'");
612
+ expect(p.parse("1রা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1রা 1:1'");
613
+ expect(p.parse("১রা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '১রা 1:1'");
614
+ return;
615
+ p.include_apocrypha(false);
616
+ expect(p.parse("প্রথম রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'প্রথম রাজাবলী 1:1'");
617
+ expect(p.parse("1 রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 রাজাবলী 1:1'");
618
+ expect(p.parse("১ রাজাবলী 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '১ রাজাবলী 1:1'");
619
+ expect(p.parse("প্রথমরা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'প্রথমরা 1:1'");
620
+ expect(p.parse("1KGS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1KGS 1:1'");
621
+ expect(p.parse("1রা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1রা 1:1'");
622
+ expect(p.parse("১রা 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '১রা 1:1'");
623
+ });
624
+ });
625
+
626
+ describe("Localized book 2Chr (bn)", function() {
627
+ var p;
628
+ p = {};
629
+ beforeEach(function() {
630
+ p = new bcv_parser();
631
+ p.set_options({
632
+ book_alone_strategy: "ignore",
633
+ book_sequence_strategy: "ignore",
634
+ osis_compaction_strategy: "bc",
635
+ captive_end_digits_strategy: "delete"
636
+ });
637
+ p.include_apocrypha(true);
638
+ });
639
+ it("should handle book: 2Chr (bn)", function() {
640
+ expect(p.parse("2 ইতিহাস 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 ইতিহাস 1:1'");
641
+ expect(p.parse("২ ইতিহাস 1:1").osis()).toEqual("2Chr.1.1", "parsing: '২ ইতিহাস 1:1'");
642
+ expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'");
643
+ expect(p.parse("2ইত 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2ইত 1:1'");
644
+ expect(p.parse("২ইত 1:1").osis()).toEqual("2Chr.1.1", "parsing: '২ইত 1:1'");
645
+ });
646
+ it("should handle non-Latin digits in book: 2Chr (bn)", function() {
647
+ p.set_options({
648
+ non_latin_digits_strategy: "replace"
649
+ });
650
+ expect(p.parse("2 ইতিহাস 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 ইতিহাস 1:1'");
651
+ expect(p.parse("২ ইতিহাস 1:1").osis()).toEqual("2Chr.1.1", "parsing: '২ ইতিহাস 1:1'");
652
+ expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'");
653
+ expect(p.parse("2ইত 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2ইত 1:1'");
654
+ expect(p.parse("২ইত 1:1").osis()).toEqual("2Chr.1.1", "parsing: '২ইত 1:1'");
655
+ return;
656
+ p.include_apocrypha(false);
657
+ expect(p.parse("2 ইতিহাস 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 ইতিহাস 1:1'");
658
+ expect(p.parse("২ ইতিহাস 1:1").osis()).toEqual("2Chr.1.1", "parsing: '২ ইতিহাস 1:1'");
659
+ expect(p.parse("2CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2CHR 1:1'");
660
+ expect(p.parse("2ইত 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2ইত 1:1'");
661
+ expect(p.parse("২ইত 1:1").osis()).toEqual("2Chr.1.1", "parsing: '২ইত 1:1'");
662
+ });
663
+ });
664
+
665
+ describe("Localized book 1Chr (bn)", function() {
666
+ var p;
667
+ p = {};
668
+ beforeEach(function() {
669
+ p = new bcv_parser();
670
+ p.set_options({
671
+ book_alone_strategy: "ignore",
672
+ book_sequence_strategy: "ignore",
673
+ osis_compaction_strategy: "bc",
674
+ captive_end_digits_strategy: "delete"
675
+ });
676
+ p.include_apocrypha(true);
677
+ });
678
+ it("should handle book: 1Chr (bn)", function() {
679
+ expect(p.parse("প্রথম ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'প্রথম ইতিহাস 1:1'");
680
+ expect(p.parse("1 ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 ইতিহাস 1:1'");
681
+ expect(p.parse("১ ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: '১ ইতিহাস 1:1'");
682
+ expect(p.parse("প্রথমইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'প্রথমইত 1:1'");
683
+ expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'");
684
+ expect(p.parse("1ইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ইত 1:1'");
685
+ expect(p.parse("১ইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: '১ইত 1:1'");
686
+ });
687
+ it("should handle non-Latin digits in book: 1Chr (bn)", function() {
688
+ p.set_options({
689
+ non_latin_digits_strategy: "replace"
690
+ });
691
+ expect(p.parse("প্রথম ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'প্রথম ইতিহাস 1:1'");
692
+ expect(p.parse("1 ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 ইতিহাস 1:1'");
693
+ expect(p.parse("১ ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: '১ ইতিহাস 1:1'");
694
+ expect(p.parse("প্রথমইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'প্রথমইত 1:1'");
695
+ expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'");
696
+ expect(p.parse("1ইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ইত 1:1'");
697
+ expect(p.parse("১ইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: '১ইত 1:1'");
698
+ return;
699
+ p.include_apocrypha(false);
700
+ expect(p.parse("প্রথম ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'প্রথম ইতিহাস 1:1'");
701
+ expect(p.parse("1 ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 ইতিহাস 1:1'");
702
+ expect(p.parse("১ ইতিহাস 1:1").osis()).toEqual("1Chr.1.1", "parsing: '১ ইতিহাস 1:1'");
703
+ expect(p.parse("প্রথমইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'প্রথমইত 1:1'");
704
+ expect(p.parse("1CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1CHR 1:1'");
705
+ expect(p.parse("1ইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ইত 1:1'");
706
+ expect(p.parse("১ইত 1:1").osis()).toEqual("1Chr.1.1", "parsing: '১ইত 1:1'");
707
+ });
708
+ });
709
+
710
+ describe("Localized book Ezra (bn)", function() {
711
+ var p;
712
+ p = {};
713
+ beforeEach(function() {
714
+ p = new bcv_parser();
715
+ p.set_options({
716
+ book_alone_strategy: "ignore",
717
+ book_sequence_strategy: "ignore",
718
+ osis_compaction_strategy: "bc",
719
+ captive_end_digits_strategy: "delete"
720
+ });
721
+ p.include_apocrypha(true);
722
+ });
723
+ it("should handle book: Ezra (bn)", function() {
724
+ expect(p.parse("Ezra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezra 1:1'");
725
+ expect(p.parse("এজরা 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'এজরা 1:1'");
726
+ expect(p.parse("এজ 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'এজ 1:1'");
727
+ p.include_apocrypha(false);
728
+ expect(p.parse("EZRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZRA 1:1'");
729
+ expect(p.parse("এজরা 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'এজরা 1:1'");
730
+ expect(p.parse("এজ 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'এজ 1:1'");
731
+ });
732
+ });
733
+
734
+ describe("Localized book Neh (bn)", function() {
735
+ var p;
736
+ p = {};
737
+ beforeEach(function() {
738
+ p = new bcv_parser();
739
+ p.set_options({
740
+ book_alone_strategy: "ignore",
741
+ book_sequence_strategy: "ignore",
742
+ osis_compaction_strategy: "bc",
743
+ captive_end_digits_strategy: "delete"
744
+ });
745
+ p.include_apocrypha(true);
746
+ });
747
+ it("should handle book: Neh (bn)", function() {
748
+ expect(p.parse("নেহেমিয়া 1:1").osis()).toEqual("Neh.1.1", "parsing: 'নেহেমিয়া 1:1'");
749
+ expect(p.parse("নেহে 1:1").osis()).toEqual("Neh.1.1", "parsing: 'নেহে 1:1'");
750
+ expect(p.parse("Neh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Neh 1:1'");
751
+ p.include_apocrypha(false);
752
+ expect(p.parse("নেহেমিয়া 1:1").osis()).toEqual("Neh.1.1", "parsing: 'নেহেমিয়া 1:1'");
753
+ expect(p.parse("নেহে 1:1").osis()).toEqual("Neh.1.1", "parsing: 'নেহে 1:1'");
754
+ expect(p.parse("NEH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEH 1:1'");
755
+ });
756
+ });
757
+
758
+ describe("Localized book GkEsth (bn)", function() {
759
+ var p;
760
+ p = {};
761
+ beforeEach(function() {
762
+ p = new bcv_parser();
763
+ p.set_options({
764
+ book_alone_strategy: "ignore",
765
+ book_sequence_strategy: "ignore",
766
+ osis_compaction_strategy: "bc",
767
+ captive_end_digits_strategy: "delete"
768
+ });
769
+ p.include_apocrypha(true);
770
+ });
771
+ it("should handle book: GkEsth (bn)", function() {
772
+ expect(p.parse("GkEsth 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'GkEsth 1:1'");
773
+ });
774
+ });
775
+
776
+ describe("Localized book Esth (bn)", function() {
777
+ var p;
778
+ p = {};
779
+ beforeEach(function() {
780
+ p = new bcv_parser();
781
+ p.set_options({
782
+ book_alone_strategy: "ignore",
783
+ book_sequence_strategy: "ignore",
784
+ osis_compaction_strategy: "bc",
785
+ captive_end_digits_strategy: "delete"
786
+ });
787
+ p.include_apocrypha(true);
788
+ });
789
+ it("should handle book: Esth (bn)", function() {
790
+ expect(p.parse("এস্তের 1:1").osis()).toEqual("Esth.1.1", "parsing: 'এস্তের 1:1'");
791
+ expect(p.parse("Esth 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esth 1:1'");
792
+ expect(p.parse("এস 1:1").osis()).toEqual("Esth.1.1", "parsing: 'এস 1:1'");
793
+ p.include_apocrypha(false);
794
+ expect(p.parse("এস্তের 1:1").osis()).toEqual("Esth.1.1", "parsing: 'এস্তের 1:1'");
795
+ expect(p.parse("ESTH 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTH 1:1'");
796
+ expect(p.parse("এস 1:1").osis()).toEqual("Esth.1.1", "parsing: 'এস 1:1'");
797
+ });
798
+ });
799
+
800
+ describe("Localized book Job (bn)", function() {
801
+ var p;
802
+ p = {};
803
+ beforeEach(function() {
804
+ p = new bcv_parser();
805
+ p.set_options({
806
+ book_alone_strategy: "ignore",
807
+ book_sequence_strategy: "ignore",
808
+ osis_compaction_strategy: "bc",
809
+ captive_end_digits_strategy: "delete"
810
+ });
811
+ p.include_apocrypha(true);
812
+ });
813
+ it("should handle book: Job (bn)", function() {
814
+ expect(p.parse("ইয়োব 1:1").osis()).toEqual("Job.1.1", "parsing: 'ইয়োব 1:1'");
815
+ expect(p.parse("Job 1:1").osis()).toEqual("Job.1.1", "parsing: 'Job 1:1'");
816
+ p.include_apocrypha(false);
817
+ expect(p.parse("ইয়োব 1:1").osis()).toEqual("Job.1.1", "parsing: 'ইয়োব 1:1'");
818
+ expect(p.parse("JOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JOB 1:1'");
819
+ });
820
+ });
821
+
822
+ describe("Localized book Ps (bn)", function() {
823
+ var p;
824
+ p = {};
825
+ beforeEach(function() {
826
+ p = new bcv_parser();
827
+ p.set_options({
828
+ book_alone_strategy: "ignore",
829
+ book_sequence_strategy: "ignore",
830
+ osis_compaction_strategy: "bc",
831
+ captive_end_digits_strategy: "delete"
832
+ });
833
+ p.include_apocrypha(true);
834
+ });
835
+ it("should handle book: Ps (bn)", function() {
836
+ expect(p.parse("গীতসংহিতা 1:1").osis()).toEqual("Ps.1.1", "parsing: 'গীতসংহিতা 1:1'");
837
+ expect(p.parse("Ps 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Ps 1:1'");
838
+ expect(p.parse("গী 1:1").osis()).toEqual("Ps.1.1", "parsing: 'গী 1:1'");
839
+ p.include_apocrypha(false);
840
+ expect(p.parse("গীতসংহিতা 1:1").osis()).toEqual("Ps.1.1", "parsing: 'গীতসংহিতা 1:1'");
841
+ expect(p.parse("PS 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PS 1:1'");
842
+ expect(p.parse("গী 1:1").osis()).toEqual("Ps.1.1", "parsing: 'গী 1:1'");
843
+ });
844
+ });
845
+
846
+ describe("Localized book PrAzar (bn)", function() {
847
+ var p;
848
+ p = {};
849
+ beforeEach(function() {
850
+ p = new bcv_parser();
851
+ p.set_options({
852
+ book_alone_strategy: "ignore",
853
+ book_sequence_strategy: "ignore",
854
+ osis_compaction_strategy: "bc",
855
+ captive_end_digits_strategy: "delete"
856
+ });
857
+ p.include_apocrypha(true);
858
+ });
859
+ it("should handle book: PrAzar (bn)", function() {
860
+ expect(p.parse("PrAzar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'PrAzar 1:1'");
861
+ });
862
+ });
863
+
864
+ describe("Localized book Prov (bn)", function() {
865
+ var p;
866
+ p = {};
867
+ beforeEach(function() {
868
+ p = new bcv_parser();
869
+ p.set_options({
870
+ book_alone_strategy: "ignore",
871
+ book_sequence_strategy: "ignore",
872
+ osis_compaction_strategy: "bc",
873
+ captive_end_digits_strategy: "delete"
874
+ });
875
+ p.include_apocrypha(true);
876
+ });
877
+ it("should handle book: Prov (bn)", function() {
878
+ expect(p.parse("Prov 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prov 1:1'");
879
+ expect(p.parse("বচন 1:1").osis()).toEqual("Prov.1.1", "parsing: 'বচন 1:1'");
880
+ expect(p.parse("বচ 1:1").osis()).toEqual("Prov.1.1", "parsing: 'বচ 1:1'");
881
+ p.include_apocrypha(false);
882
+ expect(p.parse("PROV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROV 1:1'");
883
+ expect(p.parse("বচন 1:1").osis()).toEqual("Prov.1.1", "parsing: 'বচন 1:1'");
884
+ expect(p.parse("বচ 1:1").osis()).toEqual("Prov.1.1", "parsing: 'বচ 1:1'");
885
+ });
886
+ });
887
+
888
+ describe("Localized book Eccl (bn)", function() {
889
+ var p;
890
+ p = {};
891
+ beforeEach(function() {
892
+ p = new bcv_parser();
893
+ p.set_options({
894
+ book_alone_strategy: "ignore",
895
+ book_sequence_strategy: "ignore",
896
+ osis_compaction_strategy: "bc",
897
+ captive_end_digits_strategy: "delete"
898
+ });
899
+ p.include_apocrypha(true);
900
+ });
901
+ it("should handle book: Eccl (bn)", function() {
902
+ expect(p.parse("প্রচারক 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'প্রচারক 1:1'");
903
+ expect(p.parse("Eccl 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eccl 1:1'");
904
+ expect(p.parse("প্রচ 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'প্রচ 1:1'");
905
+ p.include_apocrypha(false);
906
+ expect(p.parse("প্রচারক 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'প্রচারক 1:1'");
907
+ expect(p.parse("ECCL 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCL 1:1'");
908
+ expect(p.parse("প্রচ 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'প্রচ 1:1'");
909
+ });
910
+ });
911
+
912
+ describe("Localized book SgThree (bn)", function() {
913
+ var p;
914
+ p = {};
915
+ beforeEach(function() {
916
+ p = new bcv_parser();
917
+ p.set_options({
918
+ book_alone_strategy: "ignore",
919
+ book_sequence_strategy: "ignore",
920
+ osis_compaction_strategy: "bc",
921
+ captive_end_digits_strategy: "delete"
922
+ });
923
+ p.include_apocrypha(true);
924
+ });
925
+ it("should handle book: SgThree (bn)", function() {
926
+ expect(p.parse("SgThree 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'SgThree 1:1'");
927
+ });
928
+ });
929
+
930
+ describe("Localized book Song (bn)", function() {
931
+ var p;
932
+ p = {};
933
+ beforeEach(function() {
934
+ p = new bcv_parser();
935
+ p.set_options({
936
+ book_alone_strategy: "ignore",
937
+ book_sequence_strategy: "ignore",
938
+ osis_compaction_strategy: "bc",
939
+ captive_end_digits_strategy: "delete"
940
+ });
941
+ p.include_apocrypha(true);
942
+ });
943
+ it("should handle book: Song (bn)", function() {
944
+ expect(p.parse("গীতগান 1:1").osis()).toEqual("Song.1.1", "parsing: 'গীতগান 1:1'");
945
+ expect(p.parse("Song 1:1").osis()).toEqual("Song.1.1", "parsing: 'Song 1:1'");
946
+ expect(p.parse("গী 1:1").osis()).toEqual("Song.1.1", "parsing: 'গী 1:1'");
947
+ p.include_apocrypha(false);
948
+ expect(p.parse("গীতগান 1:1").osis()).toEqual("Song.1.1", "parsing: 'গীতগান 1:1'");
949
+ expect(p.parse("SONG 1:1").osis()).toEqual("Song.1.1", "parsing: 'SONG 1:1'");
950
+ expect(p.parse("গী 1:1").osis()).toEqual("Song.1.1", "parsing: 'গী 1:1'");
951
+ });
952
+ });
953
+
954
+ describe("Localized book Jer (bn)", function() {
955
+ var p;
956
+ p = {};
957
+ beforeEach(function() {
958
+ p = new bcv_parser();
959
+ p.set_options({
960
+ book_alone_strategy: "ignore",
961
+ book_sequence_strategy: "ignore",
962
+ osis_compaction_strategy: "bc",
963
+ captive_end_digits_strategy: "delete"
964
+ });
965
+ p.include_apocrypha(true);
966
+ });
967
+ it("should handle book: Jer (bn)", function() {
968
+ expect(p.parse("যিরমিয়াহ 1:1").osis()).toEqual("Jer.1.1", "parsing: 'যিরমিয়াহ 1:1'");
969
+ expect(p.parse("Jer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jer 1:1'");
970
+ expect(p.parse("যির 1:1").osis()).toEqual("Jer.1.1", "parsing: 'যির 1:1'");
971
+ p.include_apocrypha(false);
972
+ expect(p.parse("যিরমিয়াহ 1:1").osis()).toEqual("Jer.1.1", "parsing: 'যিরমিয়াহ 1:1'");
973
+ expect(p.parse("JER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JER 1:1'");
974
+ expect(p.parse("যির 1:1").osis()).toEqual("Jer.1.1", "parsing: 'যির 1:1'");
975
+ });
976
+ });
977
+
978
+ describe("Localized book Ezek (bn)", function() {
979
+ var p;
980
+ p = {};
981
+ beforeEach(function() {
982
+ p = new bcv_parser();
983
+ p.set_options({
984
+ book_alone_strategy: "ignore",
985
+ book_sequence_strategy: "ignore",
986
+ osis_compaction_strategy: "bc",
987
+ captive_end_digits_strategy: "delete"
988
+ });
989
+ p.include_apocrypha(true);
990
+ });
991
+ it("should handle book: Ezek (bn)", function() {
992
+ expect(p.parse("ইয়েজকিয়েল 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ইয়েজকিয়েল 1:1'");
993
+ expect(p.parse("Ezek 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezek 1:1'");
994
+ expect(p.parse("ইয়ে 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ইয়ে 1:1'");
995
+ p.include_apocrypha(false);
996
+ expect(p.parse("ইয়েজকিয়েল 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ইয়েজকিয়েল 1:1'");
997
+ expect(p.parse("EZEK 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEK 1:1'");
998
+ expect(p.parse("ইয়ে 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ইয়ে 1:1'");
999
+ });
1000
+ });
1001
+
1002
+ describe("Localized book Dan (bn)", function() {
1003
+ var p;
1004
+ p = {};
1005
+ beforeEach(function() {
1006
+ p = new bcv_parser();
1007
+ p.set_options({
1008
+ book_alone_strategy: "ignore",
1009
+ book_sequence_strategy: "ignore",
1010
+ osis_compaction_strategy: "bc",
1011
+ captive_end_digits_strategy: "delete"
1012
+ });
1013
+ p.include_apocrypha(true);
1014
+ });
1015
+ it("should handle book: Dan (bn)", function() {
1016
+ expect(p.parse("দানিয়েল 1:1").osis()).toEqual("Dan.1.1", "parsing: 'দানিয়েল 1:1'");
1017
+ expect(p.parse("Dan 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dan 1:1'");
1018
+ expect(p.parse("দা 1:1").osis()).toEqual("Dan.1.1", "parsing: 'দা 1:1'");
1019
+ p.include_apocrypha(false);
1020
+ expect(p.parse("দানিয়েল 1:1").osis()).toEqual("Dan.1.1", "parsing: 'দানিয়েল 1:1'");
1021
+ expect(p.parse("DAN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DAN 1:1'");
1022
+ expect(p.parse("দা 1:1").osis()).toEqual("Dan.1.1", "parsing: 'দা 1:1'");
1023
+ });
1024
+ });
1025
+
1026
+ describe("Localized book Hos (bn)", function() {
1027
+ var p;
1028
+ p = {};
1029
+ beforeEach(function() {
1030
+ p = new bcv_parser();
1031
+ p.set_options({
1032
+ book_alone_strategy: "ignore",
1033
+ book_sequence_strategy: "ignore",
1034
+ osis_compaction_strategy: "bc",
1035
+ captive_end_digits_strategy: "delete"
1036
+ });
1037
+ p.include_apocrypha(true);
1038
+ });
1039
+ it("should handle book: Hos (bn)", function() {
1040
+ expect(p.parse("হোশেয়া 1:1").osis()).toEqual("Hos.1.1", "parsing: 'হোশেয়া 1:1'");
1041
+ expect(p.parse("Hos 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hos 1:1'");
1042
+ expect(p.parse("হো 1:1").osis()).toEqual("Hos.1.1", "parsing: 'হো 1:1'");
1043
+ p.include_apocrypha(false);
1044
+ expect(p.parse("হোশেয়া 1:1").osis()).toEqual("Hos.1.1", "parsing: 'হোশেয়া 1:1'");
1045
+ expect(p.parse("HOS 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOS 1:1'");
1046
+ expect(p.parse("হো 1:1").osis()).toEqual("Hos.1.1", "parsing: 'হো 1:1'");
1047
+ });
1048
+ });
1049
+
1050
+ describe("Localized book Joel (bn)", function() {
1051
+ var p;
1052
+ p = {};
1053
+ beforeEach(function() {
1054
+ p = new bcv_parser();
1055
+ p.set_options({
1056
+ book_alone_strategy: "ignore",
1057
+ book_sequence_strategy: "ignore",
1058
+ osis_compaction_strategy: "bc",
1059
+ captive_end_digits_strategy: "delete"
1060
+ });
1061
+ p.include_apocrypha(true);
1062
+ });
1063
+ it("should handle book: Joel (bn)", function() {
1064
+ expect(p.parse("যোয়েল 1:1").osis()).toEqual("Joel.1.1", "parsing: 'যোয়েল 1:1'");
1065
+ expect(p.parse("Joel 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joel 1:1'");
1066
+ expect(p.parse("যো 1:1").osis()).toEqual("Joel.1.1", "parsing: 'যো 1:1'");
1067
+ p.include_apocrypha(false);
1068
+ expect(p.parse("যোয়েল 1:1").osis()).toEqual("Joel.1.1", "parsing: 'যোয়েল 1:1'");
1069
+ expect(p.parse("JOEL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOEL 1:1'");
1070
+ expect(p.parse("যো 1:1").osis()).toEqual("Joel.1.1", "parsing: 'যো 1:1'");
1071
+ });
1072
+ });
1073
+
1074
+ describe("Localized book Amos (bn)", function() {
1075
+ var p;
1076
+ p = {};
1077
+ beforeEach(function() {
1078
+ p = new bcv_parser();
1079
+ p.set_options({
1080
+ book_alone_strategy: "ignore",
1081
+ book_sequence_strategy: "ignore",
1082
+ osis_compaction_strategy: "bc",
1083
+ captive_end_digits_strategy: "delete"
1084
+ });
1085
+ p.include_apocrypha(true);
1086
+ });
1087
+ it("should handle book: Amos (bn)", function() {
1088
+ expect(p.parse("Amos 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amos 1:1'");
1089
+ expect(p.parse("আমোস 1:1").osis()).toEqual("Amos.1.1", "parsing: 'আমোস 1:1'");
1090
+ expect(p.parse("আ 1:1").osis()).toEqual("Amos.1.1", "parsing: 'আ 1:1'");
1091
+ p.include_apocrypha(false);
1092
+ expect(p.parse("AMOS 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMOS 1:1'");
1093
+ expect(p.parse("আমোস 1:1").osis()).toEqual("Amos.1.1", "parsing: 'আমোস 1:1'");
1094
+ expect(p.parse("আ 1:1").osis()).toEqual("Amos.1.1", "parsing: 'আ 1:1'");
1095
+ });
1096
+ });
1097
+
1098
+ describe("Localized book Obad (bn)", function() {
1099
+ var p;
1100
+ p = {};
1101
+ beforeEach(function() {
1102
+ p = new bcv_parser();
1103
+ p.set_options({
1104
+ book_alone_strategy: "ignore",
1105
+ book_sequence_strategy: "ignore",
1106
+ osis_compaction_strategy: "bc",
1107
+ captive_end_digits_strategy: "delete"
1108
+ });
1109
+ p.include_apocrypha(true);
1110
+ });
1111
+ it("should handle book: Obad (bn)", function() {
1112
+ expect(p.parse("ওবাদিয়া 1:1").osis()).toEqual("Obad.1.1", "parsing: 'ওবাদিয়া 1:1'");
1113
+ expect(p.parse("Obad 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obad 1:1'");
1114
+ expect(p.parse("ওবা 1:1").osis()).toEqual("Obad.1.1", "parsing: 'ওবা 1:1'");
1115
+ p.include_apocrypha(false);
1116
+ expect(p.parse("ওবাদিয়া 1:1").osis()).toEqual("Obad.1.1", "parsing: 'ওবাদিয়া 1:1'");
1117
+ expect(p.parse("OBAD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBAD 1:1'");
1118
+ expect(p.parse("ওবা 1:1").osis()).toEqual("Obad.1.1", "parsing: 'ওবা 1:1'");
1119
+ });
1120
+ });
1121
+
1122
+ describe("Localized book Jonah (bn)", function() {
1123
+ var p;
1124
+ p = {};
1125
+ beforeEach(function() {
1126
+ p = new bcv_parser();
1127
+ p.set_options({
1128
+ book_alone_strategy: "ignore",
1129
+ book_sequence_strategy: "ignore",
1130
+ osis_compaction_strategy: "bc",
1131
+ captive_end_digits_strategy: "delete"
1132
+ });
1133
+ p.include_apocrypha(true);
1134
+ });
1135
+ it("should handle book: Jonah (bn)", function() {
1136
+ expect(p.parse("Jonah 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonah 1:1'");
1137
+ expect(p.parse("যোনা 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'যোনা 1:1'");
1138
+ expect(p.parse("যো 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'যো 1:1'");
1139
+ p.include_apocrypha(false);
1140
+ expect(p.parse("JONAH 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAH 1:1'");
1141
+ expect(p.parse("যোনা 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'যোনা 1:1'");
1142
+ expect(p.parse("যো 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'যো 1:1'");
1143
+ });
1144
+ });
1145
+
1146
+ describe("Localized book Mic (bn)", function() {
1147
+ var p;
1148
+ p = {};
1149
+ beforeEach(function() {
1150
+ p = new bcv_parser();
1151
+ p.set_options({
1152
+ book_alone_strategy: "ignore",
1153
+ book_sequence_strategy: "ignore",
1154
+ osis_compaction_strategy: "bc",
1155
+ captive_end_digits_strategy: "delete"
1156
+ });
1157
+ p.include_apocrypha(true);
1158
+ });
1159
+ it("should handle book: Mic (bn)", function() {
1160
+ expect(p.parse("মিখা 1:1").osis()).toEqual("Mic.1.1", "parsing: 'মিখা 1:1'");
1161
+ expect(p.parse("Mic 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mic 1:1'");
1162
+ expect(p.parse("মি 1:1").osis()).toEqual("Mic.1.1", "parsing: 'মি 1:1'");
1163
+ p.include_apocrypha(false);
1164
+ expect(p.parse("মিখা 1:1").osis()).toEqual("Mic.1.1", "parsing: 'মিখা 1:1'");
1165
+ expect(p.parse("MIC 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIC 1:1'");
1166
+ expect(p.parse("মি 1:1").osis()).toEqual("Mic.1.1", "parsing: 'মি 1:1'");
1167
+ });
1168
+ });
1169
+
1170
+ describe("Localized book Nah (bn)", function() {
1171
+ var p;
1172
+ p = {};
1173
+ beforeEach(function() {
1174
+ p = new bcv_parser();
1175
+ p.set_options({
1176
+ book_alone_strategy: "ignore",
1177
+ book_sequence_strategy: "ignore",
1178
+ osis_compaction_strategy: "bc",
1179
+ captive_end_digits_strategy: "delete"
1180
+ });
1181
+ p.include_apocrypha(true);
1182
+ });
1183
+ it("should handle book: Nah (bn)", function() {
1184
+ expect(p.parse("নাহুম 1:1").osis()).toEqual("Nah.1.1", "parsing: 'নাহুম 1:1'");
1185
+ expect(p.parse("Nah 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nah 1:1'");
1186
+ expect(p.parse("না 1:1").osis()).toEqual("Nah.1.1", "parsing: 'না 1:1'");
1187
+ p.include_apocrypha(false);
1188
+ expect(p.parse("নাহুম 1:1").osis()).toEqual("Nah.1.1", "parsing: 'নাহুম 1:1'");
1189
+ expect(p.parse("NAH 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAH 1:1'");
1190
+ expect(p.parse("না 1:1").osis()).toEqual("Nah.1.1", "parsing: 'না 1:1'");
1191
+ });
1192
+ });
1193
+
1194
+ describe("Localized book Hab (bn)", function() {
1195
+ var p;
1196
+ p = {};
1197
+ beforeEach(function() {
1198
+ p = new bcv_parser();
1199
+ p.set_options({
1200
+ book_alone_strategy: "ignore",
1201
+ book_sequence_strategy: "ignore",
1202
+ osis_compaction_strategy: "bc",
1203
+ captive_end_digits_strategy: "delete"
1204
+ });
1205
+ p.include_apocrypha(true);
1206
+ });
1207
+ it("should handle book: Hab (bn)", function() {
1208
+ expect(p.parse("হবক্কূক 1:1").osis()).toEqual("Hab.1.1", "parsing: 'হবক্কূক 1:1'");
1209
+ expect(p.parse("Hab 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Hab 1:1'");
1210
+ expect(p.parse("হব 1:1").osis()).toEqual("Hab.1.1", "parsing: 'হব 1:1'");
1211
+ p.include_apocrypha(false);
1212
+ expect(p.parse("হবক্কূক 1:1").osis()).toEqual("Hab.1.1", "parsing: 'হবক্কূক 1:1'");
1213
+ expect(p.parse("HAB 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HAB 1:1'");
1214
+ expect(p.parse("হব 1:1").osis()).toEqual("Hab.1.1", "parsing: 'হব 1:1'");
1215
+ });
1216
+ });
1217
+
1218
+ describe("Localized book Zeph (bn)", function() {
1219
+ var p;
1220
+ p = {};
1221
+ beforeEach(function() {
1222
+ p = new bcv_parser();
1223
+ p.set_options({
1224
+ book_alone_strategy: "ignore",
1225
+ book_sequence_strategy: "ignore",
1226
+ osis_compaction_strategy: "bc",
1227
+ captive_end_digits_strategy: "delete"
1228
+ });
1229
+ p.include_apocrypha(true);
1230
+ });
1231
+ it("should handle book: Zeph (bn)", function() {
1232
+ expect(p.parse("সফন্যা 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'সফন্যা 1:1'");
1233
+ expect(p.parse("Zeph 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zeph 1:1'");
1234
+ expect(p.parse("সফ 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'সফ 1:1'");
1235
+ p.include_apocrypha(false);
1236
+ expect(p.parse("সফন্যা 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'সফন্যা 1:1'");
1237
+ expect(p.parse("ZEPH 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEPH 1:1'");
1238
+ expect(p.parse("সফ 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'সফ 1:1'");
1239
+ });
1240
+ });
1241
+
1242
+ describe("Localized book Hag (bn)", function() {
1243
+ var p;
1244
+ p = {};
1245
+ beforeEach(function() {
1246
+ p = new bcv_parser();
1247
+ p.set_options({
1248
+ book_alone_strategy: "ignore",
1249
+ book_sequence_strategy: "ignore",
1250
+ osis_compaction_strategy: "bc",
1251
+ captive_end_digits_strategy: "delete"
1252
+ });
1253
+ p.include_apocrypha(true);
1254
+ });
1255
+ it("should handle book: Hag (bn)", function() {
1256
+ expect(p.parse("হগয় 1:1").osis()).toEqual("Hag.1.1", "parsing: 'হগয় 1:1'");
1257
+ expect(p.parse("Hag 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hag 1:1'");
1258
+ expect(p.parse("হগ 1:1").osis()).toEqual("Hag.1.1", "parsing: 'হগ 1:1'");
1259
+ p.include_apocrypha(false);
1260
+ expect(p.parse("হগয় 1:1").osis()).toEqual("Hag.1.1", "parsing: 'হগয় 1:1'");
1261
+ expect(p.parse("HAG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAG 1:1'");
1262
+ expect(p.parse("হগ 1:1").osis()).toEqual("Hag.1.1", "parsing: 'হগ 1:1'");
1263
+ });
1264
+ });
1265
+
1266
+ describe("Localized book Zech (bn)", function() {
1267
+ var p;
1268
+ p = {};
1269
+ beforeEach(function() {
1270
+ p = new bcv_parser();
1271
+ p.set_options({
1272
+ book_alone_strategy: "ignore",
1273
+ book_sequence_strategy: "ignore",
1274
+ osis_compaction_strategy: "bc",
1275
+ captive_end_digits_strategy: "delete"
1276
+ });
1277
+ p.include_apocrypha(true);
1278
+ });
1279
+ it("should handle book: Zech (bn)", function() {
1280
+ expect(p.parse("যখরিয়া 1:1").osis()).toEqual("Zech.1.1", "parsing: 'যখরিয়া 1:1'");
1281
+ expect(p.parse("Zech 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zech 1:1'");
1282
+ expect(p.parse("যখ 1:1").osis()).toEqual("Zech.1.1", "parsing: 'যখ 1:1'");
1283
+ p.include_apocrypha(false);
1284
+ expect(p.parse("যখরিয়া 1:1").osis()).toEqual("Zech.1.1", "parsing: 'যখরিয়া 1:1'");
1285
+ expect(p.parse("ZECH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZECH 1:1'");
1286
+ expect(p.parse("যখ 1:1").osis()).toEqual("Zech.1.1", "parsing: 'যখ 1:1'");
1287
+ });
1288
+ });
1289
+
1290
+ describe("Localized book Mal (bn)", function() {
1291
+ var p;
1292
+ p = {};
1293
+ beforeEach(function() {
1294
+ p = new bcv_parser();
1295
+ p.set_options({
1296
+ book_alone_strategy: "ignore",
1297
+ book_sequence_strategy: "ignore",
1298
+ osis_compaction_strategy: "bc",
1299
+ captive_end_digits_strategy: "delete"
1300
+ });
1301
+ p.include_apocrypha(true);
1302
+ });
1303
+ it("should handle book: Mal (bn)", function() {
1304
+ expect(p.parse("মালাখি 1:1").osis()).toEqual("Mal.1.1", "parsing: 'মালাখি 1:1'");
1305
+ expect(p.parse("Mal 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Mal 1:1'");
1306
+ expect(p.parse("মা 1:1").osis()).toEqual("Mal.1.1", "parsing: 'মা 1:1'");
1307
+ p.include_apocrypha(false);
1308
+ expect(p.parse("মালাখি 1:1").osis()).toEqual("Mal.1.1", "parsing: 'মালাখি 1:1'");
1309
+ expect(p.parse("MAL 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MAL 1:1'");
1310
+ expect(p.parse("মা 1:1").osis()).toEqual("Mal.1.1", "parsing: 'মা 1:1'");
1311
+ });
1312
+ });
1313
+
1314
+ describe("Localized book Matt (bn)", function() {
1315
+ var p;
1316
+ p = {};
1317
+ beforeEach(function() {
1318
+ p = new bcv_parser();
1319
+ p.set_options({
1320
+ book_alone_strategy: "ignore",
1321
+ book_sequence_strategy: "ignore",
1322
+ osis_compaction_strategy: "bc",
1323
+ captive_end_digits_strategy: "delete"
1324
+ });
1325
+ p.include_apocrypha(true);
1326
+ });
1327
+ it("should handle book: Matt (bn)", function() {
1328
+ expect(p.parse("Matt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matt 1:1'");
1329
+ expect(p.parse("মথি 1:1").osis()).toEqual("Matt.1.1", "parsing: 'মথি 1:1'");
1330
+ expect(p.parse("ম 1:1").osis()).toEqual("Matt.1.1", "parsing: 'ম 1:1'");
1331
+ p.include_apocrypha(false);
1332
+ expect(p.parse("MATT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATT 1:1'");
1333
+ expect(p.parse("মথি 1:1").osis()).toEqual("Matt.1.1", "parsing: 'মথি 1:1'");
1334
+ expect(p.parse("ম 1:1").osis()).toEqual("Matt.1.1", "parsing: 'ম 1:1'");
1335
+ });
1336
+ });
1337
+
1338
+ describe("Localized book Mark (bn)", function() {
1339
+ var p;
1340
+ p = {};
1341
+ beforeEach(function() {
1342
+ p = new bcv_parser();
1343
+ p.set_options({
1344
+ book_alone_strategy: "ignore",
1345
+ book_sequence_strategy: "ignore",
1346
+ osis_compaction_strategy: "bc",
1347
+ captive_end_digits_strategy: "delete"
1348
+ });
1349
+ p.include_apocrypha(true);
1350
+ });
1351
+ it("should handle book: Mark (bn)", function() {
1352
+ expect(p.parse("মার্ক 1:1").osis()).toEqual("Mark.1.1", "parsing: 'মার্ক 1:1'");
1353
+ expect(p.parse("Mark 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mark 1:1'");
1354
+ expect(p.parse("মা 1:1").osis()).toEqual("Mark.1.1", "parsing: 'মা 1:1'");
1355
+ p.include_apocrypha(false);
1356
+ expect(p.parse("মার্ক 1:1").osis()).toEqual("Mark.1.1", "parsing: 'মার্ক 1:1'");
1357
+ expect(p.parse("MARK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARK 1:1'");
1358
+ expect(p.parse("মা 1:1").osis()).toEqual("Mark.1.1", "parsing: 'মা 1:1'");
1359
+ });
1360
+ });
1361
+
1362
+ describe("Localized book Luke (bn)", function() {
1363
+ var p;
1364
+ p = {};
1365
+ beforeEach(function() {
1366
+ p = new bcv_parser();
1367
+ p.set_options({
1368
+ book_alone_strategy: "ignore",
1369
+ book_sequence_strategy: "ignore",
1370
+ osis_compaction_strategy: "bc",
1371
+ captive_end_digits_strategy: "delete"
1372
+ });
1373
+ p.include_apocrypha(true);
1374
+ });
1375
+ it("should handle book: Luke (bn)", function() {
1376
+ expect(p.parse("Luke 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luke 1:1'");
1377
+ expect(p.parse("লূক 1:1").osis()).toEqual("Luke.1.1", "parsing: 'লূক 1:1'");
1378
+ expect(p.parse("লূ 1:1").osis()).toEqual("Luke.1.1", "parsing: 'লূ 1:1'");
1379
+ p.include_apocrypha(false);
1380
+ expect(p.parse("LUKE 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKE 1:1'");
1381
+ expect(p.parse("লূক 1:1").osis()).toEqual("Luke.1.1", "parsing: 'লূক 1:1'");
1382
+ expect(p.parse("লূ 1:1").osis()).toEqual("Luke.1.1", "parsing: 'লূ 1:1'");
1383
+ });
1384
+ });
1385
+
1386
+ describe("Localized book 1John (bn)", function() {
1387
+ var p;
1388
+ p = {};
1389
+ beforeEach(function() {
1390
+ p = new bcv_parser();
1391
+ p.set_options({
1392
+ book_alone_strategy: "ignore",
1393
+ book_sequence_strategy: "ignore",
1394
+ osis_compaction_strategy: "bc",
1395
+ captive_end_digits_strategy: "delete"
1396
+ });
1397
+ p.include_apocrypha(true);
1398
+ });
1399
+ it("should handle book: 1John (bn)", function() {
1400
+ expect(p.parse("প্রথম যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: 'প্রথম যোহন 1:1'");
1401
+ expect(p.parse("প্রথমযো 1:1").osis()).toEqual("1John.1.1", "parsing: 'প্রথমযো 1:1'");
1402
+ expect(p.parse("1 যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: '1 যোহন 1:1'");
1403
+ expect(p.parse("১ যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: '১ যোহন 1:1'");
1404
+ expect(p.parse("1John 1:1").osis()).toEqual("1John.1.1", "parsing: '1John 1:1'");
1405
+ expect(p.parse("1যো 1:1").osis()).toEqual("1John.1.1", "parsing: '1যো 1:1'");
1406
+ expect(p.parse("১যো 1:1").osis()).toEqual("1John.1.1", "parsing: '১যো 1:1'");
1407
+ });
1408
+ it("should handle non-Latin digits in book: 1John (bn)", function() {
1409
+ p.set_options({
1410
+ non_latin_digits_strategy: "replace"
1411
+ });
1412
+ expect(p.parse("প্রথম যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: 'প্রথম যোহন 1:1'");
1413
+ expect(p.parse("প্রথমযো 1:1").osis()).toEqual("1John.1.1", "parsing: 'প্রথমযো 1:1'");
1414
+ expect(p.parse("1 যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: '1 যোহন 1:1'");
1415
+ expect(p.parse("১ যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: '১ যোহন 1:1'");
1416
+ expect(p.parse("1John 1:1").osis()).toEqual("1John.1.1", "parsing: '1John 1:1'");
1417
+ expect(p.parse("1যো 1:1").osis()).toEqual("1John.1.1", "parsing: '1যো 1:1'");
1418
+ expect(p.parse("১যো 1:1").osis()).toEqual("1John.1.1", "parsing: '১যো 1:1'");
1419
+ return;
1420
+ p.include_apocrypha(false);
1421
+ expect(p.parse("প্রথম যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: 'প্রথম যোহন 1:1'");
1422
+ expect(p.parse("প্রথমযো 1:1").osis()).toEqual("1John.1.1", "parsing: 'প্রথমযো 1:1'");
1423
+ expect(p.parse("1 যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: '1 যোহন 1:1'");
1424
+ expect(p.parse("১ যোহন 1:1").osis()).toEqual("1John.1.1", "parsing: '১ যোহন 1:1'");
1425
+ expect(p.parse("1JOHN 1:1").osis()).toEqual("1John.1.1", "parsing: '1JOHN 1:1'");
1426
+ expect(p.parse("1যো 1:1").osis()).toEqual("1John.1.1", "parsing: '1যো 1:1'");
1427
+ expect(p.parse("১যো 1:1").osis()).toEqual("1John.1.1", "parsing: '১যো 1:1'");
1428
+ });
1429
+ });
1430
+
1431
+ describe("Localized book 2John (bn)", function() {
1432
+ var p;
1433
+ p = {};
1434
+ beforeEach(function() {
1435
+ p = new bcv_parser();
1436
+ p.set_options({
1437
+ book_alone_strategy: "ignore",
1438
+ book_sequence_strategy: "ignore",
1439
+ osis_compaction_strategy: "bc",
1440
+ captive_end_digits_strategy: "delete"
1441
+ });
1442
+ p.include_apocrypha(true);
1443
+ });
1444
+ it("should handle book: 2John (bn)", function() {
1445
+ expect(p.parse("2 যোহন 1:1").osis()).toEqual("2John.1.1", "parsing: '2 যোহন 1:1'");
1446
+ expect(p.parse("২ যোহন 1:1").osis()).toEqual("2John.1.1", "parsing: '২ যোহন 1:1'");
1447
+ expect(p.parse("2John 1:1").osis()).toEqual("2John.1.1", "parsing: '2John 1:1'");
1448
+ expect(p.parse("2যো 1:1").osis()).toEqual("2John.1.1", "parsing: '2যো 1:1'");
1449
+ expect(p.parse("২যো 1:1").osis()).toEqual("2John.1.1", "parsing: '২যো 1:1'");
1450
+ });
1451
+ it("should handle non-Latin digits in book: 2John (bn)", function() {
1452
+ p.set_options({
1453
+ non_latin_digits_strategy: "replace"
1454
+ });
1455
+ expect(p.parse("2 যোহন 1:1").osis()).toEqual("2John.1.1", "parsing: '2 যোহন 1:1'");
1456
+ expect(p.parse("২ যোহন 1:1").osis()).toEqual("2John.1.1", "parsing: '২ যোহন 1:1'");
1457
+ expect(p.parse("2John 1:1").osis()).toEqual("2John.1.1", "parsing: '2John 1:1'");
1458
+ expect(p.parse("2যো 1:1").osis()).toEqual("2John.1.1", "parsing: '2যো 1:1'");
1459
+ expect(p.parse("২যো 1:1").osis()).toEqual("2John.1.1", "parsing: '২যো 1:1'");
1460
+ return;
1461
+ p.include_apocrypha(false);
1462
+ expect(p.parse("2 যোহন 1:1").osis()).toEqual("2John.1.1", "parsing: '2 যোহন 1:1'");
1463
+ expect(p.parse("২ যোহন 1:1").osis()).toEqual("2John.1.1", "parsing: '২ যোহন 1:1'");
1464
+ expect(p.parse("2JOHN 1:1").osis()).toEqual("2John.1.1", "parsing: '2JOHN 1:1'");
1465
+ expect(p.parse("2যো 1:1").osis()).toEqual("2John.1.1", "parsing: '2যো 1:1'");
1466
+ expect(p.parse("২যো 1:1").osis()).toEqual("2John.1.1", "parsing: '২যো 1:1'");
1467
+ });
1468
+ });
1469
+
1470
+ describe("Localized book 3John (bn)", function() {
1471
+ var p;
1472
+ p = {};
1473
+ beforeEach(function() {
1474
+ p = new bcv_parser();
1475
+ p.set_options({
1476
+ book_alone_strategy: "ignore",
1477
+ book_sequence_strategy: "ignore",
1478
+ osis_compaction_strategy: "bc",
1479
+ captive_end_digits_strategy: "delete"
1480
+ });
1481
+ p.include_apocrypha(true);
1482
+ });
1483
+ it("should handle book: 3John (bn)", function() {
1484
+ expect(p.parse("3 যোহন 1:1").osis()).toEqual("3John.1.1", "parsing: '3 যোহন 1:1'");
1485
+ expect(p.parse("৩ যোহন 1:1").osis()).toEqual("3John.1.1", "parsing: '৩ যোহন 1:1'");
1486
+ expect(p.parse("3John 1:1").osis()).toEqual("3John.1.1", "parsing: '3John 1:1'");
1487
+ expect(p.parse("3যো 1:1").osis()).toEqual("3John.1.1", "parsing: '3যো 1:1'");
1488
+ expect(p.parse("৩যো 1:1").osis()).toEqual("3John.1.1", "parsing: '৩যো 1:1'");
1489
+ });
1490
+ it("should handle non-Latin digits in book: 3John (bn)", function() {
1491
+ p.set_options({
1492
+ non_latin_digits_strategy: "replace"
1493
+ });
1494
+ expect(p.parse("3 যোহন 1:1").osis()).toEqual("3John.1.1", "parsing: '3 যোহন 1:1'");
1495
+ expect(p.parse("৩ যোহন 1:1").osis()).toEqual("3John.1.1", "parsing: '৩ যোহন 1:1'");
1496
+ expect(p.parse("3John 1:1").osis()).toEqual("3John.1.1", "parsing: '3John 1:1'");
1497
+ expect(p.parse("3যো 1:1").osis()).toEqual("3John.1.1", "parsing: '3যো 1:1'");
1498
+ expect(p.parse("৩যো 1:1").osis()).toEqual("3John.1.1", "parsing: '৩যো 1:1'");
1499
+ return;
1500
+ p.include_apocrypha(false);
1501
+ expect(p.parse("3 যোহন 1:1").osis()).toEqual("3John.1.1", "parsing: '3 যোহন 1:1'");
1502
+ expect(p.parse("৩ যোহন 1:1").osis()).toEqual("3John.1.1", "parsing: '৩ যোহন 1:1'");
1503
+ expect(p.parse("3JOHN 1:1").osis()).toEqual("3John.1.1", "parsing: '3JOHN 1:1'");
1504
+ expect(p.parse("3যো 1:1").osis()).toEqual("3John.1.1", "parsing: '3যো 1:1'");
1505
+ expect(p.parse("৩যো 1:1").osis()).toEqual("3John.1.1", "parsing: '৩যো 1:1'");
1506
+ });
1507
+ });
1508
+
1509
+ describe("Localized book John (bn)", function() {
1510
+ var p;
1511
+ p = {};
1512
+ beforeEach(function() {
1513
+ p = new bcv_parser();
1514
+ p.set_options({
1515
+ book_alone_strategy: "ignore",
1516
+ book_sequence_strategy: "ignore",
1517
+ osis_compaction_strategy: "bc",
1518
+ captive_end_digits_strategy: "delete"
1519
+ });
1520
+ p.include_apocrypha(true);
1521
+ });
1522
+ it("should handle book: John (bn)", function() {
1523
+ expect(p.parse("John 1:1").osis()).toEqual("John.1.1", "parsing: 'John 1:1'");
1524
+ expect(p.parse("যোহন 1:1").osis()).toEqual("John.1.1", "parsing: 'যোহন 1:1'");
1525
+ expect(p.parse("যো 1:1").osis()).toEqual("John.1.1", "parsing: 'যো 1:1'");
1526
+ p.include_apocrypha(false);
1527
+ expect(p.parse("JOHN 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHN 1:1'");
1528
+ expect(p.parse("যোহন 1:1").osis()).toEqual("John.1.1", "parsing: 'যোহন 1:1'");
1529
+ expect(p.parse("যো 1:1").osis()).toEqual("John.1.1", "parsing: 'যো 1:1'");
1530
+ });
1531
+ });
1532
+
1533
+ describe("Localized book Acts (bn)", function() {
1534
+ var p;
1535
+ p = {};
1536
+ beforeEach(function() {
1537
+ p = new bcv_parser();
1538
+ p.set_options({
1539
+ book_alone_strategy: "ignore",
1540
+ book_sequence_strategy: "ignore",
1541
+ osis_compaction_strategy: "bc",
1542
+ captive_end_digits_strategy: "delete"
1543
+ });
1544
+ p.include_apocrypha(true);
1545
+ });
1546
+ it("should handle book: Acts (bn)", function() {
1547
+ expect(p.parse("প্রেরিত 1:1").osis()).toEqual("Acts.1.1", "parsing: 'প্রেরিত 1:1'");
1548
+ expect(p.parse("Acts 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Acts 1:1'");
1549
+ expect(p.parse("প্রে 1:1").osis()).toEqual("Acts.1.1", "parsing: 'প্রে 1:1'");
1550
+ p.include_apocrypha(false);
1551
+ expect(p.parse("প্রেরিত 1:1").osis()).toEqual("Acts.1.1", "parsing: 'প্রেরিত 1:1'");
1552
+ expect(p.parse("ACTS 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTS 1:1'");
1553
+ expect(p.parse("প্রে 1:1").osis()).toEqual("Acts.1.1", "parsing: 'প্রে 1:1'");
1554
+ });
1555
+ });
1556
+
1557
+ describe("Localized book Rom (bn)", function() {
1558
+ var p;
1559
+ p = {};
1560
+ beforeEach(function() {
1561
+ p = new bcv_parser();
1562
+ p.set_options({
1563
+ book_alone_strategy: "ignore",
1564
+ book_sequence_strategy: "ignore",
1565
+ osis_compaction_strategy: "bc",
1566
+ captive_end_digits_strategy: "delete"
1567
+ });
1568
+ p.include_apocrypha(true);
1569
+ });
1570
+ it("should handle book: Rom (bn)", function() {
1571
+ expect(p.parse("রোমীয় 1:1").osis()).toEqual("Rom.1.1", "parsing: 'রোমীয় 1:1'");
1572
+ expect(p.parse("Rom 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rom 1:1'");
1573
+ expect(p.parse("রো 1:1").osis()).toEqual("Rom.1.1", "parsing: 'রো 1:1'");
1574
+ p.include_apocrypha(false);
1575
+ expect(p.parse("রোমীয় 1:1").osis()).toEqual("Rom.1.1", "parsing: 'রোমীয় 1:1'");
1576
+ expect(p.parse("ROM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROM 1:1'");
1577
+ expect(p.parse("রো 1:1").osis()).toEqual("Rom.1.1", "parsing: 'রো 1:1'");
1578
+ });
1579
+ });
1580
+
1581
+ describe("Localized book 2Cor (bn)", function() {
1582
+ var p;
1583
+ p = {};
1584
+ beforeEach(function() {
1585
+ p = new bcv_parser();
1586
+ p.set_options({
1587
+ book_alone_strategy: "ignore",
1588
+ book_sequence_strategy: "ignore",
1589
+ osis_compaction_strategy: "bc",
1590
+ captive_end_digits_strategy: "delete"
1591
+ });
1592
+ p.include_apocrypha(true);
1593
+ });
1594
+ it("should handle book: 2Cor (bn)", function() {
1595
+ expect(p.parse("2 করিন্থীয় 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 করিন্থীয় 1:1'");
1596
+ expect(p.parse("২ করিন্থীয় 1:1").osis()).toEqual("2Cor.1.1", "parsing: '২ করিন্থীয় 1:1'");
1597
+ expect(p.parse("2Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2Cor 1:1'");
1598
+ expect(p.parse("2ক 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2ক 1:1'");
1599
+ expect(p.parse("২ক 1:1").osis()).toEqual("2Cor.1.1", "parsing: '২ক 1:1'");
1600
+ });
1601
+ it("should handle non-Latin digits in book: 2Cor (bn)", function() {
1602
+ p.set_options({
1603
+ non_latin_digits_strategy: "replace"
1604
+ });
1605
+ expect(p.parse("2 করিন্থীয় 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 করিন্থীয় 1:1'");
1606
+ expect(p.parse("২ করিন্থীয় 1:1").osis()).toEqual("2Cor.1.1", "parsing: '২ করিন্থীয় 1:1'");
1607
+ expect(p.parse("2Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2Cor 1:1'");
1608
+ expect(p.parse("2ক 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2ক 1:1'");
1609
+ expect(p.parse("২ক 1:1").osis()).toEqual("2Cor.1.1", "parsing: '২ক 1:1'");
1610
+ return;
1611
+ p.include_apocrypha(false);
1612
+ expect(p.parse("2 করিন্থীয় 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 করিন্থীয় 1:1'");
1613
+ expect(p.parse("২ করিন্থীয় 1:1").osis()).toEqual("2Cor.1.1", "parsing: '২ করিন্থীয় 1:1'");
1614
+ expect(p.parse("2COR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2COR 1:1'");
1615
+ expect(p.parse("2ক 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2ক 1:1'");
1616
+ expect(p.parse("২ক 1:1").osis()).toEqual("2Cor.1.1", "parsing: '২ক 1:1'");
1617
+ });
1618
+ });
1619
+
1620
+ describe("Localized book 1Cor (bn)", function() {
1621
+ var p;
1622
+ p = {};
1623
+ beforeEach(function() {
1624
+ p = new bcv_parser();
1625
+ p.set_options({
1626
+ book_alone_strategy: "ignore",
1627
+ book_sequence_strategy: "ignore",
1628
+ osis_compaction_strategy: "bc",
1629
+ captive_end_digits_strategy: "delete"
1630
+ });
1631
+ p.include_apocrypha(true);
1632
+ });
1633
+ it("should handle book: 1Cor (bn)", function() {
1634
+ expect(p.parse("প্রথম করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'প্রথম করিন্থীয় 1:1'");
1635
+ expect(p.parse("1 করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 করিন্থীয় 1:1'");
1636
+ expect(p.parse("১ করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: '১ করিন্থীয় 1:1'");
1637
+ expect(p.parse("প্রথমক 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'প্রথমক 1:1'");
1638
+ expect(p.parse("1Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1Cor 1:1'");
1639
+ expect(p.parse("1ক 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ক 1:1'");
1640
+ expect(p.parse("১ক 1:1").osis()).toEqual("1Cor.1.1", "parsing: '১ক 1:1'");
1641
+ });
1642
+ it("should handle non-Latin digits in book: 1Cor (bn)", function() {
1643
+ p.set_options({
1644
+ non_latin_digits_strategy: "replace"
1645
+ });
1646
+ expect(p.parse("প্রথম করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'প্রথম করিন্থীয় 1:1'");
1647
+ expect(p.parse("1 করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 করিন্থীয় 1:1'");
1648
+ expect(p.parse("১ করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: '১ করিন্থীয় 1:1'");
1649
+ expect(p.parse("প্রথমক 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'প্রথমক 1:1'");
1650
+ expect(p.parse("1Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1Cor 1:1'");
1651
+ expect(p.parse("1ক 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ক 1:1'");
1652
+ expect(p.parse("১ক 1:1").osis()).toEqual("1Cor.1.1", "parsing: '১ক 1:1'");
1653
+ return;
1654
+ p.include_apocrypha(false);
1655
+ expect(p.parse("প্রথম করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'প্রথম করিন্থীয় 1:1'");
1656
+ expect(p.parse("1 করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 করিন্থীয় 1:1'");
1657
+ expect(p.parse("১ করিন্থীয় 1:1").osis()).toEqual("1Cor.1.1", "parsing: '১ করিন্থীয় 1:1'");
1658
+ expect(p.parse("প্রথমক 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'প্রথমক 1:1'");
1659
+ expect(p.parse("1COR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1COR 1:1'");
1660
+ expect(p.parse("1ক 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ক 1:1'");
1661
+ expect(p.parse("১ক 1:1").osis()).toEqual("1Cor.1.1", "parsing: '১ক 1:1'");
1662
+ });
1663
+ });
1664
+
1665
+ describe("Localized book Gal (bn)", function() {
1666
+ var p;
1667
+ p = {};
1668
+ beforeEach(function() {
1669
+ p = new bcv_parser();
1670
+ p.set_options({
1671
+ book_alone_strategy: "ignore",
1672
+ book_sequence_strategy: "ignore",
1673
+ osis_compaction_strategy: "bc",
1674
+ captive_end_digits_strategy: "delete"
1675
+ });
1676
+ p.include_apocrypha(true);
1677
+ });
1678
+ it("should handle book: Gal (bn)", function() {
1679
+ expect(p.parse("গালাতীয় 1:1").osis()).toEqual("Gal.1.1", "parsing: 'গালাতীয় 1:1'");
1680
+ expect(p.parse("Gal 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Gal 1:1'");
1681
+ expect(p.parse("গা 1:1").osis()).toEqual("Gal.1.1", "parsing: 'গা 1:1'");
1682
+ p.include_apocrypha(false);
1683
+ expect(p.parse("গালাতীয় 1:1").osis()).toEqual("Gal.1.1", "parsing: 'গালাতীয় 1:1'");
1684
+ expect(p.parse("GAL 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GAL 1:1'");
1685
+ expect(p.parse("গা 1:1").osis()).toEqual("Gal.1.1", "parsing: 'গা 1:1'");
1686
+ });
1687
+ });
1688
+
1689
+ describe("Localized book Eph (bn)", function() {
1690
+ var p;
1691
+ p = {};
1692
+ beforeEach(function() {
1693
+ p = new bcv_parser();
1694
+ p.set_options({
1695
+ book_alone_strategy: "ignore",
1696
+ book_sequence_strategy: "ignore",
1697
+ osis_compaction_strategy: "bc",
1698
+ captive_end_digits_strategy: "delete"
1699
+ });
1700
+ p.include_apocrypha(true);
1701
+ });
1702
+ it("should handle book: Eph (bn)", function() {
1703
+ expect(p.parse("এফিষীয় 1:1").osis()).toEqual("Eph.1.1", "parsing: 'এফিষীয় 1:1'");
1704
+ expect(p.parse("Eph 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Eph 1:1'");
1705
+ expect(p.parse("এ 1:1").osis()).toEqual("Eph.1.1", "parsing: 'এ 1:1'");
1706
+ p.include_apocrypha(false);
1707
+ expect(p.parse("এফিষীয় 1:1").osis()).toEqual("Eph.1.1", "parsing: 'এফিষীয় 1:1'");
1708
+ expect(p.parse("EPH 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPH 1:1'");
1709
+ expect(p.parse("এ 1:1").osis()).toEqual("Eph.1.1", "parsing: 'এ 1:1'");
1710
+ });
1711
+ });
1712
+
1713
+ describe("Localized book Phil (bn)", function() {
1714
+ var p;
1715
+ p = {};
1716
+ beforeEach(function() {
1717
+ p = new bcv_parser();
1718
+ p.set_options({
1719
+ book_alone_strategy: "ignore",
1720
+ book_sequence_strategy: "ignore",
1721
+ osis_compaction_strategy: "bc",
1722
+ captive_end_digits_strategy: "delete"
1723
+ });
1724
+ p.include_apocrypha(true);
1725
+ });
1726
+ it("should handle book: Phil (bn)", function() {
1727
+ expect(p.parse("ফিলিপীয় 1:1").osis()).toEqual("Phil.1.1", "parsing: 'ফিলিপীয় 1:1'");
1728
+ expect(p.parse("Phil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Phil 1:1'");
1729
+ expect(p.parse("ফি 1:1").osis()).toEqual("Phil.1.1", "parsing: 'ফি 1:1'");
1730
+ p.include_apocrypha(false);
1731
+ expect(p.parse("ফিলিপীয় 1:1").osis()).toEqual("Phil.1.1", "parsing: 'ফিলিপীয় 1:1'");
1732
+ expect(p.parse("PHIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHIL 1:1'");
1733
+ expect(p.parse("ফি 1:1").osis()).toEqual("Phil.1.1", "parsing: 'ফি 1:1'");
1734
+ });
1735
+ });
1736
+
1737
+ describe("Localized book Col (bn)", function() {
1738
+ var p;
1739
+ p = {};
1740
+ beforeEach(function() {
1741
+ p = new bcv_parser();
1742
+ p.set_options({
1743
+ book_alone_strategy: "ignore",
1744
+ book_sequence_strategy: "ignore",
1745
+ osis_compaction_strategy: "bc",
1746
+ captive_end_digits_strategy: "delete"
1747
+ });
1748
+ p.include_apocrypha(true);
1749
+ });
1750
+ it("should handle book: Col (bn)", function() {
1751
+ expect(p.parse("কলসীয় 1:1").osis()).toEqual("Col.1.1", "parsing: 'কলসীয় 1:1'");
1752
+ expect(p.parse("Col 1:1").osis()).toEqual("Col.1.1", "parsing: 'Col 1:1'");
1753
+ expect(p.parse("ক 1:1").osis()).toEqual("Col.1.1", "parsing: 'ক 1:1'");
1754
+ p.include_apocrypha(false);
1755
+ expect(p.parse("কলসীয় 1:1").osis()).toEqual("Col.1.1", "parsing: 'কলসীয় 1:1'");
1756
+ expect(p.parse("COL 1:1").osis()).toEqual("Col.1.1", "parsing: 'COL 1:1'");
1757
+ expect(p.parse("ক 1:1").osis()).toEqual("Col.1.1", "parsing: 'ক 1:1'");
1758
+ });
1759
+ });
1760
+
1761
+ describe("Localized book 2Thess (bn)", function() {
1762
+ var p;
1763
+ p = {};
1764
+ beforeEach(function() {
1765
+ p = new bcv_parser();
1766
+ p.set_options({
1767
+ book_alone_strategy: "ignore",
1768
+ book_sequence_strategy: "ignore",
1769
+ osis_compaction_strategy: "bc",
1770
+ captive_end_digits_strategy: "delete"
1771
+ });
1772
+ p.include_apocrypha(true);
1773
+ });
1774
+ it("should handle book: 2Thess (bn)", function() {
1775
+ expect(p.parse("2 থিষলনীকীয় 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 থিষলনীকীয় 1:1'");
1776
+ expect(p.parse("২ থিষলনীকীয় 1:1").osis()).toEqual("2Thess.1.1", "parsing: '২ থিষলনীকীয় 1:1'");
1777
+ expect(p.parse("2Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2Thess 1:1'");
1778
+ expect(p.parse("2থি 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2থি 1:1'");
1779
+ expect(p.parse("২থি 1:1").osis()).toEqual("2Thess.1.1", "parsing: '২থি 1:1'");
1780
+ });
1781
+ it("should handle non-Latin digits in book: 2Thess (bn)", function() {
1782
+ p.set_options({
1783
+ non_latin_digits_strategy: "replace"
1784
+ });
1785
+ expect(p.parse("2 থিষলনীকীয় 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 থিষলনীকীয় 1:1'");
1786
+ expect(p.parse("২ থিষলনীকীয় 1:1").osis()).toEqual("2Thess.1.1", "parsing: '২ থিষলনীকীয় 1:1'");
1787
+ expect(p.parse("2Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2Thess 1:1'");
1788
+ expect(p.parse("2থি 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2থি 1:1'");
1789
+ expect(p.parse("২থি 1:1").osis()).toEqual("2Thess.1.1", "parsing: '২থি 1:1'");
1790
+ return;
1791
+ p.include_apocrypha(false);
1792
+ expect(p.parse("2 থিষলনীকীয় 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 থিষলনীকীয় 1:1'");
1793
+ expect(p.parse("২ থিষলনীকীয় 1:1").osis()).toEqual("2Thess.1.1", "parsing: '২ থিষলনীকীয় 1:1'");
1794
+ expect(p.parse("2THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2THESS 1:1'");
1795
+ expect(p.parse("2থি 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2থি 1:1'");
1796
+ expect(p.parse("২থি 1:1").osis()).toEqual("2Thess.1.1", "parsing: '২থি 1:1'");
1797
+ });
1798
+ });
1799
+
1800
+ describe("Localized book 1Thess (bn)", function() {
1801
+ var p;
1802
+ p = {};
1803
+ beforeEach(function() {
1804
+ p = new bcv_parser();
1805
+ p.set_options({
1806
+ book_alone_strategy: "ignore",
1807
+ book_sequence_strategy: "ignore",
1808
+ osis_compaction_strategy: "bc",
1809
+ captive_end_digits_strategy: "delete"
1810
+ });
1811
+ p.include_apocrypha(true);
1812
+ });
1813
+ it("should handle book: 1Thess (bn)", function() {
1814
+ expect(p.parse("প্রথম থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'প্রথম থিষলনীকীয় 1:1'");
1815
+ expect(p.parse("1 থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 থিষলনীকীয় 1:1'");
1816
+ expect(p.parse("১ থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: '১ থিষলনীকীয় 1:1'");
1817
+ expect(p.parse("প্রথমথি 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'প্রথমথি 1:1'");
1818
+ expect(p.parse("1Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1Thess 1:1'");
1819
+ expect(p.parse("1থি 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1থি 1:1'");
1820
+ expect(p.parse("১থি 1:1").osis()).toEqual("1Thess.1.1", "parsing: '১থি 1:1'");
1821
+ });
1822
+ it("should handle non-Latin digits in book: 1Thess (bn)", function() {
1823
+ p.set_options({
1824
+ non_latin_digits_strategy: "replace"
1825
+ });
1826
+ expect(p.parse("প্রথম থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'প্রথম থিষলনীকীয় 1:1'");
1827
+ expect(p.parse("1 থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 থিষলনীকীয় 1:1'");
1828
+ expect(p.parse("১ থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: '১ থিষলনীকীয় 1:1'");
1829
+ expect(p.parse("প্রথমথি 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'প্রথমথি 1:1'");
1830
+ expect(p.parse("1Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1Thess 1:1'");
1831
+ expect(p.parse("1থি 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1থি 1:1'");
1832
+ expect(p.parse("১থি 1:1").osis()).toEqual("1Thess.1.1", "parsing: '১থি 1:1'");
1833
+ return;
1834
+ p.include_apocrypha(false);
1835
+ expect(p.parse("প্রথম থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'প্রথম থিষলনীকীয় 1:1'");
1836
+ expect(p.parse("1 থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 থিষলনীকীয় 1:1'");
1837
+ expect(p.parse("১ থিষলনীকীয় 1:1").osis()).toEqual("1Thess.1.1", "parsing: '১ থিষলনীকীয় 1:1'");
1838
+ expect(p.parse("প্রথমথি 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'প্রথমথি 1:1'");
1839
+ expect(p.parse("1THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1THESS 1:1'");
1840
+ expect(p.parse("1থি 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1থি 1:1'");
1841
+ expect(p.parse("১থি 1:1").osis()).toEqual("1Thess.1.1", "parsing: '১থি 1:1'");
1842
+ });
1843
+ });
1844
+
1845
+ describe("Localized book 2Tim (bn)", function() {
1846
+ var p;
1847
+ p = {};
1848
+ beforeEach(function() {
1849
+ p = new bcv_parser();
1850
+ p.set_options({
1851
+ book_alone_strategy: "ignore",
1852
+ book_sequence_strategy: "ignore",
1853
+ osis_compaction_strategy: "bc",
1854
+ captive_end_digits_strategy: "delete"
1855
+ });
1856
+ p.include_apocrypha(true);
1857
+ });
1858
+ it("should handle book: 2Tim (bn)", function() {
1859
+ expect(p.parse("2 তীমথীয় 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 তীমথীয় 1:1'");
1860
+ expect(p.parse("২ তীমথীয় 1:1").osis()).toEqual("2Tim.1.1", "parsing: '২ তীমথীয় 1:1'");
1861
+ expect(p.parse("2Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2Tim 1:1'");
1862
+ expect(p.parse("2তী 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2তী 1:1'");
1863
+ expect(p.parse("২তী 1:1").osis()).toEqual("2Tim.1.1", "parsing: '২তী 1:1'");
1864
+ });
1865
+ it("should handle non-Latin digits in book: 2Tim (bn)", function() {
1866
+ p.set_options({
1867
+ non_latin_digits_strategy: "replace"
1868
+ });
1869
+ expect(p.parse("2 তীমথীয় 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 তীমথীয় 1:1'");
1870
+ expect(p.parse("২ তীমথীয় 1:1").osis()).toEqual("2Tim.1.1", "parsing: '২ তীমথীয় 1:1'");
1871
+ expect(p.parse("2Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2Tim 1:1'");
1872
+ expect(p.parse("2তী 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2তী 1:1'");
1873
+ expect(p.parse("২তী 1:1").osis()).toEqual("2Tim.1.1", "parsing: '২তী 1:1'");
1874
+ return;
1875
+ p.include_apocrypha(false);
1876
+ expect(p.parse("2 তীমথীয় 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 তীমথীয় 1:1'");
1877
+ expect(p.parse("২ তীমথীয় 1:1").osis()).toEqual("2Tim.1.1", "parsing: '২ তীমথীয় 1:1'");
1878
+ expect(p.parse("2TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2TIM 1:1'");
1879
+ expect(p.parse("2তী 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2তী 1:1'");
1880
+ expect(p.parse("২তী 1:1").osis()).toEqual("2Tim.1.1", "parsing: '২তী 1:1'");
1881
+ });
1882
+ });
1883
+
1884
+ describe("Localized book 1Tim (bn)", function() {
1885
+ var p;
1886
+ p = {};
1887
+ beforeEach(function() {
1888
+ p = new bcv_parser();
1889
+ p.set_options({
1890
+ book_alone_strategy: "ignore",
1891
+ book_sequence_strategy: "ignore",
1892
+ osis_compaction_strategy: "bc",
1893
+ captive_end_digits_strategy: "delete"
1894
+ });
1895
+ p.include_apocrypha(true);
1896
+ });
1897
+ it("should handle book: 1Tim (bn)", function() {
1898
+ expect(p.parse("প্রথম তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'প্রথম তীমথীয় 1:1'");
1899
+ expect(p.parse("1 তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 তীমথীয় 1:1'");
1900
+ expect(p.parse("১ তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: '১ তীমথীয় 1:1'");
1901
+ expect(p.parse("প্রথমতী 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'প্রথমতী 1:1'");
1902
+ expect(p.parse("1Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1Tim 1:1'");
1903
+ expect(p.parse("1তী 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1তী 1:1'");
1904
+ expect(p.parse("১তী 1:1").osis()).toEqual("1Tim.1.1", "parsing: '১তী 1:1'");
1905
+ });
1906
+ it("should handle non-Latin digits in book: 1Tim (bn)", function() {
1907
+ p.set_options({
1908
+ non_latin_digits_strategy: "replace"
1909
+ });
1910
+ expect(p.parse("প্রথম তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'প্রথম তীমথীয় 1:1'");
1911
+ expect(p.parse("1 তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 তীমথীয় 1:1'");
1912
+ expect(p.parse("১ তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: '১ তীমথীয় 1:1'");
1913
+ expect(p.parse("প্রথমতী 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'প্রথমতী 1:1'");
1914
+ expect(p.parse("1Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1Tim 1:1'");
1915
+ expect(p.parse("1তী 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1তী 1:1'");
1916
+ expect(p.parse("১তী 1:1").osis()).toEqual("1Tim.1.1", "parsing: '১তী 1:1'");
1917
+ return;
1918
+ p.include_apocrypha(false);
1919
+ expect(p.parse("প্রথম তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'প্রথম তীমথীয় 1:1'");
1920
+ expect(p.parse("1 তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 তীমথীয় 1:1'");
1921
+ expect(p.parse("১ তীমথীয় 1:1").osis()).toEqual("1Tim.1.1", "parsing: '১ তীমথীয় 1:1'");
1922
+ expect(p.parse("প্রথমতী 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'প্রথমতী 1:1'");
1923
+ expect(p.parse("1TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1TIM 1:1'");
1924
+ expect(p.parse("1তী 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1তী 1:1'");
1925
+ expect(p.parse("১তী 1:1").osis()).toEqual("1Tim.1.1", "parsing: '১তী 1:1'");
1926
+ });
1927
+ });
1928
+
1929
+ describe("Localized book Titus (bn)", function() {
1930
+ var p;
1931
+ p = {};
1932
+ beforeEach(function() {
1933
+ p = new bcv_parser();
1934
+ p.set_options({
1935
+ book_alone_strategy: "ignore",
1936
+ book_sequence_strategy: "ignore",
1937
+ osis_compaction_strategy: "bc",
1938
+ captive_end_digits_strategy: "delete"
1939
+ });
1940
+ p.include_apocrypha(true);
1941
+ });
1942
+ it("should handle book: Titus (bn)", function() {
1943
+ expect(p.parse("Titus 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titus 1:1'");
1944
+ expect(p.parse("তীত 1:1").osis()).toEqual("Titus.1.1", "parsing: 'তীত 1:1'");
1945
+ expect(p.parse("তী 1:1").osis()).toEqual("Titus.1.1", "parsing: 'তী 1:1'");
1946
+ p.include_apocrypha(false);
1947
+ expect(p.parse("TITUS 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITUS 1:1'");
1948
+ expect(p.parse("তীত 1:1").osis()).toEqual("Titus.1.1", "parsing: 'তীত 1:1'");
1949
+ expect(p.parse("তী 1:1").osis()).toEqual("Titus.1.1", "parsing: 'তী 1:1'");
1950
+ });
1951
+ });
1952
+
1953
+ describe("Localized book Phlm (bn)", function() {
1954
+ var p;
1955
+ p = {};
1956
+ beforeEach(function() {
1957
+ p = new bcv_parser();
1958
+ p.set_options({
1959
+ book_alone_strategy: "ignore",
1960
+ book_sequence_strategy: "ignore",
1961
+ osis_compaction_strategy: "bc",
1962
+ captive_end_digits_strategy: "delete"
1963
+ });
1964
+ p.include_apocrypha(true);
1965
+ });
1966
+ it("should handle book: Phlm (bn)", function() {
1967
+ expect(p.parse("ফিলেমন 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'ফিলেমন 1:1'");
1968
+ expect(p.parse("Phlm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phlm 1:1'");
1969
+ expect(p.parse("ফি 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'ফি 1:1'");
1970
+ p.include_apocrypha(false);
1971
+ expect(p.parse("ফিলেমন 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'ফিলেমন 1:1'");
1972
+ expect(p.parse("PHLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHLM 1:1'");
1973
+ expect(p.parse("ফি 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'ফি 1:1'");
1974
+ });
1975
+ });
1976
+
1977
+ describe("Localized book Heb (bn)", function() {
1978
+ var p;
1979
+ p = {};
1980
+ beforeEach(function() {
1981
+ p = new bcv_parser();
1982
+ p.set_options({
1983
+ book_alone_strategy: "ignore",
1984
+ book_sequence_strategy: "ignore",
1985
+ osis_compaction_strategy: "bc",
1986
+ captive_end_digits_strategy: "delete"
1987
+ });
1988
+ p.include_apocrypha(true);
1989
+ });
1990
+ it("should handle book: Heb (bn)", function() {
1991
+ expect(p.parse("ইব্রীয় 1:1").osis()).toEqual("Heb.1.1", "parsing: 'ইব্রীয় 1:1'");
1992
+ expect(p.parse("Heb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Heb 1:1'");
1993
+ expect(p.parse("ই 1:1").osis()).toEqual("Heb.1.1", "parsing: 'ই 1:1'");
1994
+ p.include_apocrypha(false);
1995
+ expect(p.parse("ইব্রীয় 1:1").osis()).toEqual("Heb.1.1", "parsing: 'ইব্রীয় 1:1'");
1996
+ expect(p.parse("HEB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEB 1:1'");
1997
+ expect(p.parse("ই 1:1").osis()).toEqual("Heb.1.1", "parsing: 'ই 1:1'");
1998
+ });
1999
+ });
2000
+
2001
+ describe("Localized book Jas (bn)", function() {
2002
+ var p;
2003
+ p = {};
2004
+ beforeEach(function() {
2005
+ p = new bcv_parser();
2006
+ p.set_options({
2007
+ book_alone_strategy: "ignore",
2008
+ book_sequence_strategy: "ignore",
2009
+ osis_compaction_strategy: "bc",
2010
+ captive_end_digits_strategy: "delete"
2011
+ });
2012
+ p.include_apocrypha(true);
2013
+ });
2014
+ it("should handle book: Jas (bn)", function() {
2015
+ expect(p.parse("যাকোব 1:1").osis()).toEqual("Jas.1.1", "parsing: 'যাকোব 1:1'");
2016
+ expect(p.parse("Jas 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jas 1:1'");
2017
+ expect(p.parse("যা 1:1").osis()).toEqual("Jas.1.1", "parsing: 'যা 1:1'");
2018
+ p.include_apocrypha(false);
2019
+ expect(p.parse("যাকোব 1:1").osis()).toEqual("Jas.1.1", "parsing: 'যাকোব 1:1'");
2020
+ expect(p.parse("JAS 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAS 1:1'");
2021
+ expect(p.parse("যা 1:1").osis()).toEqual("Jas.1.1", "parsing: 'যা 1:1'");
2022
+ });
2023
+ });
2024
+
2025
+ describe("Localized book 2Pet (bn)", function() {
2026
+ var p;
2027
+ p = {};
2028
+ beforeEach(function() {
2029
+ p = new bcv_parser();
2030
+ p.set_options({
2031
+ book_alone_strategy: "ignore",
2032
+ book_sequence_strategy: "ignore",
2033
+ osis_compaction_strategy: "bc",
2034
+ captive_end_digits_strategy: "delete"
2035
+ });
2036
+ p.include_apocrypha(true);
2037
+ });
2038
+ it("should handle book: 2Pet (bn)", function() {
2039
+ expect(p.parse("2 পিতর 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 পিতর 1:1'");
2040
+ expect(p.parse("২ পিতর 1:1").osis()).toEqual("2Pet.1.1", "parsing: '২ পিতর 1:1'");
2041
+ expect(p.parse("2Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2Pet 1:1'");
2042
+ expect(p.parse("2পি 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2পি 1:1'");
2043
+ expect(p.parse("২পি 1:1").osis()).toEqual("2Pet.1.1", "parsing: '২পি 1:1'");
2044
+ });
2045
+ it("should handle non-Latin digits in book: 2Pet (bn)", function() {
2046
+ p.set_options({
2047
+ non_latin_digits_strategy: "replace"
2048
+ });
2049
+ expect(p.parse("2 পিতর 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 পিতর 1:1'");
2050
+ expect(p.parse("২ পিতর 1:1").osis()).toEqual("2Pet.1.1", "parsing: '২ পিতর 1:1'");
2051
+ expect(p.parse("2Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2Pet 1:1'");
2052
+ expect(p.parse("2পি 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2পি 1:1'");
2053
+ expect(p.parse("২পি 1:1").osis()).toEqual("2Pet.1.1", "parsing: '২পি 1:1'");
2054
+ return;
2055
+ p.include_apocrypha(false);
2056
+ expect(p.parse("2 পিতর 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 পিতর 1:1'");
2057
+ expect(p.parse("২ পিতর 1:1").osis()).toEqual("2Pet.1.1", "parsing: '২ পিতর 1:1'");
2058
+ expect(p.parse("2PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2PET 1:1'");
2059
+ expect(p.parse("2পি 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2পি 1:1'");
2060
+ expect(p.parse("২পি 1:1").osis()).toEqual("2Pet.1.1", "parsing: '২পি 1:1'");
2061
+ });
2062
+ });
2063
+
2064
+ describe("Localized book 1Pet (bn)", function() {
2065
+ var p;
2066
+ p = {};
2067
+ beforeEach(function() {
2068
+ p = new bcv_parser();
2069
+ p.set_options({
2070
+ book_alone_strategy: "ignore",
2071
+ book_sequence_strategy: "ignore",
2072
+ osis_compaction_strategy: "bc",
2073
+ captive_end_digits_strategy: "delete"
2074
+ });
2075
+ p.include_apocrypha(true);
2076
+ });
2077
+ it("should handle book: 1Pet (bn)", function() {
2078
+ expect(p.parse("প্রথম পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'প্রথম পিতর 1:1'");
2079
+ expect(p.parse("প্রথমপি 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'প্রথমপি 1:1'");
2080
+ expect(p.parse("1 পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 পিতর 1:1'");
2081
+ expect(p.parse("১ পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: '১ পিতর 1:1'");
2082
+ expect(p.parse("1Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1Pet 1:1'");
2083
+ expect(p.parse("1পি 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1পি 1:1'");
2084
+ expect(p.parse("১পি 1:1").osis()).toEqual("1Pet.1.1", "parsing: '১পি 1:1'");
2085
+ });
2086
+ it("should handle non-Latin digits in book: 1Pet (bn)", function() {
2087
+ p.set_options({
2088
+ non_latin_digits_strategy: "replace"
2089
+ });
2090
+ expect(p.parse("প্রথম পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'প্রথম পিতর 1:1'");
2091
+ expect(p.parse("প্রথমপি 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'প্রথমপি 1:1'");
2092
+ expect(p.parse("1 পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 পিতর 1:1'");
2093
+ expect(p.parse("১ পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: '১ পিতর 1:1'");
2094
+ expect(p.parse("1Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1Pet 1:1'");
2095
+ expect(p.parse("1পি 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1পি 1:1'");
2096
+ expect(p.parse("১পি 1:1").osis()).toEqual("1Pet.1.1", "parsing: '১পি 1:1'");
2097
+ return;
2098
+ p.include_apocrypha(false);
2099
+ expect(p.parse("প্রথম পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'প্রথম পিতর 1:1'");
2100
+ expect(p.parse("প্রথমপি 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'প্রথমপি 1:1'");
2101
+ expect(p.parse("1 পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 পিতর 1:1'");
2102
+ expect(p.parse("১ পিতর 1:1").osis()).toEqual("1Pet.1.1", "parsing: '১ পিতর 1:1'");
2103
+ expect(p.parse("1PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1PET 1:1'");
2104
+ expect(p.parse("1পি 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1পি 1:1'");
2105
+ expect(p.parse("১পি 1:1").osis()).toEqual("1Pet.1.1", "parsing: '১পি 1:1'");
2106
+ });
2107
+ });
2108
+
2109
+ describe("Localized book Jude (bn)", function() {
2110
+ var p;
2111
+ p = {};
2112
+ beforeEach(function() {
2113
+ p = new bcv_parser();
2114
+ p.set_options({
2115
+ book_alone_strategy: "ignore",
2116
+ book_sequence_strategy: "ignore",
2117
+ osis_compaction_strategy: "bc",
2118
+ captive_end_digits_strategy: "delete"
2119
+ });
2120
+ p.include_apocrypha(true);
2121
+ });
2122
+ it("should handle book: Jude (bn)", function() {
2123
+ expect(p.parse("যিহূদা 1:1").osis()).toEqual("Jude.1.1", "parsing: 'যিহূদা 1:1'");
2124
+ expect(p.parse("Jude 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jude 1:1'");
2125
+ expect(p.parse("যি 1:1").osis()).toEqual("Jude.1.1", "parsing: 'যি 1:1'");
2126
+ p.include_apocrypha(false);
2127
+ expect(p.parse("যিহূদা 1:1").osis()).toEqual("Jude.1.1", "parsing: 'যিহূদা 1:1'");
2128
+ expect(p.parse("JUDE 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDE 1:1'");
2129
+ expect(p.parse("যি 1:1").osis()).toEqual("Jude.1.1", "parsing: 'যি 1:1'");
2130
+ });
2131
+ });
2132
+
2133
+ describe("Localized book Tob (bn)", function() {
2134
+ var p;
2135
+ p = {};
2136
+ beforeEach(function() {
2137
+ p = new bcv_parser();
2138
+ p.set_options({
2139
+ book_alone_strategy: "ignore",
2140
+ book_sequence_strategy: "ignore",
2141
+ osis_compaction_strategy: "bc",
2142
+ captive_end_digits_strategy: "delete"
2143
+ });
2144
+ p.include_apocrypha(true);
2145
+ });
2146
+ it("should handle book: Tob (bn)", function() {
2147
+ expect(p.parse("Tob 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tob 1:1'");
2148
+ });
2149
+ });
2150
+
2151
+ describe("Localized book Jdt (bn)", function() {
2152
+ var p;
2153
+ p = {};
2154
+ beforeEach(function() {
2155
+ p = new bcv_parser();
2156
+ p.set_options({
2157
+ book_alone_strategy: "ignore",
2158
+ book_sequence_strategy: "ignore",
2159
+ osis_compaction_strategy: "bc",
2160
+ captive_end_digits_strategy: "delete"
2161
+ });
2162
+ p.include_apocrypha(true);
2163
+ });
2164
+ it("should handle book: Jdt (bn)", function() {
2165
+ expect(p.parse("Jdt 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Jdt 1:1'");
2166
+ });
2167
+ });
2168
+
2169
+ describe("Localized book Bar (bn)", function() {
2170
+ var p;
2171
+ p = {};
2172
+ beforeEach(function() {
2173
+ p = new bcv_parser();
2174
+ p.set_options({
2175
+ book_alone_strategy: "ignore",
2176
+ book_sequence_strategy: "ignore",
2177
+ osis_compaction_strategy: "bc",
2178
+ captive_end_digits_strategy: "delete"
2179
+ });
2180
+ p.include_apocrypha(true);
2181
+ });
2182
+ it("should handle book: Bar (bn)", function() {
2183
+ expect(p.parse("Bar 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Bar 1:1'");
2184
+ });
2185
+ });
2186
+
2187
+ describe("Localized book Sus (bn)", function() {
2188
+ var p;
2189
+ p = {};
2190
+ beforeEach(function() {
2191
+ p = new bcv_parser();
2192
+ p.set_options({
2193
+ book_alone_strategy: "ignore",
2194
+ book_sequence_strategy: "ignore",
2195
+ osis_compaction_strategy: "bc",
2196
+ captive_end_digits_strategy: "delete"
2197
+ });
2198
+ p.include_apocrypha(true);
2199
+ });
2200
+ it("should handle book: Sus (bn)", function() {
2201
+ expect(p.parse("Sus 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Sus 1:1'");
2202
+ });
2203
+ });
2204
+
2205
+ describe("Localized book 2Macc (bn)", function() {
2206
+ var p;
2207
+ p = {};
2208
+ beforeEach(function() {
2209
+ p = new bcv_parser();
2210
+ p.set_options({
2211
+ book_alone_strategy: "ignore",
2212
+ book_sequence_strategy: "ignore",
2213
+ osis_compaction_strategy: "bc",
2214
+ captive_end_digits_strategy: "delete"
2215
+ });
2216
+ p.include_apocrypha(true);
2217
+ });
2218
+ it("should handle book: 2Macc (bn)", function() {
2219
+ expect(p.parse("2Macc 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2Macc 1:1'");
2220
+ });
2221
+ });
2222
+
2223
+ describe("Localized book 3Macc (bn)", function() {
2224
+ var p;
2225
+ p = {};
2226
+ beforeEach(function() {
2227
+ p = new bcv_parser();
2228
+ p.set_options({
2229
+ book_alone_strategy: "ignore",
2230
+ book_sequence_strategy: "ignore",
2231
+ osis_compaction_strategy: "bc",
2232
+ captive_end_digits_strategy: "delete"
2233
+ });
2234
+ p.include_apocrypha(true);
2235
+ });
2236
+ it("should handle book: 3Macc (bn)", function() {
2237
+ expect(p.parse("3Macc 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3Macc 1:1'");
2238
+ });
2239
+ });
2240
+
2241
+ describe("Localized book 4Macc (bn)", function() {
2242
+ var p;
2243
+ p = {};
2244
+ beforeEach(function() {
2245
+ p = new bcv_parser();
2246
+ p.set_options({
2247
+ book_alone_strategy: "ignore",
2248
+ book_sequence_strategy: "ignore",
2249
+ osis_compaction_strategy: "bc",
2250
+ captive_end_digits_strategy: "delete"
2251
+ });
2252
+ p.include_apocrypha(true);
2253
+ });
2254
+ it("should handle book: 4Macc (bn)", function() {
2255
+ expect(p.parse("4Macc 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4Macc 1:1'");
2256
+ });
2257
+ });
2258
+
2259
+ describe("Localized book 1Macc (bn)", function() {
2260
+ var p;
2261
+ p = {};
2262
+ beforeEach(function() {
2263
+ p = new bcv_parser();
2264
+ p.set_options({
2265
+ book_alone_strategy: "ignore",
2266
+ book_sequence_strategy: "ignore",
2267
+ osis_compaction_strategy: "bc",
2268
+ captive_end_digits_strategy: "delete"
2269
+ });
2270
+ p.include_apocrypha(true);
2271
+ });
2272
+ it("should handle book: 1Macc (bn)", function() {
2273
+ expect(p.parse("1Macc 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1Macc 1:1'");
2274
+ });
2275
+ });
2276
+
2277
+ describe("Miscellaneous tests", function() {
2278
+ var p;
2279
+ p = {};
2280
+ beforeEach(function() {
2281
+ p = new bcv_parser();
2282
+ p.set_options({
2283
+ book_alone_strategy: "ignore",
2284
+ book_sequence_strategy: "ignore",
2285
+ osis_compaction_strategy: "bc",
2286
+ captive_end_digits_strategy: "delete"
2287
+ });
2288
+ p.include_apocrypha(true);
2289
+ });
2290
+ it("should return the expected language", function() {
2291
+ expect(p.languages).toEqual(["bn"]);
2292
+ });
2293
+ it("should handle ranges (bn)", function() {
2294
+ expect(p.parse("Titus 1:1 থেকে 2").osis()).toEqual("Titus.1.1-Titus.1.2", "parsing: 'Titus 1:1 থেকে 2'");
2295
+ expect(p.parse("Matt 1থেকে2").osis()).toEqual("Matt.1-Matt.2", "parsing: 'Matt 1থেকে2'");
2296
+ expect(p.parse("Phlm 2 থেকে 3").osis()).toEqual("Phlm.1.2-Phlm.1.3", "parsing: 'Phlm 2 থেকে 3'");
2297
+ });
2298
+ it("should handle chapters (bn)", function() {
2299
+ expect(p.parse("Titus 1:1, অধ্যায় 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, অধ্যায় 2'");
2300
+ expect(p.parse("Matt 3:4 অধ্যায় 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 অধ্যায় 6'");
2301
+ });
2302
+ it("should handle verses (bn)", function() {
2303
+ expect(p.parse("Exod 1:1 পদ 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 পদ 3'");
2304
+ expect(p.parse("Phlm পদ 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm পদ 6'");
2305
+ expect(p.parse("Exod 1:1 আয়াত 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 আয়াত 3'");
2306
+ expect(p.parse("Phlm আয়াত 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm আয়াত 6'");
2307
+ });
2308
+ it("should handle 'and' (bn)", function() {
2309
+ expect(p.parse("Exod 1:1 এবং 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 এবং 3'");
2310
+ expect(p.parse("Phlm 2 এবং 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 এবং 6'");
2311
+ });
2312
+ it("should handle titles (bn)", function() {
2313
+ expect(p.parse("Ps 3 শিরোনাম, 4:2, 5:শিরোনাম").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'Ps 3 শিরোনাম, 4:2, 5:শিরোনাম'");
2314
+ expect(p.parse("PS 3 শিরোনাম, 4:2, 5:শিরোনাম").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'PS 3 শিরোনাম, 4:2, 5:শিরোনাম'");
2315
+ });
2316
+ it("should handle 'ff' (bn)", function() {
2317
+ expect(p.parse("Rev 3ff, 4:2ff").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'Rev 3ff, 4:2ff'");
2318
+ expect(p.parse("REV 3 FF, 4:2 FF").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'REV 3 FF, 4:2 FF'");
2319
+ });
2320
+ it("should handle translations (bn)", function() {
2321
+ expect(p.parse("Lev 1 (kjv)").osis_and_translations()).toEqual([["Lev.1", "kjv"]]);
2322
+ expect(p.parse("lev 1 kjv").osis_and_translations()).toEqual([["Lev.1", "kjv"]]);
2323
+ });
2324
+ it("should handle book ranges (bn)", function() {
2325
+ p.set_options({
2326
+ book_alone_strategy: "full",
2327
+ book_range_strategy: "include"
2328
+ });
2329
+ expect(p.parse("১ থেকে ৩ যোহন").osis()).toEqual("1John.1-3John.1", "parsing: '১ থেকে ৩ যোহন'");
2330
+ });
2331
+ return it("should handle boundaries (bn)", function() {
2332
+ p.set_options({
2333
+ book_alone_strategy: "full"
2334
+ });
2335
+ expect(p.parse("\u2014Matt\u2014").osis()).toEqual("Matt.1-Matt.28", "parsing: '\u2014Matt\u2014'");
2336
+ expect(p.parse("\u201cMatt 1:1\u201d").osis()).toEqual("Matt.1.1", "parsing: '\u201cMatt 1:1\u201d'");
2337
+ });
2338
+ });
2339
+
2340
+ }).call(this);