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,2083 @@
1
+ (function() {
2
+ var bcv_parser;
3
+
4
+ bcv_parser = require("../../dist/bb-bcv-parser.js").bcv_parser;
5
+
6
+ describe("Parsing (bb)", 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 (bb)", 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 (bb)", function() {
82
+ expect(p.parse("Icitendekelo 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Icitendekelo 1:1'");
83
+ expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'");
84
+ expect(p.parse("Ici 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ici 1:1'");
85
+ p.include_apocrypha(false);
86
+ expect(p.parse("ICITENDEKELO 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ICITENDEKELO 1:1'");
87
+ expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'");
88
+ expect(p.parse("ICI 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ICI 1:1'");
89
+ });
90
+ });
91
+
92
+ describe("Localized book Exod (bb)", 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 (bb)", function() {
106
+ expect(p.parse("Ukufuma 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Ukufuma 1:1'");
107
+ expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'");
108
+ expect(p.parse("Uku 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Uku 1:1'");
109
+ p.include_apocrypha(false);
110
+ expect(p.parse("UKUFUMA 1:1").osis()).toEqual("Exod.1.1", "parsing: 'UKUFUMA 1:1'");
111
+ expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'");
112
+ expect(p.parse("UKU 1:1").osis()).toEqual("Exod.1.1", "parsing: 'UKU 1:1'");
113
+ });
114
+ });
115
+
116
+ describe("Localized book Bel (bb)", 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 (bb)", 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 (bb)", 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 (bb)", function() {
148
+ expect(p.parse("Abena Levi 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Abena Levi 1:1'");
149
+ expect(p.parse("Abe 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Abe 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("ABENA LEVI 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ABENA LEVI 1:1'");
153
+ expect(p.parse("ABE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ABE 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 (bb)", 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 (bb)", function() {
172
+ expect(p.parse("Impendwa 1:1").osis()).toEqual("Num.1.1", "parsing: 'Impendwa 1:1'");
173
+ expect(p.parse("Imp 1:1").osis()).toEqual("Num.1.1", "parsing: 'Imp 1:1'");
174
+ expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'");
175
+ p.include_apocrypha(false);
176
+ expect(p.parse("IMPENDWA 1:1").osis()).toEqual("Num.1.1", "parsing: 'IMPENDWA 1:1'");
177
+ expect(p.parse("IMP 1:1").osis()).toEqual("Num.1.1", "parsing: 'IMP 1:1'");
178
+ expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'");
179
+ });
180
+ });
181
+
182
+ describe("Localized book Sir (bb)", 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 (bb)", 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 (bb)", 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 (bb)", 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 (bb)", 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 (bb)", function() {
232
+ expect(p.parse("Amalilo 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Amalilo 1:1'");
233
+ expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'");
234
+ expect(p.parse("Lil 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lil 1:1'");
235
+ p.include_apocrypha(false);
236
+ expect(p.parse("AMALILO 1:1").osis()).toEqual("Lam.1.1", "parsing: 'AMALILO 1:1'");
237
+ expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'");
238
+ expect(p.parse("LIL 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LIL 1:1'");
239
+ });
240
+ });
241
+
242
+ describe("Localized book EpJer (bb)", 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 (bb)", 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 (bb)", 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 (bb)", function() {
274
+ expect(p.parse("Ubusokololo 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Ubusokololo 1:1'");
275
+ expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'");
276
+ expect(p.parse("Ubu 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Ubu 1:1'");
277
+ p.include_apocrypha(false);
278
+ expect(p.parse("UBUSOKOLOLO 1:1").osis()).toEqual("Rev.1.1", "parsing: 'UBUSOKOLOLO 1:1'");
279
+ expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'");
280
+ expect(p.parse("UBU 1:1").osis()).toEqual("Rev.1.1", "parsing: 'UBU 1:1'");
281
+ });
282
+ });
283
+
284
+ describe("Localized book PrMan (bb)", 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 (bb)", 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 (bb)", 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 (bb)", function() {
316
+ expect(p.parse("Amafunde 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Amafunde 1:1'");
317
+ expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'");
318
+ expect(p.parse("Fun 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fun 1:1'");
319
+ p.include_apocrypha(false);
320
+ expect(p.parse("AMAFUNDE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'AMAFUNDE 1:1'");
321
+ expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'");
322
+ expect(p.parse("FUN 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FUN 1:1'");
323
+ });
324
+ });
325
+
326
+ describe("Localized book Josh (bb)", 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 (bb)", function() {
340
+ expect(p.parse("Yoshua 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Yoshua 1:1'");
341
+ expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'");
342
+ expect(p.parse("Yos 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Yos 1:1'");
343
+ p.include_apocrypha(false);
344
+ expect(p.parse("YOSHUA 1:1").osis()).toEqual("Josh.1.1", "parsing: 'YOSHUA 1:1'");
345
+ expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'");
346
+ expect(p.parse("YOS 1:1").osis()).toEqual("Josh.1.1", "parsing: 'YOS 1:1'");
347
+ });
348
+ });
349
+
350
+ describe("Localized book Judg (bb)", 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 (bb)", function() {
364
+ expect(p.parse("Abapingushi 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Abapingushi 1:1'");
365
+ expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'");
366
+ expect(p.parse("Aba 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Aba 1:1'");
367
+ p.include_apocrypha(false);
368
+ expect(p.parse("ABAPINGUSHI 1:1").osis()).toEqual("Judg.1.1", "parsing: 'ABAPINGUSHI 1:1'");
369
+ expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'");
370
+ expect(p.parse("ABA 1:1").osis()).toEqual("Judg.1.1", "parsing: 'ABA 1:1'");
371
+ });
372
+ });
373
+
374
+ describe("Localized book Ruth (bb)", 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 (bb)", function() {
388
+ expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'");
389
+ expect(p.parse("Ruti 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruti 1:1'");
390
+ expect(p.parse("Rut 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rut 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("RUTI 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTI 1:1'");
394
+ expect(p.parse("RUT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUT 1:1'");
395
+ });
396
+ });
397
+
398
+ describe("Localized book 1Esd (bb)", 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 (bb)", 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 (bb)", 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 (bb)", 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 (bb)", 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 (bb)", function() {
448
+ expect(p.parse("Esaya 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esaya 1:1'");
449
+ expect(p.parse("Esa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esa 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("ESAYA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESAYA 1:1'");
453
+ expect(p.parse("ESA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESA 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 (bb)", 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 (bb)", function() {
472
+ expect(p.parse("2. Samwele 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Samwele 1:1'");
473
+ expect(p.parse("2 Samwele 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Samwele 1:1'");
474
+ expect(p.parse("2. S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. S 1:1'");
475
+ expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'");
476
+ expect(p.parse("2 S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 S 1:1'");
477
+ p.include_apocrypha(false);
478
+ expect(p.parse("2. SAMWELE 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAMWELE 1:1'");
479
+ expect(p.parse("2 SAMWELE 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAMWELE 1:1'");
480
+ expect(p.parse("2. S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. S 1:1'");
481
+ expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'");
482
+ expect(p.parse("2 S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 S 1:1'");
483
+ });
484
+ });
485
+
486
+ describe("Localized book 1Sam (bb)", function() {
487
+ var p;
488
+ p = {};
489
+ beforeEach(function() {
490
+ p = new bcv_parser();
491
+ p.set_options({
492
+ book_alone_strategy: "ignore",
493
+ book_sequence_strategy: "ignore",
494
+ osis_compaction_strategy: "bc",
495
+ captive_end_digits_strategy: "delete"
496
+ });
497
+ p.include_apocrypha(true);
498
+ });
499
+ it("should handle book: 1Sam (bb)", function() {
500
+ expect(p.parse("2. Samwele 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2. Samwele 1:1'");
501
+ expect(p.parse("2 Samwele 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2 Samwele 1:1'");
502
+ expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'");
503
+ expect(p.parse("2. S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2. S 1:1'");
504
+ expect(p.parse("2 S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2 S 1:1'");
505
+ p.include_apocrypha(false);
506
+ expect(p.parse("2. SAMWELE 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2. SAMWELE 1:1'");
507
+ expect(p.parse("2 SAMWELE 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2 SAMWELE 1:1'");
508
+ expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'");
509
+ expect(p.parse("2. S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2. S 1:1'");
510
+ expect(p.parse("2 S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '2 S 1:1'");
511
+ });
512
+ });
513
+
514
+ describe("Localized book 2Kgs (bb)", function() {
515
+ var p;
516
+ p = {};
517
+ beforeEach(function() {
518
+ p = new bcv_parser();
519
+ p.set_options({
520
+ book_alone_strategy: "ignore",
521
+ book_sequence_strategy: "ignore",
522
+ osis_compaction_strategy: "bc",
523
+ captive_end_digits_strategy: "delete"
524
+ });
525
+ p.include_apocrypha(true);
526
+ });
527
+ it("should handle book: 2Kgs (bb)", function() {
528
+ expect(p.parse("2. Ishamfumu 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Ishamfumu 1:1'");
529
+ expect(p.parse("2 Ishamfumu 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Ishamfumu 1:1'");
530
+ expect(p.parse("2. Is 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Is 1:1'");
531
+ expect(p.parse("2 Is 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Is 1:1'");
532
+ expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'");
533
+ p.include_apocrypha(false);
534
+ expect(p.parse("2. ISHAMFUMU 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. ISHAMFUMU 1:1'");
535
+ expect(p.parse("2 ISHAMFUMU 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 ISHAMFUMU 1:1'");
536
+ expect(p.parse("2. IS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. IS 1:1'");
537
+ expect(p.parse("2 IS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 IS 1:1'");
538
+ expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'");
539
+ });
540
+ });
541
+
542
+ describe("Localized book 1Kgs (bb)", 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: 1Kgs (bb)", function() {
556
+ expect(p.parse("2. Ishamfumu 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2. Ishamfumu 1:1'");
557
+ expect(p.parse("2 Ishamfumu 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2 Ishamfumu 1:1'");
558
+ expect(p.parse("2. Is 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2. Is 1:1'");
559
+ expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'");
560
+ expect(p.parse("2 Is 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2 Is 1:1'");
561
+ p.include_apocrypha(false);
562
+ expect(p.parse("2. ISHAMFUMU 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2. ISHAMFUMU 1:1'");
563
+ expect(p.parse("2 ISHAMFUMU 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2 ISHAMFUMU 1:1'");
564
+ expect(p.parse("2. IS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2. IS 1:1'");
565
+ expect(p.parse("1KGS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1KGS 1:1'");
566
+ expect(p.parse("2 IS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '2 IS 1:1'");
567
+ });
568
+ });
569
+
570
+ describe("Localized book 2Chr (bb)", function() {
571
+ var p;
572
+ p = {};
573
+ beforeEach(function() {
574
+ p = new bcv_parser();
575
+ p.set_options({
576
+ book_alone_strategy: "ignore",
577
+ book_sequence_strategy: "ignore",
578
+ osis_compaction_strategy: "bc",
579
+ captive_end_digits_strategy: "delete"
580
+ });
581
+ p.include_apocrypha(true);
582
+ });
583
+ it("should handle book: 2Chr (bb)", function() {
584
+ expect(p.parse("2. Imilandu 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Imilandu 1:1'");
585
+ expect(p.parse("2 Imilandu 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Imilandu 1:1'");
586
+ expect(p.parse("2. Im 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Im 1:1'");
587
+ expect(p.parse("2 Im 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Im 1:1'");
588
+ expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'");
589
+ p.include_apocrypha(false);
590
+ expect(p.parse("2. IMILANDU 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. IMILANDU 1:1'");
591
+ expect(p.parse("2 IMILANDU 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 IMILANDU 1:1'");
592
+ expect(p.parse("2. IM 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. IM 1:1'");
593
+ expect(p.parse("2 IM 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 IM 1:1'");
594
+ expect(p.parse("2CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2CHR 1:1'");
595
+ });
596
+ });
597
+
598
+ describe("Localized book 1Chr (bb)", function() {
599
+ var p;
600
+ p = {};
601
+ beforeEach(function() {
602
+ p = new bcv_parser();
603
+ p.set_options({
604
+ book_alone_strategy: "ignore",
605
+ book_sequence_strategy: "ignore",
606
+ osis_compaction_strategy: "bc",
607
+ captive_end_digits_strategy: "delete"
608
+ });
609
+ p.include_apocrypha(true);
610
+ });
611
+ it("should handle book: 1Chr (bb)", function() {
612
+ expect(p.parse("2. Imilandu 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2. Imilandu 1:1'");
613
+ expect(p.parse("2 Imilandu 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2 Imilandu 1:1'");
614
+ expect(p.parse("2. Im 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2. Im 1:1'");
615
+ expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'");
616
+ expect(p.parse("2 Im 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2 Im 1:1'");
617
+ p.include_apocrypha(false);
618
+ expect(p.parse("2. IMILANDU 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2. IMILANDU 1:1'");
619
+ expect(p.parse("2 IMILANDU 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2 IMILANDU 1:1'");
620
+ expect(p.parse("2. IM 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2. IM 1:1'");
621
+ expect(p.parse("1CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1CHR 1:1'");
622
+ expect(p.parse("2 IM 1:1").osis()).toEqual("1Chr.1.1", "parsing: '2 IM 1:1'");
623
+ });
624
+ });
625
+
626
+ describe("Localized book Ezra (bb)", 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: Ezra (bb)", function() {
640
+ expect(p.parse("Esra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Esra 1:1'");
641
+ expect(p.parse("Ezra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezra 1:1'");
642
+ expect(p.parse("Esr 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Esr 1:1'");
643
+ p.include_apocrypha(false);
644
+ expect(p.parse("ESRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'ESRA 1:1'");
645
+ expect(p.parse("EZRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZRA 1:1'");
646
+ expect(p.parse("ESR 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'ESR 1:1'");
647
+ });
648
+ });
649
+
650
+ describe("Localized book Neh (bb)", function() {
651
+ var p;
652
+ p = {};
653
+ beforeEach(function() {
654
+ p = new bcv_parser();
655
+ p.set_options({
656
+ book_alone_strategy: "ignore",
657
+ book_sequence_strategy: "ignore",
658
+ osis_compaction_strategy: "bc",
659
+ captive_end_digits_strategy: "delete"
660
+ });
661
+ p.include_apocrypha(true);
662
+ });
663
+ it("should handle book: Neh (bb)", function() {
664
+ expect(p.parse("Nehemia 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Nehemia 1:1'");
665
+ expect(p.parse("Neh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Neh 1:1'");
666
+ p.include_apocrypha(false);
667
+ expect(p.parse("NEHEMIA 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEHEMIA 1:1'");
668
+ expect(p.parse("NEH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEH 1:1'");
669
+ });
670
+ });
671
+
672
+ describe("Localized book GkEsth (bb)", function() {
673
+ var p;
674
+ p = {};
675
+ beforeEach(function() {
676
+ p = new bcv_parser();
677
+ p.set_options({
678
+ book_alone_strategy: "ignore",
679
+ book_sequence_strategy: "ignore",
680
+ osis_compaction_strategy: "bc",
681
+ captive_end_digits_strategy: "delete"
682
+ });
683
+ p.include_apocrypha(true);
684
+ });
685
+ it("should handle book: GkEsth (bb)", function() {
686
+ expect(p.parse("GkEsth 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'GkEsth 1:1'");
687
+ });
688
+ });
689
+
690
+ describe("Localized book Esth (bb)", function() {
691
+ var p;
692
+ p = {};
693
+ beforeEach(function() {
694
+ p = new bcv_parser();
695
+ p.set_options({
696
+ book_alone_strategy: "ignore",
697
+ book_sequence_strategy: "ignore",
698
+ osis_compaction_strategy: "bc",
699
+ captive_end_digits_strategy: "delete"
700
+ });
701
+ p.include_apocrypha(true);
702
+ });
703
+ it("should handle book: Esth (bb)", function() {
704
+ expect(p.parse("Esta 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esta 1:1'");
705
+ expect(p.parse("Esth 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esth 1:1'");
706
+ expect(p.parse("Est 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Est 1:1'");
707
+ p.include_apocrypha(false);
708
+ expect(p.parse("ESTA 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTA 1:1'");
709
+ expect(p.parse("ESTH 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTH 1:1'");
710
+ expect(p.parse("EST 1:1").osis()).toEqual("Esth.1.1", "parsing: 'EST 1:1'");
711
+ });
712
+ });
713
+
714
+ describe("Localized book Job (bb)", function() {
715
+ var p;
716
+ p = {};
717
+ beforeEach(function() {
718
+ p = new bcv_parser();
719
+ p.set_options({
720
+ book_alone_strategy: "ignore",
721
+ book_sequence_strategy: "ignore",
722
+ osis_compaction_strategy: "bc",
723
+ captive_end_digits_strategy: "delete"
724
+ });
725
+ p.include_apocrypha(true);
726
+ });
727
+ it("should handle book: Job (bb)", function() {
728
+ expect(p.parse("Yobo 1:1").osis()).toEqual("Job.1.1", "parsing: 'Yobo 1:1'");
729
+ expect(p.parse("Job 1:1").osis()).toEqual("Job.1.1", "parsing: 'Job 1:1'");
730
+ expect(p.parse("Yob 1:1").osis()).toEqual("Job.1.1", "parsing: 'Yob 1:1'");
731
+ p.include_apocrypha(false);
732
+ expect(p.parse("YOBO 1:1").osis()).toEqual("Job.1.1", "parsing: 'YOBO 1:1'");
733
+ expect(p.parse("JOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JOB 1:1'");
734
+ expect(p.parse("YOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'YOB 1:1'");
735
+ });
736
+ });
737
+
738
+ describe("Localized book Ps (bb)", function() {
739
+ var p;
740
+ p = {};
741
+ beforeEach(function() {
742
+ p = new bcv_parser();
743
+ p.set_options({
744
+ book_alone_strategy: "ignore",
745
+ book_sequence_strategy: "ignore",
746
+ osis_compaction_strategy: "bc",
747
+ captive_end_digits_strategy: "delete"
748
+ });
749
+ p.include_apocrypha(true);
750
+ });
751
+ it("should handle book: Ps (bb)", function() {
752
+ expect(p.parse("Amalumbo 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Amalumbo 1:1'");
753
+ expect(p.parse("Lum 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Lum 1:1'");
754
+ expect(p.parse("Ps 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Ps 1:1'");
755
+ p.include_apocrypha(false);
756
+ expect(p.parse("AMALUMBO 1:1").osis()).toEqual("Ps.1.1", "parsing: 'AMALUMBO 1:1'");
757
+ expect(p.parse("LUM 1:1").osis()).toEqual("Ps.1.1", "parsing: 'LUM 1:1'");
758
+ expect(p.parse("PS 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PS 1:1'");
759
+ });
760
+ });
761
+
762
+ describe("Localized book PrAzar (bb)", function() {
763
+ var p;
764
+ p = {};
765
+ beforeEach(function() {
766
+ p = new bcv_parser();
767
+ p.set_options({
768
+ book_alone_strategy: "ignore",
769
+ book_sequence_strategy: "ignore",
770
+ osis_compaction_strategy: "bc",
771
+ captive_end_digits_strategy: "delete"
772
+ });
773
+ p.include_apocrypha(true);
774
+ });
775
+ it("should handle book: PrAzar (bb)", function() {
776
+ expect(p.parse("PrAzar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'PrAzar 1:1'");
777
+ });
778
+ });
779
+
780
+ describe("Localized book Prov (bb)", function() {
781
+ var p;
782
+ p = {};
783
+ beforeEach(function() {
784
+ p = new bcv_parser();
785
+ p.set_options({
786
+ book_alone_strategy: "ignore",
787
+ book_sequence_strategy: "ignore",
788
+ osis_compaction_strategy: "bc",
789
+ captive_end_digits_strategy: "delete"
790
+ });
791
+ p.include_apocrypha(true);
792
+ });
793
+ it("should handle book: Prov (bb)", function() {
794
+ expect(p.parse("Amapinda 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Amapinda 1:1'");
795
+ expect(p.parse("Prov 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prov 1:1'");
796
+ expect(p.parse("Pin 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Pin 1:1'");
797
+ p.include_apocrypha(false);
798
+ expect(p.parse("AMAPINDA 1:1").osis()).toEqual("Prov.1.1", "parsing: 'AMAPINDA 1:1'");
799
+ expect(p.parse("PROV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROV 1:1'");
800
+ expect(p.parse("PIN 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PIN 1:1'");
801
+ });
802
+ });
803
+
804
+ describe("Localized book Eccl (bb)", function() {
805
+ var p;
806
+ p = {};
807
+ beforeEach(function() {
808
+ p = new bcv_parser();
809
+ p.set_options({
810
+ book_alone_strategy: "ignore",
811
+ book_sequence_strategy: "ignore",
812
+ osis_compaction_strategy: "bc",
813
+ captive_end_digits_strategy: "delete"
814
+ });
815
+ p.include_apocrypha(true);
816
+ });
817
+ it("should handle book: Eccl (bb)", function() {
818
+ expect(p.parse("Kafundisha 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Kafundisha 1:1'");
819
+ expect(p.parse("Eccl 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eccl 1:1'");
820
+ expect(p.parse("Kaf 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Kaf 1:1'");
821
+ p.include_apocrypha(false);
822
+ expect(p.parse("KAFUNDISHA 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'KAFUNDISHA 1:1'");
823
+ expect(p.parse("ECCL 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCL 1:1'");
824
+ expect(p.parse("KAF 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'KAF 1:1'");
825
+ });
826
+ });
827
+
828
+ describe("Localized book SgThree (bb)", function() {
829
+ var p;
830
+ p = {};
831
+ beforeEach(function() {
832
+ p = new bcv_parser();
833
+ p.set_options({
834
+ book_alone_strategy: "ignore",
835
+ book_sequence_strategy: "ignore",
836
+ osis_compaction_strategy: "bc",
837
+ captive_end_digits_strategy: "delete"
838
+ });
839
+ p.include_apocrypha(true);
840
+ });
841
+ it("should handle book: SgThree (bb)", function() {
842
+ expect(p.parse("SgThree 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'SgThree 1:1'");
843
+ });
844
+ });
845
+
846
+ describe("Localized book Song (bb)", 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: Song (bb)", function() {
860
+ expect(p.parse("Ulwimbo 1:1").osis()).toEqual("Song.1.1", "parsing: 'Ulwimbo 1:1'");
861
+ expect(p.parse("Song 1:1").osis()).toEqual("Song.1.1", "parsing: 'Song 1:1'");
862
+ expect(p.parse("Ulw 1:1").osis()).toEqual("Song.1.1", "parsing: 'Ulw 1:1'");
863
+ p.include_apocrypha(false);
864
+ expect(p.parse("ULWIMBO 1:1").osis()).toEqual("Song.1.1", "parsing: 'ULWIMBO 1:1'");
865
+ expect(p.parse("SONG 1:1").osis()).toEqual("Song.1.1", "parsing: 'SONG 1:1'");
866
+ expect(p.parse("ULW 1:1").osis()).toEqual("Song.1.1", "parsing: 'ULW 1:1'");
867
+ });
868
+ });
869
+
870
+ describe("Localized book Jer (bb)", function() {
871
+ var p;
872
+ p = {};
873
+ beforeEach(function() {
874
+ p = new bcv_parser();
875
+ p.set_options({
876
+ book_alone_strategy: "ignore",
877
+ book_sequence_strategy: "ignore",
878
+ osis_compaction_strategy: "bc",
879
+ captive_end_digits_strategy: "delete"
880
+ });
881
+ p.include_apocrypha(true);
882
+ });
883
+ it("should handle book: Jer (bb)", function() {
884
+ expect(p.parse("Yeremia 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Yeremia 1:1'");
885
+ expect(p.parse("Jer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jer 1:1'");
886
+ expect(p.parse("Yer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Yer 1:1'");
887
+ p.include_apocrypha(false);
888
+ expect(p.parse("YEREMIA 1:1").osis()).toEqual("Jer.1.1", "parsing: 'YEREMIA 1:1'");
889
+ expect(p.parse("JER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JER 1:1'");
890
+ expect(p.parse("YER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'YER 1:1'");
891
+ });
892
+ });
893
+
894
+ describe("Localized book Ezek (bb)", function() {
895
+ var p;
896
+ p = {};
897
+ beforeEach(function() {
898
+ p = new bcv_parser();
899
+ p.set_options({
900
+ book_alone_strategy: "ignore",
901
+ book_sequence_strategy: "ignore",
902
+ osis_compaction_strategy: "bc",
903
+ captive_end_digits_strategy: "delete"
904
+ });
905
+ p.include_apocrypha(true);
906
+ });
907
+ it("should handle book: Ezek (bb)", function() {
908
+ expect(p.parse("Esekieli 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Esekieli 1:1'");
909
+ expect(p.parse("Ezek 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezek 1:1'");
910
+ expect(p.parse("Ese 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ese 1:1'");
911
+ p.include_apocrypha(false);
912
+ expect(p.parse("ESEKIELI 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ESEKIELI 1:1'");
913
+ expect(p.parse("EZEK 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEK 1:1'");
914
+ expect(p.parse("ESE 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ESE 1:1'");
915
+ });
916
+ });
917
+
918
+ describe("Localized book Dan (bb)", function() {
919
+ var p;
920
+ p = {};
921
+ beforeEach(function() {
922
+ p = new bcv_parser();
923
+ p.set_options({
924
+ book_alone_strategy: "ignore",
925
+ book_sequence_strategy: "ignore",
926
+ osis_compaction_strategy: "bc",
927
+ captive_end_digits_strategy: "delete"
928
+ });
929
+ p.include_apocrypha(true);
930
+ });
931
+ it("should handle book: Dan (bb)", function() {
932
+ expect(p.parse("Daniele 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Daniele 1:1'");
933
+ expect(p.parse("Dan 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dan 1:1'");
934
+ p.include_apocrypha(false);
935
+ expect(p.parse("DANIELE 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DANIELE 1:1'");
936
+ expect(p.parse("DAN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DAN 1:1'");
937
+ });
938
+ });
939
+
940
+ describe("Localized book Hos (bb)", function() {
941
+ var p;
942
+ p = {};
943
+ beforeEach(function() {
944
+ p = new bcv_parser();
945
+ p.set_options({
946
+ book_alone_strategy: "ignore",
947
+ book_sequence_strategy: "ignore",
948
+ osis_compaction_strategy: "bc",
949
+ captive_end_digits_strategy: "delete"
950
+ });
951
+ p.include_apocrypha(true);
952
+ });
953
+ it("should handle book: Hos (bb)", function() {
954
+ expect(p.parse("Hosea 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hosea 1:1'");
955
+ expect(p.parse("Hos 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hos 1:1'");
956
+ p.include_apocrypha(false);
957
+ expect(p.parse("HOSEA 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOSEA 1:1'");
958
+ expect(p.parse("HOS 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOS 1:1'");
959
+ });
960
+ });
961
+
962
+ describe("Localized book Joel (bb)", function() {
963
+ var p;
964
+ p = {};
965
+ beforeEach(function() {
966
+ p = new bcv_parser();
967
+ p.set_options({
968
+ book_alone_strategy: "ignore",
969
+ book_sequence_strategy: "ignore",
970
+ osis_compaction_strategy: "bc",
971
+ captive_end_digits_strategy: "delete"
972
+ });
973
+ p.include_apocrypha(true);
974
+ });
975
+ it("should handle book: Joel (bb)", function() {
976
+ expect(p.parse("Yoeli 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Yoeli 1:1'");
977
+ expect(p.parse("Joel 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joel 1:1'");
978
+ expect(p.parse("Yoe 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Yoe 1:1'");
979
+ p.include_apocrypha(false);
980
+ expect(p.parse("YOELI 1:1").osis()).toEqual("Joel.1.1", "parsing: 'YOELI 1:1'");
981
+ expect(p.parse("JOEL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOEL 1:1'");
982
+ expect(p.parse("YOE 1:1").osis()).toEqual("Joel.1.1", "parsing: 'YOE 1:1'");
983
+ });
984
+ });
985
+
986
+ describe("Localized book Amos (bb)", function() {
987
+ var p;
988
+ p = {};
989
+ beforeEach(function() {
990
+ p = new bcv_parser();
991
+ p.set_options({
992
+ book_alone_strategy: "ignore",
993
+ book_sequence_strategy: "ignore",
994
+ osis_compaction_strategy: "bc",
995
+ captive_end_digits_strategy: "delete"
996
+ });
997
+ p.include_apocrypha(true);
998
+ });
999
+ it("should handle book: Amos (bb)", function() {
1000
+ expect(p.parse("Amosi 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amosi 1:1'");
1001
+ expect(p.parse("Amos 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amos 1:1'");
1002
+ expect(p.parse("Amo 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amo 1:1'");
1003
+ p.include_apocrypha(false);
1004
+ expect(p.parse("AMOSI 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMOSI 1:1'");
1005
+ expect(p.parse("AMOS 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMOS 1:1'");
1006
+ expect(p.parse("AMO 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMO 1:1'");
1007
+ });
1008
+ });
1009
+
1010
+ describe("Localized book Obad (bb)", function() {
1011
+ var p;
1012
+ p = {};
1013
+ beforeEach(function() {
1014
+ p = new bcv_parser();
1015
+ p.set_options({
1016
+ book_alone_strategy: "ignore",
1017
+ book_sequence_strategy: "ignore",
1018
+ osis_compaction_strategy: "bc",
1019
+ captive_end_digits_strategy: "delete"
1020
+ });
1021
+ p.include_apocrypha(true);
1022
+ });
1023
+ it("should handle book: Obad (bb)", function() {
1024
+ expect(p.parse("Obadia 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obadia 1:1'");
1025
+ expect(p.parse("Obad 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obad 1:1'");
1026
+ expect(p.parse("Oba 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Oba 1:1'");
1027
+ p.include_apocrypha(false);
1028
+ expect(p.parse("OBADIA 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBADIA 1:1'");
1029
+ expect(p.parse("OBAD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBAD 1:1'");
1030
+ expect(p.parse("OBA 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBA 1:1'");
1031
+ });
1032
+ });
1033
+
1034
+ describe("Localized book Jonah (bb)", function() {
1035
+ var p;
1036
+ p = {};
1037
+ beforeEach(function() {
1038
+ p = new bcv_parser();
1039
+ p.set_options({
1040
+ book_alone_strategy: "ignore",
1041
+ book_sequence_strategy: "ignore",
1042
+ osis_compaction_strategy: "bc",
1043
+ captive_end_digits_strategy: "delete"
1044
+ });
1045
+ p.include_apocrypha(true);
1046
+ });
1047
+ it("should handle book: Jonah (bb)", function() {
1048
+ expect(p.parse("Jonah 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonah 1:1'");
1049
+ expect(p.parse("Yona 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Yona 1:1'");
1050
+ expect(p.parse("Yon 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Yon 1:1'");
1051
+ p.include_apocrypha(false);
1052
+ expect(p.parse("JONAH 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAH 1:1'");
1053
+ expect(p.parse("YONA 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'YONA 1:1'");
1054
+ expect(p.parse("YON 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'YON 1:1'");
1055
+ });
1056
+ });
1057
+
1058
+ describe("Localized book Mic (bb)", function() {
1059
+ var p;
1060
+ p = {};
1061
+ beforeEach(function() {
1062
+ p = new bcv_parser();
1063
+ p.set_options({
1064
+ book_alone_strategy: "ignore",
1065
+ book_sequence_strategy: "ignore",
1066
+ osis_compaction_strategy: "bc",
1067
+ captive_end_digits_strategy: "delete"
1068
+ });
1069
+ p.include_apocrypha(true);
1070
+ });
1071
+ it("should handle book: Mic (bb)", function() {
1072
+ expect(p.parse("Mika 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mika 1:1'");
1073
+ expect(p.parse("Mic 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mic 1:1'");
1074
+ expect(p.parse("Mik 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mik 1:1'");
1075
+ p.include_apocrypha(false);
1076
+ expect(p.parse("MIKA 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIKA 1:1'");
1077
+ expect(p.parse("MIC 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIC 1:1'");
1078
+ expect(p.parse("MIK 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIK 1:1'");
1079
+ });
1080
+ });
1081
+
1082
+ describe("Localized book Nah (bb)", function() {
1083
+ var p;
1084
+ p = {};
1085
+ beforeEach(function() {
1086
+ p = new bcv_parser();
1087
+ p.set_options({
1088
+ book_alone_strategy: "ignore",
1089
+ book_sequence_strategy: "ignore",
1090
+ osis_compaction_strategy: "bc",
1091
+ captive_end_digits_strategy: "delete"
1092
+ });
1093
+ p.include_apocrypha(true);
1094
+ });
1095
+ it("should handle book: Nah (bb)", function() {
1096
+ expect(p.parse("Nahumu 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nahumu 1:1'");
1097
+ expect(p.parse("Nah 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nah 1:1'");
1098
+ p.include_apocrypha(false);
1099
+ expect(p.parse("NAHUMU 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAHUMU 1:1'");
1100
+ expect(p.parse("NAH 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAH 1:1'");
1101
+ });
1102
+ });
1103
+
1104
+ describe("Localized book Hab (bb)", function() {
1105
+ var p;
1106
+ p = {};
1107
+ beforeEach(function() {
1108
+ p = new bcv_parser();
1109
+ p.set_options({
1110
+ book_alone_strategy: "ignore",
1111
+ book_sequence_strategy: "ignore",
1112
+ osis_compaction_strategy: "bc",
1113
+ captive_end_digits_strategy: "delete"
1114
+ });
1115
+ p.include_apocrypha(true);
1116
+ });
1117
+ it("should handle book: Hab (bb)", function() {
1118
+ expect(p.parse("Habakuku 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habakuku 1:1'");
1119
+ expect(p.parse("Hab 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Hab 1:1'");
1120
+ p.include_apocrypha(false);
1121
+ expect(p.parse("HABAKUKU 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAKUKU 1:1'");
1122
+ expect(p.parse("HAB 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HAB 1:1'");
1123
+ });
1124
+ });
1125
+
1126
+ describe("Localized book Zeph (bb)", function() {
1127
+ var p;
1128
+ p = {};
1129
+ beforeEach(function() {
1130
+ p = new bcv_parser();
1131
+ p.set_options({
1132
+ book_alone_strategy: "ignore",
1133
+ book_sequence_strategy: "ignore",
1134
+ osis_compaction_strategy: "bc",
1135
+ captive_end_digits_strategy: "delete"
1136
+ });
1137
+ p.include_apocrypha(true);
1138
+ });
1139
+ it("should handle book: Zeph (bb)", function() {
1140
+ expect(p.parse("Sefania 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sefania 1:1'");
1141
+ expect(p.parse("Zeph 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zeph 1:1'");
1142
+ expect(p.parse("Sef 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sef 1:1'");
1143
+ p.include_apocrypha(false);
1144
+ expect(p.parse("SEFANIA 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SEFANIA 1:1'");
1145
+ expect(p.parse("ZEPH 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEPH 1:1'");
1146
+ expect(p.parse("SEF 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SEF 1:1'");
1147
+ });
1148
+ });
1149
+
1150
+ describe("Localized book Hag (bb)", function() {
1151
+ var p;
1152
+ p = {};
1153
+ beforeEach(function() {
1154
+ p = new bcv_parser();
1155
+ p.set_options({
1156
+ book_alone_strategy: "ignore",
1157
+ book_sequence_strategy: "ignore",
1158
+ osis_compaction_strategy: "bc",
1159
+ captive_end_digits_strategy: "delete"
1160
+ });
1161
+ p.include_apocrypha(true);
1162
+ });
1163
+ it("should handle book: Hag (bb)", function() {
1164
+ expect(p.parse("Hagai 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hagai 1:1'");
1165
+ expect(p.parse("Hag 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hag 1:1'");
1166
+ p.include_apocrypha(false);
1167
+ expect(p.parse("HAGAI 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAGAI 1:1'");
1168
+ expect(p.parse("HAG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAG 1:1'");
1169
+ });
1170
+ });
1171
+
1172
+ describe("Localized book Zech (bb)", function() {
1173
+ var p;
1174
+ p = {};
1175
+ beforeEach(function() {
1176
+ p = new bcv_parser();
1177
+ p.set_options({
1178
+ book_alone_strategy: "ignore",
1179
+ book_sequence_strategy: "ignore",
1180
+ osis_compaction_strategy: "bc",
1181
+ captive_end_digits_strategy: "delete"
1182
+ });
1183
+ p.include_apocrypha(true);
1184
+ });
1185
+ it("should handle book: Zech (bb)", function() {
1186
+ expect(p.parse("Sakaria 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Sakaria 1:1'");
1187
+ expect(p.parse("Zech 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zech 1:1'");
1188
+ expect(p.parse("Sak 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Sak 1:1'");
1189
+ p.include_apocrypha(false);
1190
+ expect(p.parse("SAKARIA 1:1").osis()).toEqual("Zech.1.1", "parsing: 'SAKARIA 1:1'");
1191
+ expect(p.parse("ZECH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZECH 1:1'");
1192
+ expect(p.parse("SAK 1:1").osis()).toEqual("Zech.1.1", "parsing: 'SAK 1:1'");
1193
+ });
1194
+ });
1195
+
1196
+ describe("Localized book Mal (bb)", function() {
1197
+ var p;
1198
+ p = {};
1199
+ beforeEach(function() {
1200
+ p = new bcv_parser();
1201
+ p.set_options({
1202
+ book_alone_strategy: "ignore",
1203
+ book_sequence_strategy: "ignore",
1204
+ osis_compaction_strategy: "bc",
1205
+ captive_end_digits_strategy: "delete"
1206
+ });
1207
+ p.include_apocrypha(true);
1208
+ });
1209
+ it("should handle book: Mal (bb)", function() {
1210
+ expect(p.parse("Malaki 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malaki 1:1'");
1211
+ expect(p.parse("Mal 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Mal 1:1'");
1212
+ p.include_apocrypha(false);
1213
+ expect(p.parse("MALAKI 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALAKI 1:1'");
1214
+ expect(p.parse("MAL 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MAL 1:1'");
1215
+ });
1216
+ });
1217
+
1218
+ describe("Localized book Matt (bb)", 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: Matt (bb)", function() {
1232
+ expect(p.parse("Mateo 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Mateo 1:1'");
1233
+ expect(p.parse("Matt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matt 1:1'");
1234
+ expect(p.parse("Mat 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Mat 1:1'");
1235
+ p.include_apocrypha(false);
1236
+ expect(p.parse("MATEO 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATEO 1:1'");
1237
+ expect(p.parse("MATT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATT 1:1'");
1238
+ expect(p.parse("MAT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MAT 1:1'");
1239
+ });
1240
+ });
1241
+
1242
+ describe("Localized book Mark (bb)", 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: Mark (bb)", function() {
1256
+ expect(p.parse("Mako 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mako 1:1'");
1257
+ expect(p.parse("Mark 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mark 1:1'");
1258
+ expect(p.parse("Mak 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mak 1:1'");
1259
+ p.include_apocrypha(false);
1260
+ expect(p.parse("MAKO 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MAKO 1:1'");
1261
+ expect(p.parse("MARK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARK 1:1'");
1262
+ expect(p.parse("MAK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MAK 1:1'");
1263
+ });
1264
+ });
1265
+
1266
+ describe("Localized book Luke (bb)", 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: Luke (bb)", function() {
1280
+ expect(p.parse("Luka 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luka 1:1'");
1281
+ expect(p.parse("Luke 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luke 1:1'");
1282
+ expect(p.parse("Luk 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luk 1:1'");
1283
+ p.include_apocrypha(false);
1284
+ expect(p.parse("LUKA 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKA 1:1'");
1285
+ expect(p.parse("LUKE 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKE 1:1'");
1286
+ expect(p.parse("LUK 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUK 1:1'");
1287
+ });
1288
+ });
1289
+
1290
+ describe("Localized book 1John (bb)", 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: 1John (bb)", function() {
1304
+ expect(p.parse("2. Yoani 1:1").osis()).toEqual("1John.1.1", "parsing: '2. Yoani 1:1'");
1305
+ expect(p.parse("2 Yoani 1:1").osis()).toEqual("1John.1.1", "parsing: '2 Yoani 1:1'");
1306
+ expect(p.parse("1John 1:1").osis()).toEqual("1John.1.1", "parsing: '1John 1:1'");
1307
+ expect(p.parse("2. Yo 1:1").osis()).toEqual("1John.1.1", "parsing: '2. Yo 1:1'");
1308
+ expect(p.parse("2 Yo 1:1").osis()).toEqual("1John.1.1", "parsing: '2 Yo 1:1'");
1309
+ p.include_apocrypha(false);
1310
+ expect(p.parse("2. YOANI 1:1").osis()).toEqual("1John.1.1", "parsing: '2. YOANI 1:1'");
1311
+ expect(p.parse("2 YOANI 1:1").osis()).toEqual("1John.1.1", "parsing: '2 YOANI 1:1'");
1312
+ expect(p.parse("1JOHN 1:1").osis()).toEqual("1John.1.1", "parsing: '1JOHN 1:1'");
1313
+ expect(p.parse("2. YO 1:1").osis()).toEqual("1John.1.1", "parsing: '2. YO 1:1'");
1314
+ expect(p.parse("2 YO 1:1").osis()).toEqual("1John.1.1", "parsing: '2 YO 1:1'");
1315
+ });
1316
+ });
1317
+
1318
+ describe("Localized book 2John (bb)", function() {
1319
+ var p;
1320
+ p = {};
1321
+ beforeEach(function() {
1322
+ p = new bcv_parser();
1323
+ p.set_options({
1324
+ book_alone_strategy: "ignore",
1325
+ book_sequence_strategy: "ignore",
1326
+ osis_compaction_strategy: "bc",
1327
+ captive_end_digits_strategy: "delete"
1328
+ });
1329
+ p.include_apocrypha(true);
1330
+ });
1331
+ it("should handle book: 2John (bb)", function() {
1332
+ expect(p.parse("2. Yoani 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Yoani 1:1'");
1333
+ expect(p.parse("2 Yoani 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Yoani 1:1'");
1334
+ expect(p.parse("2. Yo 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Yo 1:1'");
1335
+ expect(p.parse("2John 1:1").osis()).toEqual("2John.1.1", "parsing: '2John 1:1'");
1336
+ expect(p.parse("2 Yo 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Yo 1:1'");
1337
+ p.include_apocrypha(false);
1338
+ expect(p.parse("2. YOANI 1:1").osis()).toEqual("2John.1.1", "parsing: '2. YOANI 1:1'");
1339
+ expect(p.parse("2 YOANI 1:1").osis()).toEqual("2John.1.1", "parsing: '2 YOANI 1:1'");
1340
+ expect(p.parse("2. YO 1:1").osis()).toEqual("2John.1.1", "parsing: '2. YO 1:1'");
1341
+ expect(p.parse("2JOHN 1:1").osis()).toEqual("2John.1.1", "parsing: '2JOHN 1:1'");
1342
+ expect(p.parse("2 YO 1:1").osis()).toEqual("2John.1.1", "parsing: '2 YO 1:1'");
1343
+ });
1344
+ });
1345
+
1346
+ describe("Localized book 3John (bb)", function() {
1347
+ var p;
1348
+ p = {};
1349
+ beforeEach(function() {
1350
+ p = new bcv_parser();
1351
+ p.set_options({
1352
+ book_alone_strategy: "ignore",
1353
+ book_sequence_strategy: "ignore",
1354
+ osis_compaction_strategy: "bc",
1355
+ captive_end_digits_strategy: "delete"
1356
+ });
1357
+ p.include_apocrypha(true);
1358
+ });
1359
+ it("should handle book: 3John (bb)", function() {
1360
+ expect(p.parse("3 Yoani 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Yoani 1:1'");
1361
+ expect(p.parse("3John 1:1").osis()).toEqual("3John.1.1", "parsing: '3John 1:1'");
1362
+ expect(p.parse("3Yo 1:1").osis()).toEqual("3John.1.1", "parsing: '3Yo 1:1'");
1363
+ p.include_apocrypha(false);
1364
+ expect(p.parse("3 YOANI 1:1").osis()).toEqual("3John.1.1", "parsing: '3 YOANI 1:1'");
1365
+ expect(p.parse("3JOHN 1:1").osis()).toEqual("3John.1.1", "parsing: '3JOHN 1:1'");
1366
+ expect(p.parse("3YO 1:1").osis()).toEqual("3John.1.1", "parsing: '3YO 1:1'");
1367
+ });
1368
+ });
1369
+
1370
+ describe("Localized book John (bb)", function() {
1371
+ var p;
1372
+ p = {};
1373
+ beforeEach(function() {
1374
+ p = new bcv_parser();
1375
+ p.set_options({
1376
+ book_alone_strategy: "ignore",
1377
+ book_sequence_strategy: "ignore",
1378
+ osis_compaction_strategy: "bc",
1379
+ captive_end_digits_strategy: "delete"
1380
+ });
1381
+ p.include_apocrypha(true);
1382
+ });
1383
+ it("should handle book: John (bb)", function() {
1384
+ expect(p.parse("Yoani 1:1").osis()).toEqual("John.1.1", "parsing: 'Yoani 1:1'");
1385
+ expect(p.parse("John 1:1").osis()).toEqual("John.1.1", "parsing: 'John 1:1'");
1386
+ expect(p.parse("Yoa 1:1").osis()).toEqual("John.1.1", "parsing: 'Yoa 1:1'");
1387
+ p.include_apocrypha(false);
1388
+ expect(p.parse("YOANI 1:1").osis()).toEqual("John.1.1", "parsing: 'YOANI 1:1'");
1389
+ expect(p.parse("JOHN 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHN 1:1'");
1390
+ expect(p.parse("YOA 1:1").osis()).toEqual("John.1.1", "parsing: 'YOA 1:1'");
1391
+ });
1392
+ });
1393
+
1394
+ describe("Localized book Acts (bb)", function() {
1395
+ var p;
1396
+ p = {};
1397
+ beforeEach(function() {
1398
+ p = new bcv_parser();
1399
+ p.set_options({
1400
+ book_alone_strategy: "ignore",
1401
+ book_sequence_strategy: "ignore",
1402
+ osis_compaction_strategy: "bc",
1403
+ captive_end_digits_strategy: "delete"
1404
+ });
1405
+ p.include_apocrypha(true);
1406
+ });
1407
+ it("should handle book: Acts (bb)", function() {
1408
+ expect(p.parse("Imilimo 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Imilimo 1:1'");
1409
+ expect(p.parse("Acts 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Acts 1:1'");
1410
+ expect(p.parse("Imi 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Imi 1:1'");
1411
+ p.include_apocrypha(false);
1412
+ expect(p.parse("IMILIMO 1:1").osis()).toEqual("Acts.1.1", "parsing: 'IMILIMO 1:1'");
1413
+ expect(p.parse("ACTS 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTS 1:1'");
1414
+ expect(p.parse("IMI 1:1").osis()).toEqual("Acts.1.1", "parsing: 'IMI 1:1'");
1415
+ });
1416
+ });
1417
+
1418
+ describe("Localized book Rom (bb)", function() {
1419
+ var p;
1420
+ p = {};
1421
+ beforeEach(function() {
1422
+ p = new bcv_parser();
1423
+ p.set_options({
1424
+ book_alone_strategy: "ignore",
1425
+ book_sequence_strategy: "ignore",
1426
+ osis_compaction_strategy: "bc",
1427
+ captive_end_digits_strategy: "delete"
1428
+ });
1429
+ p.include_apocrypha(true);
1430
+ });
1431
+ it("should handle book: Rom (bb)", function() {
1432
+ expect(p.parse("Roma 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Roma 1:1'");
1433
+ expect(p.parse("Rom 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rom 1:1'");
1434
+ p.include_apocrypha(false);
1435
+ expect(p.parse("ROMA 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROMA 1:1'");
1436
+ expect(p.parse("ROM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROM 1:1'");
1437
+ });
1438
+ });
1439
+
1440
+ describe("Localized book 2Cor (bb)", function() {
1441
+ var p;
1442
+ p = {};
1443
+ beforeEach(function() {
1444
+ p = new bcv_parser();
1445
+ p.set_options({
1446
+ book_alone_strategy: "ignore",
1447
+ book_sequence_strategy: "ignore",
1448
+ osis_compaction_strategy: "bc",
1449
+ captive_end_digits_strategy: "delete"
1450
+ });
1451
+ p.include_apocrypha(true);
1452
+ });
1453
+ it("should handle book: 2Cor (bb)", function() {
1454
+ expect(p.parse("2. Kolinti 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Kolinti 1:1'");
1455
+ expect(p.parse("2 Kolinti 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Kolinti 1:1'");
1456
+ expect(p.parse("2. K 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. K 1:1'");
1457
+ expect(p.parse("2Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2Cor 1:1'");
1458
+ expect(p.parse("2 K 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 K 1:1'");
1459
+ p.include_apocrypha(false);
1460
+ expect(p.parse("2. KOLINTI 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KOLINTI 1:1'");
1461
+ expect(p.parse("2 KOLINTI 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KOLINTI 1:1'");
1462
+ expect(p.parse("2. K 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. K 1:1'");
1463
+ expect(p.parse("2COR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2COR 1:1'");
1464
+ expect(p.parse("2 K 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 K 1:1'");
1465
+ });
1466
+ });
1467
+
1468
+ describe("Localized book 1Cor (bb)", function() {
1469
+ var p;
1470
+ p = {};
1471
+ beforeEach(function() {
1472
+ p = new bcv_parser();
1473
+ p.set_options({
1474
+ book_alone_strategy: "ignore",
1475
+ book_sequence_strategy: "ignore",
1476
+ osis_compaction_strategy: "bc",
1477
+ captive_end_digits_strategy: "delete"
1478
+ });
1479
+ p.include_apocrypha(true);
1480
+ });
1481
+ it("should handle book: 1Cor (bb)", function() {
1482
+ expect(p.parse("2. Kolinti 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2. Kolinti 1:1'");
1483
+ expect(p.parse("2 Kolinti 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2 Kolinti 1:1'");
1484
+ expect(p.parse("1Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1Cor 1:1'");
1485
+ expect(p.parse("2. K 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2. K 1:1'");
1486
+ expect(p.parse("2 K 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2 K 1:1'");
1487
+ p.include_apocrypha(false);
1488
+ expect(p.parse("2. KOLINTI 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2. KOLINTI 1:1'");
1489
+ expect(p.parse("2 KOLINTI 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2 KOLINTI 1:1'");
1490
+ expect(p.parse("1COR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1COR 1:1'");
1491
+ expect(p.parse("2. K 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2. K 1:1'");
1492
+ expect(p.parse("2 K 1:1").osis()).toEqual("1Cor.1.1", "parsing: '2 K 1:1'");
1493
+ });
1494
+ });
1495
+
1496
+ describe("Localized book Gal (bb)", function() {
1497
+ var p;
1498
+ p = {};
1499
+ beforeEach(function() {
1500
+ p = new bcv_parser();
1501
+ p.set_options({
1502
+ book_alone_strategy: "ignore",
1503
+ book_sequence_strategy: "ignore",
1504
+ osis_compaction_strategy: "bc",
1505
+ captive_end_digits_strategy: "delete"
1506
+ });
1507
+ p.include_apocrypha(true);
1508
+ });
1509
+ it("should handle book: Gal (bb)", function() {
1510
+ expect(p.parse("Galatia 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Galatia 1:1'");
1511
+ expect(p.parse("Gal 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Gal 1:1'");
1512
+ p.include_apocrypha(false);
1513
+ expect(p.parse("GALATIA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GALATIA 1:1'");
1514
+ expect(p.parse("GAL 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GAL 1:1'");
1515
+ });
1516
+ });
1517
+
1518
+ describe("Localized book Eph (bb)", function() {
1519
+ var p;
1520
+ p = {};
1521
+ beforeEach(function() {
1522
+ p = new bcv_parser();
1523
+ p.set_options({
1524
+ book_alone_strategy: "ignore",
1525
+ book_sequence_strategy: "ignore",
1526
+ osis_compaction_strategy: "bc",
1527
+ captive_end_digits_strategy: "delete"
1528
+ });
1529
+ p.include_apocrypha(true);
1530
+ });
1531
+ it("should handle book: Eph (bb)", function() {
1532
+ expect(p.parse("Efeso 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Efeso 1:1'");
1533
+ expect(p.parse("Efe 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Efe 1:1'");
1534
+ expect(p.parse("Eph 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Eph 1:1'");
1535
+ p.include_apocrypha(false);
1536
+ expect(p.parse("EFESO 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EFESO 1:1'");
1537
+ expect(p.parse("EFE 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EFE 1:1'");
1538
+ expect(p.parse("EPH 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPH 1:1'");
1539
+ });
1540
+ });
1541
+
1542
+ describe("Localized book Phil (bb)", function() {
1543
+ var p;
1544
+ p = {};
1545
+ beforeEach(function() {
1546
+ p = new bcv_parser();
1547
+ p.set_options({
1548
+ book_alone_strategy: "ignore",
1549
+ book_sequence_strategy: "ignore",
1550
+ osis_compaction_strategy: "bc",
1551
+ captive_end_digits_strategy: "delete"
1552
+ });
1553
+ p.include_apocrypha(true);
1554
+ });
1555
+ it("should handle book: Phil (bb)", function() {
1556
+ expect(p.parse("Filipi 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Filipi 1:1'");
1557
+ expect(p.parse("Phil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Phil 1:1'");
1558
+ expect(p.parse("Fil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Fil 1:1'");
1559
+ p.include_apocrypha(false);
1560
+ expect(p.parse("FILIPI 1:1").osis()).toEqual("Phil.1.1", "parsing: 'FILIPI 1:1'");
1561
+ expect(p.parse("PHIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHIL 1:1'");
1562
+ expect(p.parse("FIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'FIL 1:1'");
1563
+ });
1564
+ });
1565
+
1566
+ describe("Localized book Col (bb)", function() {
1567
+ var p;
1568
+ p = {};
1569
+ beforeEach(function() {
1570
+ p = new bcv_parser();
1571
+ p.set_options({
1572
+ book_alone_strategy: "ignore",
1573
+ book_sequence_strategy: "ignore",
1574
+ osis_compaction_strategy: "bc",
1575
+ captive_end_digits_strategy: "delete"
1576
+ });
1577
+ p.include_apocrypha(true);
1578
+ });
1579
+ it("should handle book: Col (bb)", function() {
1580
+ expect(p.parse("Kolose 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kolose 1:1'");
1581
+ expect(p.parse("Col 1:1").osis()).toEqual("Col.1.1", "parsing: 'Col 1:1'");
1582
+ expect(p.parse("Kol 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kol 1:1'");
1583
+ p.include_apocrypha(false);
1584
+ expect(p.parse("KOLOSE 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOLOSE 1:1'");
1585
+ expect(p.parse("COL 1:1").osis()).toEqual("Col.1.1", "parsing: 'COL 1:1'");
1586
+ expect(p.parse("KOL 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOL 1:1'");
1587
+ });
1588
+ });
1589
+
1590
+ describe("Localized book 2Thess (bb)", function() {
1591
+ var p;
1592
+ p = {};
1593
+ beforeEach(function() {
1594
+ p = new bcv_parser();
1595
+ p.set_options({
1596
+ book_alone_strategy: "ignore",
1597
+ book_sequence_strategy: "ignore",
1598
+ osis_compaction_strategy: "bc",
1599
+ captive_end_digits_strategy: "delete"
1600
+ });
1601
+ p.include_apocrypha(true);
1602
+ });
1603
+ it("should handle book: 2Thess (bb)", function() {
1604
+ expect(p.parse("2. Tesalonika 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Tesalonika 1:1'");
1605
+ expect(p.parse("2 Tesalonika 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Tesalonika 1:1'");
1606
+ expect(p.parse("2Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2Thess 1:1'");
1607
+ expect(p.parse("2. Te 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Te 1:1'");
1608
+ expect(p.parse("2 Te 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Te 1:1'");
1609
+ p.include_apocrypha(false);
1610
+ expect(p.parse("2. TESALONIKA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. TESALONIKA 1:1'");
1611
+ expect(p.parse("2 TESALONIKA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 TESALONIKA 1:1'");
1612
+ expect(p.parse("2THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2THESS 1:1'");
1613
+ expect(p.parse("2. TE 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. TE 1:1'");
1614
+ expect(p.parse("2 TE 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 TE 1:1'");
1615
+ });
1616
+ });
1617
+
1618
+ describe("Localized book 1Thess (bb)", function() {
1619
+ var p;
1620
+ p = {};
1621
+ beforeEach(function() {
1622
+ p = new bcv_parser();
1623
+ p.set_options({
1624
+ book_alone_strategy: "ignore",
1625
+ book_sequence_strategy: "ignore",
1626
+ osis_compaction_strategy: "bc",
1627
+ captive_end_digits_strategy: "delete"
1628
+ });
1629
+ p.include_apocrypha(true);
1630
+ });
1631
+ it("should handle book: 1Thess (bb)", function() {
1632
+ expect(p.parse("2. Tesalonika 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2. Tesalonika 1:1'");
1633
+ expect(p.parse("2 Tesalonika 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2 Tesalonika 1:1'");
1634
+ expect(p.parse("1Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1Thess 1:1'");
1635
+ expect(p.parse("2. Te 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2. Te 1:1'");
1636
+ expect(p.parse("2 Te 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2 Te 1:1'");
1637
+ p.include_apocrypha(false);
1638
+ expect(p.parse("2. TESALONIKA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2. TESALONIKA 1:1'");
1639
+ expect(p.parse("2 TESALONIKA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2 TESALONIKA 1:1'");
1640
+ expect(p.parse("1THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1THESS 1:1'");
1641
+ expect(p.parse("2. TE 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2. TE 1:1'");
1642
+ expect(p.parse("2 TE 1:1").osis()).toEqual("1Thess.1.1", "parsing: '2 TE 1:1'");
1643
+ });
1644
+ });
1645
+
1646
+ describe("Localized book 2Tim (bb)", function() {
1647
+ var p;
1648
+ p = {};
1649
+ beforeEach(function() {
1650
+ p = new bcv_parser();
1651
+ p.set_options({
1652
+ book_alone_strategy: "ignore",
1653
+ book_sequence_strategy: "ignore",
1654
+ osis_compaction_strategy: "bc",
1655
+ captive_end_digits_strategy: "delete"
1656
+ });
1657
+ p.include_apocrypha(true);
1658
+ });
1659
+ it("should handle book: 2Tim (bb)", function() {
1660
+ expect(p.parse("2. Timote 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Timote 1:1'");
1661
+ expect(p.parse("2 Timote 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Timote 1:1'");
1662
+ expect(p.parse("2. Ti 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Ti 1:1'");
1663
+ expect(p.parse("2 Ti 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Ti 1:1'");
1664
+ expect(p.parse("2Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2Tim 1:1'");
1665
+ p.include_apocrypha(false);
1666
+ expect(p.parse("2. TIMOTE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIMOTE 1:1'");
1667
+ expect(p.parse("2 TIMOTE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIMOTE 1:1'");
1668
+ expect(p.parse("2. TI 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TI 1:1'");
1669
+ expect(p.parse("2 TI 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TI 1:1'");
1670
+ expect(p.parse("2TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2TIM 1:1'");
1671
+ });
1672
+ });
1673
+
1674
+ describe("Localized book 1Tim (bb)", function() {
1675
+ var p;
1676
+ p = {};
1677
+ beforeEach(function() {
1678
+ p = new bcv_parser();
1679
+ p.set_options({
1680
+ book_alone_strategy: "ignore",
1681
+ book_sequence_strategy: "ignore",
1682
+ osis_compaction_strategy: "bc",
1683
+ captive_end_digits_strategy: "delete"
1684
+ });
1685
+ p.include_apocrypha(true);
1686
+ });
1687
+ it("should handle book: 1Tim (bb)", function() {
1688
+ expect(p.parse("2. Timote 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2. Timote 1:1'");
1689
+ expect(p.parse("2 Timote 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2 Timote 1:1'");
1690
+ expect(p.parse("2. Ti 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2. Ti 1:1'");
1691
+ expect(p.parse("1Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1Tim 1:1'");
1692
+ expect(p.parse("2 Ti 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2 Ti 1:1'");
1693
+ p.include_apocrypha(false);
1694
+ expect(p.parse("2. TIMOTE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2. TIMOTE 1:1'");
1695
+ expect(p.parse("2 TIMOTE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2 TIMOTE 1:1'");
1696
+ expect(p.parse("2. TI 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2. TI 1:1'");
1697
+ expect(p.parse("1TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1TIM 1:1'");
1698
+ expect(p.parse("2 TI 1:1").osis()).toEqual("1Tim.1.1", "parsing: '2 TI 1:1'");
1699
+ });
1700
+ });
1701
+
1702
+ describe("Localized book Titus (bb)", function() {
1703
+ var p;
1704
+ p = {};
1705
+ beforeEach(function() {
1706
+ p = new bcv_parser();
1707
+ p.set_options({
1708
+ book_alone_strategy: "ignore",
1709
+ book_sequence_strategy: "ignore",
1710
+ osis_compaction_strategy: "bc",
1711
+ captive_end_digits_strategy: "delete"
1712
+ });
1713
+ p.include_apocrypha(true);
1714
+ });
1715
+ it("should handle book: Titus (bb)", function() {
1716
+ expect(p.parse("Titus 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titus 1:1'");
1717
+ expect(p.parse("Tito 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tito 1:1'");
1718
+ expect(p.parse("Tit 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tit 1:1'");
1719
+ p.include_apocrypha(false);
1720
+ expect(p.parse("TITUS 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITUS 1:1'");
1721
+ expect(p.parse("TITO 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITO 1:1'");
1722
+ expect(p.parse("TIT 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TIT 1:1'");
1723
+ });
1724
+ });
1725
+
1726
+ describe("Localized book Phlm (bb)", function() {
1727
+ var p;
1728
+ p = {};
1729
+ beforeEach(function() {
1730
+ p = new bcv_parser();
1731
+ p.set_options({
1732
+ book_alone_strategy: "ignore",
1733
+ book_sequence_strategy: "ignore",
1734
+ osis_compaction_strategy: "bc",
1735
+ captive_end_digits_strategy: "delete"
1736
+ });
1737
+ p.include_apocrypha(true);
1738
+ });
1739
+ it("should handle book: Phlm (bb)", function() {
1740
+ expect(p.parse("Filemoni 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Filemoni 1:1'");
1741
+ expect(p.parse("Phlm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phlm 1:1'");
1742
+ expect(p.parse("Flm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Flm 1:1'");
1743
+ p.include_apocrypha(false);
1744
+ expect(p.parse("FILEMONI 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'FILEMONI 1:1'");
1745
+ expect(p.parse("PHLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHLM 1:1'");
1746
+ expect(p.parse("FLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'FLM 1:1'");
1747
+ });
1748
+ });
1749
+
1750
+ describe("Localized book Heb (bb)", function() {
1751
+ var p;
1752
+ p = {};
1753
+ beforeEach(function() {
1754
+ p = new bcv_parser();
1755
+ p.set_options({
1756
+ book_alone_strategy: "ignore",
1757
+ book_sequence_strategy: "ignore",
1758
+ osis_compaction_strategy: "bc",
1759
+ captive_end_digits_strategy: "delete"
1760
+ });
1761
+ p.include_apocrypha(true);
1762
+ });
1763
+ it("should handle book: Heb (bb)", function() {
1764
+ expect(p.parse("Bahibulu 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Bahibulu 1:1'");
1765
+ expect(p.parse("Bah 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Bah 1:1'");
1766
+ expect(p.parse("Heb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Heb 1:1'");
1767
+ p.include_apocrypha(false);
1768
+ expect(p.parse("BAHIBULU 1:1").osis()).toEqual("Heb.1.1", "parsing: 'BAHIBULU 1:1'");
1769
+ expect(p.parse("BAH 1:1").osis()).toEqual("Heb.1.1", "parsing: 'BAH 1:1'");
1770
+ expect(p.parse("HEB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEB 1:1'");
1771
+ });
1772
+ });
1773
+
1774
+ describe("Localized book Jas (bb)", function() {
1775
+ var p;
1776
+ p = {};
1777
+ beforeEach(function() {
1778
+ p = new bcv_parser();
1779
+ p.set_options({
1780
+ book_alone_strategy: "ignore",
1781
+ book_sequence_strategy: "ignore",
1782
+ osis_compaction_strategy: "bc",
1783
+ captive_end_digits_strategy: "delete"
1784
+ });
1785
+ p.include_apocrypha(true);
1786
+ });
1787
+ it("should handle book: Jas (bb)", function() {
1788
+ expect(p.parse("Yakobo 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Yakobo 1:1'");
1789
+ expect(p.parse("Jas 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jas 1:1'");
1790
+ expect(p.parse("Yak 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Yak 1:1'");
1791
+ p.include_apocrypha(false);
1792
+ expect(p.parse("YAKOBO 1:1").osis()).toEqual("Jas.1.1", "parsing: 'YAKOBO 1:1'");
1793
+ expect(p.parse("JAS 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAS 1:1'");
1794
+ expect(p.parse("YAK 1:1").osis()).toEqual("Jas.1.1", "parsing: 'YAK 1:1'");
1795
+ });
1796
+ });
1797
+
1798
+ describe("Localized book 2Pet (bb)", function() {
1799
+ var p;
1800
+ p = {};
1801
+ beforeEach(function() {
1802
+ p = new bcv_parser();
1803
+ p.set_options({
1804
+ book_alone_strategy: "ignore",
1805
+ book_sequence_strategy: "ignore",
1806
+ osis_compaction_strategy: "bc",
1807
+ captive_end_digits_strategy: "delete"
1808
+ });
1809
+ p.include_apocrypha(true);
1810
+ });
1811
+ it("should handle book: 2Pet (bb)", function() {
1812
+ expect(p.parse("2. Petelo 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Petelo 1:1'");
1813
+ expect(p.parse("2 Petelo 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Petelo 1:1'");
1814
+ expect(p.parse("2. Pe 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Pe 1:1'");
1815
+ expect(p.parse("2 Pe 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Pe 1:1'");
1816
+ expect(p.parse("2Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2Pet 1:1'");
1817
+ p.include_apocrypha(false);
1818
+ expect(p.parse("2. PETELO 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PETELO 1:1'");
1819
+ expect(p.parse("2 PETELO 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PETELO 1:1'");
1820
+ expect(p.parse("2. PE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PE 1:1'");
1821
+ expect(p.parse("2 PE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PE 1:1'");
1822
+ expect(p.parse("2PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2PET 1:1'");
1823
+ });
1824
+ });
1825
+
1826
+ describe("Localized book 1Pet (bb)", function() {
1827
+ var p;
1828
+ p = {};
1829
+ beforeEach(function() {
1830
+ p = new bcv_parser();
1831
+ p.set_options({
1832
+ book_alone_strategy: "ignore",
1833
+ book_sequence_strategy: "ignore",
1834
+ osis_compaction_strategy: "bc",
1835
+ captive_end_digits_strategy: "delete"
1836
+ });
1837
+ p.include_apocrypha(true);
1838
+ });
1839
+ it("should handle book: 1Pet (bb)", function() {
1840
+ expect(p.parse("2. Petelo 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2. Petelo 1:1'");
1841
+ expect(p.parse("2 Petelo 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2 Petelo 1:1'");
1842
+ expect(p.parse("2. Pe 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2. Pe 1:1'");
1843
+ expect(p.parse("1Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1Pet 1:1'");
1844
+ expect(p.parse("2 Pe 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2 Pe 1:1'");
1845
+ p.include_apocrypha(false);
1846
+ expect(p.parse("2. PETELO 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2. PETELO 1:1'");
1847
+ expect(p.parse("2 PETELO 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2 PETELO 1:1'");
1848
+ expect(p.parse("2. PE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2. PE 1:1'");
1849
+ expect(p.parse("1PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1PET 1:1'");
1850
+ expect(p.parse("2 PE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '2 PE 1:1'");
1851
+ });
1852
+ });
1853
+
1854
+ describe("Localized book Jude (bb)", function() {
1855
+ var p;
1856
+ p = {};
1857
+ beforeEach(function() {
1858
+ p = new bcv_parser();
1859
+ p.set_options({
1860
+ book_alone_strategy: "ignore",
1861
+ book_sequence_strategy: "ignore",
1862
+ osis_compaction_strategy: "bc",
1863
+ captive_end_digits_strategy: "delete"
1864
+ });
1865
+ p.include_apocrypha(true);
1866
+ });
1867
+ it("should handle book: Jude (bb)", function() {
1868
+ expect(p.parse("Jude 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jude 1:1'");
1869
+ expect(p.parse("Yuda 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Yuda 1:1'");
1870
+ expect(p.parse("Yud 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Yud 1:1'");
1871
+ p.include_apocrypha(false);
1872
+ expect(p.parse("JUDE 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDE 1:1'");
1873
+ expect(p.parse("YUDA 1:1").osis()).toEqual("Jude.1.1", "parsing: 'YUDA 1:1'");
1874
+ expect(p.parse("YUD 1:1").osis()).toEqual("Jude.1.1", "parsing: 'YUD 1:1'");
1875
+ });
1876
+ });
1877
+
1878
+ describe("Localized book Tob (bb)", function() {
1879
+ var p;
1880
+ p = {};
1881
+ beforeEach(function() {
1882
+ p = new bcv_parser();
1883
+ p.set_options({
1884
+ book_alone_strategy: "ignore",
1885
+ book_sequence_strategy: "ignore",
1886
+ osis_compaction_strategy: "bc",
1887
+ captive_end_digits_strategy: "delete"
1888
+ });
1889
+ p.include_apocrypha(true);
1890
+ });
1891
+ it("should handle book: Tob (bb)", function() {
1892
+ expect(p.parse("Tob 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tob 1:1'");
1893
+ });
1894
+ });
1895
+
1896
+ describe("Localized book Jdt (bb)", function() {
1897
+ var p;
1898
+ p = {};
1899
+ beforeEach(function() {
1900
+ p = new bcv_parser();
1901
+ p.set_options({
1902
+ book_alone_strategy: "ignore",
1903
+ book_sequence_strategy: "ignore",
1904
+ osis_compaction_strategy: "bc",
1905
+ captive_end_digits_strategy: "delete"
1906
+ });
1907
+ p.include_apocrypha(true);
1908
+ });
1909
+ it("should handle book: Jdt (bb)", function() {
1910
+ expect(p.parse("Jdt 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Jdt 1:1'");
1911
+ });
1912
+ });
1913
+
1914
+ describe("Localized book Bar (bb)", function() {
1915
+ var p;
1916
+ p = {};
1917
+ beforeEach(function() {
1918
+ p = new bcv_parser();
1919
+ p.set_options({
1920
+ book_alone_strategy: "ignore",
1921
+ book_sequence_strategy: "ignore",
1922
+ osis_compaction_strategy: "bc",
1923
+ captive_end_digits_strategy: "delete"
1924
+ });
1925
+ p.include_apocrypha(true);
1926
+ });
1927
+ it("should handle book: Bar (bb)", function() {
1928
+ expect(p.parse("Bar 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Bar 1:1'");
1929
+ });
1930
+ });
1931
+
1932
+ describe("Localized book Sus (bb)", function() {
1933
+ var p;
1934
+ p = {};
1935
+ beforeEach(function() {
1936
+ p = new bcv_parser();
1937
+ p.set_options({
1938
+ book_alone_strategy: "ignore",
1939
+ book_sequence_strategy: "ignore",
1940
+ osis_compaction_strategy: "bc",
1941
+ captive_end_digits_strategy: "delete"
1942
+ });
1943
+ p.include_apocrypha(true);
1944
+ });
1945
+ it("should handle book: Sus (bb)", function() {
1946
+ expect(p.parse("Sus 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Sus 1:1'");
1947
+ });
1948
+ });
1949
+
1950
+ describe("Localized book 2Macc (bb)", function() {
1951
+ var p;
1952
+ p = {};
1953
+ beforeEach(function() {
1954
+ p = new bcv_parser();
1955
+ p.set_options({
1956
+ book_alone_strategy: "ignore",
1957
+ book_sequence_strategy: "ignore",
1958
+ osis_compaction_strategy: "bc",
1959
+ captive_end_digits_strategy: "delete"
1960
+ });
1961
+ p.include_apocrypha(true);
1962
+ });
1963
+ it("should handle book: 2Macc (bb)", function() {
1964
+ expect(p.parse("2Macc 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2Macc 1:1'");
1965
+ });
1966
+ });
1967
+
1968
+ describe("Localized book 3Macc (bb)", function() {
1969
+ var p;
1970
+ p = {};
1971
+ beforeEach(function() {
1972
+ p = new bcv_parser();
1973
+ p.set_options({
1974
+ book_alone_strategy: "ignore",
1975
+ book_sequence_strategy: "ignore",
1976
+ osis_compaction_strategy: "bc",
1977
+ captive_end_digits_strategy: "delete"
1978
+ });
1979
+ p.include_apocrypha(true);
1980
+ });
1981
+ it("should handle book: 3Macc (bb)", function() {
1982
+ expect(p.parse("3Macc 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3Macc 1:1'");
1983
+ });
1984
+ });
1985
+
1986
+ describe("Localized book 4Macc (bb)", function() {
1987
+ var p;
1988
+ p = {};
1989
+ beforeEach(function() {
1990
+ p = new bcv_parser();
1991
+ p.set_options({
1992
+ book_alone_strategy: "ignore",
1993
+ book_sequence_strategy: "ignore",
1994
+ osis_compaction_strategy: "bc",
1995
+ captive_end_digits_strategy: "delete"
1996
+ });
1997
+ p.include_apocrypha(true);
1998
+ });
1999
+ it("should handle book: 4Macc (bb)", function() {
2000
+ expect(p.parse("4Macc 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4Macc 1:1'");
2001
+ });
2002
+ });
2003
+
2004
+ describe("Localized book 1Macc (bb)", function() {
2005
+ var p;
2006
+ p = {};
2007
+ beforeEach(function() {
2008
+ p = new bcv_parser();
2009
+ p.set_options({
2010
+ book_alone_strategy: "ignore",
2011
+ book_sequence_strategy: "ignore",
2012
+ osis_compaction_strategy: "bc",
2013
+ captive_end_digits_strategy: "delete"
2014
+ });
2015
+ p.include_apocrypha(true);
2016
+ });
2017
+ it("should handle book: 1Macc (bb)", function() {
2018
+ expect(p.parse("1Macc 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1Macc 1:1'");
2019
+ });
2020
+ });
2021
+
2022
+ describe("Miscellaneous tests", function() {
2023
+ var p;
2024
+ p = {};
2025
+ beforeEach(function() {
2026
+ p = new bcv_parser();
2027
+ p.set_options({
2028
+ book_alone_strategy: "ignore",
2029
+ book_sequence_strategy: "ignore",
2030
+ osis_compaction_strategy: "bc",
2031
+ captive_end_digits_strategy: "delete"
2032
+ });
2033
+ p.include_apocrypha(true);
2034
+ });
2035
+ it("should return the expected language", function() {
2036
+ expect(p.languages).toEqual(["bb"]);
2037
+ });
2038
+ it("should handle ranges (bb)", function() {
2039
+ expect(p.parse("Titus 1:1 ku 2").osis()).toEqual("Titus.1.1-Titus.1.2", "parsing: 'Titus 1:1 ku 2'");
2040
+ expect(p.parse("Matt 1ku2").osis()).toEqual("Matt.1-Matt.2", "parsing: 'Matt 1ku2'");
2041
+ expect(p.parse("Phlm 2 KU 3").osis()).toEqual("Phlm.1.2-Phlm.1.3", "parsing: 'Phlm 2 KU 3'");
2042
+ });
2043
+ it("should handle chapters (bb)", function() {
2044
+ expect(p.parse("Titus 1:1, icipandwa 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, icipandwa 2'");
2045
+ expect(p.parse("Matt 3:4 ICIPANDWA 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 ICIPANDWA 6'");
2046
+ });
2047
+ it("should handle verses (bb)", function() {
2048
+ expect(p.parse("Exod 1:1 vesi, icikomo 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vesi, icikomo 3'");
2049
+ expect(p.parse("Phlm VESI, ICIKOMO 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VESI, ICIKOMO 6'");
2050
+ });
2051
+ it("should handle 'and' (bb)", function() {
2052
+ expect(p.parse("Exod 1:1 kabili 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 kabili 3'");
2053
+ expect(p.parse("Phlm 2 KABILI 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 KABILI 6'");
2054
+ });
2055
+ it("should handle titles (bb)", function() {
2056
+ expect(p.parse("Ps 3 umutwe, 4:2, 5:umutwe").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'Ps 3 umutwe, 4:2, 5:umutwe'");
2057
+ expect(p.parse("PS 3 UMUTWE, 4:2, 5:UMUTWE").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'PS 3 UMUTWE, 4:2, 5:UMUTWE'");
2058
+ });
2059
+ it("should handle 'ff' (bb)", function() {
2060
+ expect(p.parse("Rev 3ff, 4:2ff").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'Rev 3ff, 4:2ff'");
2061
+ 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'");
2062
+ });
2063
+ it("should handle translations (bb)", function() {
2064
+ expect(p.parse("Lev 1 (ill)").osis_and_translations()).toEqual([["Lev.1", "ill"]]);
2065
+ expect(p.parse("lev 1 ill").osis_and_translations()).toEqual([["Lev.1", "ill"]]);
2066
+ });
2067
+ it("should handle book ranges (bb)", function() {
2068
+ p.set_options({
2069
+ book_alone_strategy: "full",
2070
+ book_range_strategy: "include"
2071
+ });
2072
+ expect(p.parse("$SECOND ku 3 Yo").osis()).toEqual("1John.1-3John.1", "parsing: '$SECOND ku 3 Yo'");
2073
+ });
2074
+ return it("should handle boundaries (bb)", function() {
2075
+ p.set_options({
2076
+ book_alone_strategy: "full"
2077
+ });
2078
+ expect(p.parse("\u2014Matt\u2014").osis()).toEqual("Matt.1-Matt.28", "parsing: '\u2014Matt\u2014'");
2079
+ expect(p.parse("\u201cMatt 1:1\u201d").osis()).toEqual("Matt.1.1", "parsing: '\u201cMatt 1:1\u201d'");
2080
+ });
2081
+ });
2082
+
2083
+ }).call(this);