bible-ref-parse 3.0.14 → 3.0.16

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 (43) 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/zh.spec.js +3184 -3440
  38. package/dist/test/zu.spec.js +2075 -0
  39. package/dist/zh-bcv-parser.js +2658 -2989
  40. package/dist/zh-bcv-parser.min.js +1 -1
  41. package/dist/zu-bcv-parser.js +7236 -0
  42. package/dist/zu-bcv-parser.min.js +1 -0
  43. package/package.json +1 -1
@@ -0,0 +1,1781 @@
1
+ (function() {
2
+ var bcv_parser;
3
+
4
+ bcv_parser = require("../../dist/ee-bcv-parser.js").bcv_parser;
5
+
6
+ describe("Parsing (ee)", 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 (ee)", 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 (ee)", function() {
82
+ expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'");
83
+ expect(p.parse("Ɖeŋ 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ɖeŋ 1:1'");
84
+ p.include_apocrypha(false);
85
+ expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'");
86
+ expect(p.parse("ƉEŊ 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ƉEŊ 1:1'");
87
+ });
88
+ });
89
+
90
+ describe("Localized book Exod (ee)", function() {
91
+ var p;
92
+ p = {};
93
+ beforeEach(function() {
94
+ p = new bcv_parser();
95
+ p.set_options({
96
+ book_alone_strategy: "ignore",
97
+ book_sequence_strategy: "ignore",
98
+ osis_compaction_strategy: "bc",
99
+ captive_end_digits_strategy: "delete"
100
+ });
101
+ p.include_apocrypha(true);
102
+ });
103
+ it("should handle book: Exod (ee)", function() {
104
+ expect(p.parse("Eksodus 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Eksodus 1:1'");
105
+ expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'");
106
+ expect(p.parse("Eks 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Eks 1:1'");
107
+ p.include_apocrypha(false);
108
+ expect(p.parse("EKSODUS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EKSODUS 1:1'");
109
+ expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'");
110
+ expect(p.parse("EKS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EKS 1:1'");
111
+ });
112
+ });
113
+
114
+ describe("Localized book Lev (ee)", function() {
115
+ var p;
116
+ p = {};
117
+ beforeEach(function() {
118
+ p = new bcv_parser();
119
+ p.set_options({
120
+ book_alone_strategy: "ignore",
121
+ book_sequence_strategy: "ignore",
122
+ osis_compaction_strategy: "bc",
123
+ captive_end_digits_strategy: "delete"
124
+ });
125
+ p.include_apocrypha(true);
126
+ });
127
+ it("should handle book: Lev (ee)", function() {
128
+ expect(p.parse("Levitikos 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Levitikos 1:1'");
129
+ expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'");
130
+ p.include_apocrypha(false);
131
+ expect(p.parse("LEVITIKOS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEVITIKOS 1:1'");
132
+ expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'");
133
+ });
134
+ });
135
+
136
+ describe("Localized book Num (ee)", function() {
137
+ var p;
138
+ p = {};
139
+ beforeEach(function() {
140
+ p = new bcv_parser();
141
+ p.set_options({
142
+ book_alone_strategy: "ignore",
143
+ book_sequence_strategy: "ignore",
144
+ osis_compaction_strategy: "bc",
145
+ captive_end_digits_strategy: "delete"
146
+ });
147
+ p.include_apocrypha(true);
148
+ });
149
+ it("should handle book: Num (ee)", function() {
150
+ expect(p.parse("Numɛr 1:1").osis()).toEqual("Num.1.1", "parsing: 'Numɛr 1:1'");
151
+ expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'");
152
+ p.include_apocrypha(false);
153
+ expect(p.parse("NUMƐR 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUMƐR 1:1'");
154
+ expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'");
155
+ });
156
+ });
157
+
158
+ describe("Localized book Lam (ee)", 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: Lam (ee)", function() {
172
+ expect(p.parse("Srawo 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Srawo 1:1'");
173
+ expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'");
174
+ expect(p.parse("Sra 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Sra 1:1'");
175
+ p.include_apocrypha(false);
176
+ expect(p.parse("SRAWO 1:1").osis()).toEqual("Lam.1.1", "parsing: 'SRAWO 1:1'");
177
+ expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'");
178
+ expect(p.parse("SRA 1:1").osis()).toEqual("Lam.1.1", "parsing: 'SRA 1:1'");
179
+ });
180
+ });
181
+
182
+ describe("Localized book Rev (ee)", 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: Rev (ee)", function() {
196
+ expect(p.parse("Aflama 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Aflama 1:1'");
197
+ expect(p.parse("Afl 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Afl 1:1'");
198
+ expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'");
199
+ p.include_apocrypha(false);
200
+ expect(p.parse("AFLAMA 1:1").osis()).toEqual("Rev.1.1", "parsing: 'AFLAMA 1:1'");
201
+ expect(p.parse("AFL 1:1").osis()).toEqual("Rev.1.1", "parsing: 'AFL 1:1'");
202
+ expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'");
203
+ });
204
+ });
205
+
206
+ describe("Localized book Deut (ee)", function() {
207
+ var p;
208
+ p = {};
209
+ beforeEach(function() {
210
+ p = new bcv_parser();
211
+ p.set_options({
212
+ book_alone_strategy: "ignore",
213
+ book_sequence_strategy: "ignore",
214
+ osis_compaction_strategy: "bc",
215
+ captive_end_digits_strategy: "delete"
216
+ });
217
+ p.include_apocrypha(true);
218
+ });
219
+ it("should handle book: Deut (ee)", function() {
220
+ expect(p.parse("Detronomi 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Detronomi 1:1'");
221
+ expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'");
222
+ expect(p.parse("Det 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Det 1:1'");
223
+ p.include_apocrypha(false);
224
+ expect(p.parse("DETRONOMI 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DETRONOMI 1:1'");
225
+ expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'");
226
+ expect(p.parse("DET 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DET 1:1'");
227
+ });
228
+ });
229
+
230
+ describe("Localized book Josh (ee)", function() {
231
+ var p;
232
+ p = {};
233
+ beforeEach(function() {
234
+ p = new bcv_parser();
235
+ p.set_options({
236
+ book_alone_strategy: "ignore",
237
+ book_sequence_strategy: "ignore",
238
+ osis_compaction_strategy: "bc",
239
+ captive_end_digits_strategy: "delete"
240
+ });
241
+ p.include_apocrypha(true);
242
+ });
243
+ it("should handle book: Josh (ee)", function() {
244
+ expect(p.parse("Yosua 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Yosua 1:1'");
245
+ expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'");
246
+ expect(p.parse("Yos 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Yos 1:1'");
247
+ p.include_apocrypha(false);
248
+ expect(p.parse("YOSUA 1:1").osis()).toEqual("Josh.1.1", "parsing: 'YOSUA 1:1'");
249
+ expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'");
250
+ expect(p.parse("YOS 1:1").osis()).toEqual("Josh.1.1", "parsing: 'YOS 1:1'");
251
+ });
252
+ });
253
+
254
+ describe("Localized book Judg (ee)", function() {
255
+ var p;
256
+ p = {};
257
+ beforeEach(function() {
258
+ p = new bcv_parser();
259
+ p.set_options({
260
+ book_alone_strategy: "ignore",
261
+ book_sequence_strategy: "ignore",
262
+ osis_compaction_strategy: "bc",
263
+ captive_end_digits_strategy: "delete"
264
+ });
265
+ p.include_apocrypha(true);
266
+ });
267
+ it("should handle book: Judg (ee)", function() {
268
+ expect(p.parse("Wogbɔ 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Wogbɔ 1:1'");
269
+ expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'");
270
+ expect(p.parse("Wog 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Wog 1:1'");
271
+ p.include_apocrypha(false);
272
+ expect(p.parse("WOGBƆ 1:1").osis()).toEqual("Judg.1.1", "parsing: 'WOGBƆ 1:1'");
273
+ expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'");
274
+ expect(p.parse("WOG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'WOG 1:1'");
275
+ });
276
+ });
277
+
278
+ describe("Localized book Ruth (ee)", function() {
279
+ var p;
280
+ p = {};
281
+ beforeEach(function() {
282
+ p = new bcv_parser();
283
+ p.set_options({
284
+ book_alone_strategy: "ignore",
285
+ book_sequence_strategy: "ignore",
286
+ osis_compaction_strategy: "bc",
287
+ captive_end_digits_strategy: "delete"
288
+ });
289
+ p.include_apocrypha(true);
290
+ });
291
+ it("should handle book: Ruth (ee)", function() {
292
+ expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'");
293
+ expect(p.parse("Rut 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rut 1:1'");
294
+ p.include_apocrypha(false);
295
+ expect(p.parse("RUTH 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTH 1:1'");
296
+ expect(p.parse("RUT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUT 1:1'");
297
+ });
298
+ });
299
+
300
+ describe("Localized book Isa (ee)", function() {
301
+ var p;
302
+ p = {};
303
+ beforeEach(function() {
304
+ p = new bcv_parser();
305
+ p.set_options({
306
+ book_alone_strategy: "ignore",
307
+ book_sequence_strategy: "ignore",
308
+ osis_compaction_strategy: "bc",
309
+ captive_end_digits_strategy: "delete"
310
+ });
311
+ p.include_apocrypha(true);
312
+ });
313
+ it("should handle book: Isa (ee)", function() {
314
+ expect(p.parse("Yesaya 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Yesaya 1:1'");
315
+ expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'");
316
+ expect(p.parse("Yes 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Yes 1:1'");
317
+ p.include_apocrypha(false);
318
+ expect(p.parse("YESAYA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'YESAYA 1:1'");
319
+ expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'");
320
+ expect(p.parse("YES 1:1").osis()).toEqual("Isa.1.1", "parsing: 'YES 1:1'");
321
+ });
322
+ });
323
+
324
+ describe("Localized book 2Sam (ee)", function() {
325
+ var p;
326
+ p = {};
327
+ beforeEach(function() {
328
+ p = new bcv_parser();
329
+ p.set_options({
330
+ book_alone_strategy: "ignore",
331
+ book_sequence_strategy: "ignore",
332
+ osis_compaction_strategy: "bc",
333
+ captive_end_digits_strategy: "delete"
334
+ });
335
+ p.include_apocrypha(true);
336
+ });
337
+ it("should handle book: 2Sam (ee)", function() {
338
+ expect(p.parse("2. Samwel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Samwel 1:1'");
339
+ expect(p.parse("2 Samwel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Samwel 1:1'");
340
+ expect(p.parse("2. Sa 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Sa 1:1'");
341
+ expect(p.parse("2 Sa 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Sa 1:1'");
342
+ expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'");
343
+ p.include_apocrypha(false);
344
+ expect(p.parse("2. SAMWEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAMWEL 1:1'");
345
+ expect(p.parse("2 SAMWEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAMWEL 1:1'");
346
+ expect(p.parse("2. SA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SA 1:1'");
347
+ expect(p.parse("2 SA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SA 1:1'");
348
+ expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'");
349
+ });
350
+ });
351
+
352
+ describe("Localized book 1Sam (ee)", function() {
353
+ var p;
354
+ p = {};
355
+ beforeEach(function() {
356
+ p = new bcv_parser();
357
+ p.set_options({
358
+ book_alone_strategy: "ignore",
359
+ book_sequence_strategy: "ignore",
360
+ osis_compaction_strategy: "bc",
361
+ captive_end_digits_strategy: "delete"
362
+ });
363
+ p.include_apocrypha(true);
364
+ });
365
+ it("should handle book: 1Sam (ee)", function() {
366
+ expect(p.parse("1. Samwel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Samwel 1:1'");
367
+ expect(p.parse("le Samwel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'le Samwel 1:1'");
368
+ expect(p.parse("1 Samwel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Samwel 1:1'");
369
+ expect(p.parse("1. Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Sa 1:1'");
370
+ expect(p.parse("le Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'le Sa 1:1'");
371
+ expect(p.parse("1 Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sa 1:1'");
372
+ expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'");
373
+ p.include_apocrypha(false);
374
+ expect(p.parse("1. SAMWEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAMWEL 1:1'");
375
+ expect(p.parse("LE SAMWEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'LE SAMWEL 1:1'");
376
+ expect(p.parse("1 SAMWEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAMWEL 1:1'");
377
+ expect(p.parse("1. SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SA 1:1'");
378
+ expect(p.parse("LE SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'LE SA 1:1'");
379
+ expect(p.parse("1 SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SA 1:1'");
380
+ expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'");
381
+ });
382
+ });
383
+
384
+ describe("Localized book 2Kgs (ee)", function() {
385
+ var p;
386
+ p = {};
387
+ beforeEach(function() {
388
+ p = new bcv_parser();
389
+ p.set_options({
390
+ book_alone_strategy: "ignore",
391
+ book_sequence_strategy: "ignore",
392
+ osis_compaction_strategy: "bc",
393
+ captive_end_digits_strategy: "delete"
394
+ });
395
+ p.include_apocrypha(true);
396
+ });
397
+ it("should handle book: 2Kgs (ee)", function() {
398
+ expect(p.parse("2. Fiakuku 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Fiakuku 1:1'");
399
+ expect(p.parse("2 Fiakuku 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Fiakuku 1:1'");
400
+ expect(p.parse("2. Fi 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Fi 1:1'");
401
+ expect(p.parse("2 Fi 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Fi 1:1'");
402
+ expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'");
403
+ p.include_apocrypha(false);
404
+ expect(p.parse("2. FIAKUKU 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. FIAKUKU 1:1'");
405
+ expect(p.parse("2 FIAKUKU 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 FIAKUKU 1:1'");
406
+ expect(p.parse("2. FI 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. FI 1:1'");
407
+ expect(p.parse("2 FI 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 FI 1:1'");
408
+ expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'");
409
+ });
410
+ });
411
+
412
+ describe("Localized book 1Kgs (ee)", function() {
413
+ var p;
414
+ p = {};
415
+ beforeEach(function() {
416
+ p = new bcv_parser();
417
+ p.set_options({
418
+ book_alone_strategy: "ignore",
419
+ book_sequence_strategy: "ignore",
420
+ osis_compaction_strategy: "bc",
421
+ captive_end_digits_strategy: "delete"
422
+ });
423
+ p.include_apocrypha(true);
424
+ });
425
+ it("should handle book: 1Kgs (ee)", function() {
426
+ expect(p.parse("1. Fiakuku 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Fiakuku 1:1'");
427
+ expect(p.parse("le Fiakuku 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'le Fiakuku 1:1'");
428
+ expect(p.parse("1 Fiakuku 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Fiakuku 1:1'");
429
+ expect(p.parse("1. Fi 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Fi 1:1'");
430
+ expect(p.parse("le Fi 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'le Fi 1:1'");
431
+ expect(p.parse("1 Fi 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Fi 1:1'");
432
+ expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'");
433
+ p.include_apocrypha(false);
434
+ expect(p.parse("1. FIAKUKU 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. FIAKUKU 1:1'");
435
+ expect(p.parse("LE FIAKUKU 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'LE FIAKUKU 1:1'");
436
+ expect(p.parse("1 FIAKUKU 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 FIAKUKU 1:1'");
437
+ expect(p.parse("1. FI 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. FI 1:1'");
438
+ expect(p.parse("LE FI 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'LE FI 1:1'");
439
+ expect(p.parse("1 FI 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 FI 1:1'");
440
+ expect(p.parse("1KGS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1KGS 1:1'");
441
+ });
442
+ });
443
+
444
+ describe("Localized book 2Chr (ee)", function() {
445
+ var p;
446
+ p = {};
447
+ beforeEach(function() {
448
+ p = new bcv_parser();
449
+ p.set_options({
450
+ book_alone_strategy: "ignore",
451
+ book_sequence_strategy: "ignore",
452
+ osis_compaction_strategy: "bc",
453
+ captive_end_digits_strategy: "delete"
454
+ });
455
+ p.include_apocrypha(true);
456
+ });
457
+ it("should handle book: 2Chr (ee)", function() {
458
+ expect(p.parse("2. Henɔ 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Henɔ 1:1'");
459
+ expect(p.parse("2 Henɔ 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Henɔ 1:1'");
460
+ expect(p.parse("2. He 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. He 1:1'");
461
+ expect(p.parse("2 He 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 He 1:1'");
462
+ expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'");
463
+ p.include_apocrypha(false);
464
+ expect(p.parse("2. HENƆ 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. HENƆ 1:1'");
465
+ expect(p.parse("2 HENƆ 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 HENƆ 1:1'");
466
+ expect(p.parse("2. HE 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. HE 1:1'");
467
+ expect(p.parse("2 HE 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 HE 1:1'");
468
+ expect(p.parse("2CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2CHR 1:1'");
469
+ });
470
+ });
471
+
472
+ describe("Localized book 1Chr (ee)", function() {
473
+ var p;
474
+ p = {};
475
+ beforeEach(function() {
476
+ p = new bcv_parser();
477
+ p.set_options({
478
+ book_alone_strategy: "ignore",
479
+ book_sequence_strategy: "ignore",
480
+ osis_compaction_strategy: "bc",
481
+ captive_end_digits_strategy: "delete"
482
+ });
483
+ p.include_apocrypha(true);
484
+ });
485
+ it("should handle book: 1Chr (ee)", function() {
486
+ expect(p.parse("1. Henɔ 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Henɔ 1:1'");
487
+ expect(p.parse("le Henɔ 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'le Henɔ 1:1'");
488
+ expect(p.parse("1 Henɔ 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Henɔ 1:1'");
489
+ expect(p.parse("1. He 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. He 1:1'");
490
+ expect(p.parse("le He 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'le He 1:1'");
491
+ expect(p.parse("1 He 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 He 1:1'");
492
+ expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'");
493
+ p.include_apocrypha(false);
494
+ expect(p.parse("1. HENƆ 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. HENƆ 1:1'");
495
+ expect(p.parse("LE HENƆ 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'LE HENƆ 1:1'");
496
+ expect(p.parse("1 HENƆ 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 HENƆ 1:1'");
497
+ expect(p.parse("1. HE 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. HE 1:1'");
498
+ expect(p.parse("LE HE 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'LE HE 1:1'");
499
+ expect(p.parse("1 HE 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 HE 1:1'");
500
+ expect(p.parse("1CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1CHR 1:1'");
501
+ });
502
+ });
503
+
504
+ describe("Localized book Ezra (ee)", function() {
505
+ var p;
506
+ p = {};
507
+ beforeEach(function() {
508
+ p = new bcv_parser();
509
+ p.set_options({
510
+ book_alone_strategy: "ignore",
511
+ book_sequence_strategy: "ignore",
512
+ osis_compaction_strategy: "bc",
513
+ captive_end_digits_strategy: "delete"
514
+ });
515
+ p.include_apocrypha(true);
516
+ });
517
+ it("should handle book: Ezra (ee)", function() {
518
+ expect(p.parse("Ezra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezra 1:1'");
519
+ expect(p.parse("Ezr 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezr 1:1'");
520
+ p.include_apocrypha(false);
521
+ expect(p.parse("EZRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZRA 1:1'");
522
+ expect(p.parse("EZR 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZR 1:1'");
523
+ });
524
+ });
525
+
526
+ describe("Localized book Neh (ee)", function() {
527
+ var p;
528
+ p = {};
529
+ beforeEach(function() {
530
+ p = new bcv_parser();
531
+ p.set_options({
532
+ book_alone_strategy: "ignore",
533
+ book_sequence_strategy: "ignore",
534
+ osis_compaction_strategy: "bc",
535
+ captive_end_digits_strategy: "delete"
536
+ });
537
+ p.include_apocrypha(true);
538
+ });
539
+ it("should handle book: Neh (ee)", function() {
540
+ expect(p.parse("Nehɛmiya 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Nehɛmiya 1:1'");
541
+ expect(p.parse("Neh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Neh 1:1'");
542
+ p.include_apocrypha(false);
543
+ expect(p.parse("NEHƐMIYA 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEHƐMIYA 1:1'");
544
+ expect(p.parse("NEH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEH 1:1'");
545
+ });
546
+ });
547
+
548
+ describe("Localized book Esth (ee)", function() {
549
+ var p;
550
+ p = {};
551
+ beforeEach(function() {
552
+ p = new bcv_parser();
553
+ p.set_options({
554
+ book_alone_strategy: "ignore",
555
+ book_sequence_strategy: "ignore",
556
+ osis_compaction_strategy: "bc",
557
+ captive_end_digits_strategy: "delete"
558
+ });
559
+ p.include_apocrypha(true);
560
+ });
561
+ it("should handle book: Esth (ee)", function() {
562
+ expect(p.parse("Esta 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esta 1:1'");
563
+ expect(p.parse("Esth 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esth 1:1'");
564
+ expect(p.parse("Est 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Est 1:1'");
565
+ p.include_apocrypha(false);
566
+ expect(p.parse("ESTA 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTA 1:1'");
567
+ expect(p.parse("ESTH 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTH 1:1'");
568
+ expect(p.parse("EST 1:1").osis()).toEqual("Esth.1.1", "parsing: 'EST 1:1'");
569
+ });
570
+ });
571
+
572
+ describe("Localized book Job (ee)", function() {
573
+ var p;
574
+ p = {};
575
+ beforeEach(function() {
576
+ p = new bcv_parser();
577
+ p.set_options({
578
+ book_alone_strategy: "ignore",
579
+ book_sequence_strategy: "ignore",
580
+ osis_compaction_strategy: "bc",
581
+ captive_end_digits_strategy: "delete"
582
+ });
583
+ p.include_apocrypha(true);
584
+ });
585
+ it("should handle book: Job (ee)", function() {
586
+ expect(p.parse("Job 1:1").osis()).toEqual("Job.1.1", "parsing: 'Job 1:1'");
587
+ expect(p.parse("Yob 1:1").osis()).toEqual("Job.1.1", "parsing: 'Yob 1:1'");
588
+ p.include_apocrypha(false);
589
+ expect(p.parse("JOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JOB 1:1'");
590
+ expect(p.parse("YOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'YOB 1:1'");
591
+ });
592
+ });
593
+
594
+ describe("Localized book Ps (ee)", function() {
595
+ var p;
596
+ p = {};
597
+ beforeEach(function() {
598
+ p = new bcv_parser();
599
+ p.set_options({
600
+ book_alone_strategy: "ignore",
601
+ book_sequence_strategy: "ignore",
602
+ osis_compaction_strategy: "bc",
603
+ captive_end_digits_strategy: "delete"
604
+ });
605
+ p.include_apocrypha(true);
606
+ });
607
+ it("should handle book: Ps (ee)", function() {
608
+ expect(p.parse("Zabur 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Zabur 1:1'");
609
+ expect(p.parse("Zab 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Zab 1:1'");
610
+ expect(p.parse("Ps 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Ps 1:1'");
611
+ p.include_apocrypha(false);
612
+ expect(p.parse("ZABUR 1:1").osis()).toEqual("Ps.1.1", "parsing: 'ZABUR 1:1'");
613
+ expect(p.parse("ZAB 1:1").osis()).toEqual("Ps.1.1", "parsing: 'ZAB 1:1'");
614
+ expect(p.parse("PS 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PS 1:1'");
615
+ });
616
+ });
617
+
618
+ describe("Localized book Prov (ee)", function() {
619
+ var p;
620
+ p = {};
621
+ beforeEach(function() {
622
+ p = new bcv_parser();
623
+ p.set_options({
624
+ book_alone_strategy: "ignore",
625
+ book_sequence_strategy: "ignore",
626
+ osis_compaction_strategy: "bc",
627
+ captive_end_digits_strategy: "delete"
628
+ });
629
+ p.include_apocrypha(true);
630
+ });
631
+ it("should handle book: Prov (ee)", function() {
632
+ expect(p.parse("Mmebu 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Mmebu 1:1'");
633
+ expect(p.parse("Prov 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prov 1:1'");
634
+ expect(p.parse("Mme 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Mme 1:1'");
635
+ p.include_apocrypha(false);
636
+ expect(p.parse("MMEBU 1:1").osis()).toEqual("Prov.1.1", "parsing: 'MMEBU 1:1'");
637
+ expect(p.parse("PROV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROV 1:1'");
638
+ expect(p.parse("MME 1:1").osis()).toEqual("Prov.1.1", "parsing: 'MME 1:1'");
639
+ });
640
+ });
641
+
642
+ describe("Localized book Eccl (ee)", function() {
643
+ var p;
644
+ p = {};
645
+ beforeEach(function() {
646
+ p = new bcv_parser();
647
+ p.set_options({
648
+ book_alone_strategy: "ignore",
649
+ book_sequence_strategy: "ignore",
650
+ osis_compaction_strategy: "bc",
651
+ captive_end_digits_strategy: "delete"
652
+ });
653
+ p.include_apocrypha(true);
654
+ });
655
+ it("should handle book: Eccl (ee)", function() {
656
+ expect(p.parse("Eklesiastes 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eklesiastes 1:1'");
657
+ expect(p.parse("Eccl 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eccl 1:1'");
658
+ expect(p.parse("Ekl 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Ekl 1:1'");
659
+ p.include_apocrypha(false);
660
+ expect(p.parse("EKLESIASTES 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'EKLESIASTES 1:1'");
661
+ expect(p.parse("ECCL 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCL 1:1'");
662
+ expect(p.parse("EKL 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'EKL 1:1'");
663
+ });
664
+ });
665
+
666
+ describe("Localized book Song (ee)", function() {
667
+ var p;
668
+ p = {};
669
+ beforeEach(function() {
670
+ p = new bcv_parser();
671
+ p.set_options({
672
+ book_alone_strategy: "ignore",
673
+ book_sequence_strategy: "ignore",
674
+ osis_compaction_strategy: "bc",
675
+ captive_end_digits_strategy: "delete"
676
+ });
677
+ p.include_apocrypha(true);
678
+ });
679
+ it("should handle book: Song (ee)", function() {
680
+ expect(p.parse("Songɔ na Solomon 1:1").osis()).toEqual("Song.1.1", "parsing: 'Songɔ na Solomon 1:1'");
681
+ expect(p.parse("Song 1:1").osis()).toEqual("Song.1.1", "parsing: 'Song 1:1'");
682
+ expect(p.parse("Son 1:1").osis()).toEqual("Song.1.1", "parsing: 'Son 1:1'");
683
+ p.include_apocrypha(false);
684
+ expect(p.parse("SONGƆ NA SOLOMON 1:1").osis()).toEqual("Song.1.1", "parsing: 'SONGƆ NA SOLOMON 1:1'");
685
+ expect(p.parse("SONG 1:1").osis()).toEqual("Song.1.1", "parsing: 'SONG 1:1'");
686
+ expect(p.parse("SON 1:1").osis()).toEqual("Song.1.1", "parsing: 'SON 1:1'");
687
+ });
688
+ });
689
+
690
+ describe("Localized book Jer (ee)", 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: Jer (ee)", function() {
704
+ expect(p.parse("Yeremia 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Yeremia 1:1'");
705
+ expect(p.parse("Jer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jer 1:1'");
706
+ expect(p.parse("Yer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Yer 1:1'");
707
+ p.include_apocrypha(false);
708
+ expect(p.parse("YEREMIA 1:1").osis()).toEqual("Jer.1.1", "parsing: 'YEREMIA 1:1'");
709
+ expect(p.parse("JER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JER 1:1'");
710
+ expect(p.parse("YER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'YER 1:1'");
711
+ });
712
+ });
713
+
714
+ describe("Localized book Ezek (ee)", 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: Ezek (ee)", function() {
728
+ expect(p.parse("Ezekiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezekiel 1:1'");
729
+ expect(p.parse("Ezek 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezek 1:1'");
730
+ expect(p.parse("Eze 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Eze 1:1'");
731
+ p.include_apocrypha(false);
732
+ expect(p.parse("EZEKIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEKIEL 1:1'");
733
+ expect(p.parse("EZEK 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEK 1:1'");
734
+ expect(p.parse("EZE 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZE 1:1'");
735
+ });
736
+ });
737
+
738
+ describe("Localized book Dan (ee)", 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: Dan (ee)", function() {
752
+ expect(p.parse("Daniel 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Daniel 1:1'");
753
+ expect(p.parse("Dan 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dan 1:1'");
754
+ p.include_apocrypha(false);
755
+ expect(p.parse("DANIEL 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DANIEL 1:1'");
756
+ expect(p.parse("DAN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DAN 1:1'");
757
+ });
758
+ });
759
+
760
+ describe("Localized book Hos (ee)", function() {
761
+ var p;
762
+ p = {};
763
+ beforeEach(function() {
764
+ p = new bcv_parser();
765
+ p.set_options({
766
+ book_alone_strategy: "ignore",
767
+ book_sequence_strategy: "ignore",
768
+ osis_compaction_strategy: "bc",
769
+ captive_end_digits_strategy: "delete"
770
+ });
771
+ p.include_apocrypha(true);
772
+ });
773
+ it("should handle book: Hos (ee)", function() {
774
+ expect(p.parse("Hosea 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hosea 1:1'");
775
+ expect(p.parse("Hos 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hos 1:1'");
776
+ p.include_apocrypha(false);
777
+ expect(p.parse("HOSEA 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOSEA 1:1'");
778
+ expect(p.parse("HOS 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOS 1:1'");
779
+ });
780
+ });
781
+
782
+ describe("Localized book Joel (ee)", function() {
783
+ var p;
784
+ p = {};
785
+ beforeEach(function() {
786
+ p = new bcv_parser();
787
+ p.set_options({
788
+ book_alone_strategy: "ignore",
789
+ book_sequence_strategy: "ignore",
790
+ osis_compaction_strategy: "bc",
791
+ captive_end_digits_strategy: "delete"
792
+ });
793
+ p.include_apocrypha(true);
794
+ });
795
+ it("should handle book: Joel (ee)", function() {
796
+ expect(p.parse("Yowel 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Yowel 1:1'");
797
+ expect(p.parse("Joel 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joel 1:1'");
798
+ expect(p.parse("Yow 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Yow 1:1'");
799
+ p.include_apocrypha(false);
800
+ expect(p.parse("YOWEL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'YOWEL 1:1'");
801
+ expect(p.parse("JOEL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOEL 1:1'");
802
+ expect(p.parse("YOW 1:1").osis()).toEqual("Joel.1.1", "parsing: 'YOW 1:1'");
803
+ });
804
+ });
805
+
806
+ describe("Localized book Amos (ee)", function() {
807
+ var p;
808
+ p = {};
809
+ beforeEach(function() {
810
+ p = new bcv_parser();
811
+ p.set_options({
812
+ book_alone_strategy: "ignore",
813
+ book_sequence_strategy: "ignore",
814
+ osis_compaction_strategy: "bc",
815
+ captive_end_digits_strategy: "delete"
816
+ });
817
+ p.include_apocrypha(true);
818
+ });
819
+ it("should handle book: Amos (ee)", function() {
820
+ expect(p.parse("Amos 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amos 1:1'");
821
+ expect(p.parse("Amo 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amo 1:1'");
822
+ p.include_apocrypha(false);
823
+ expect(p.parse("AMOS 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMOS 1:1'");
824
+ expect(p.parse("AMO 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMO 1:1'");
825
+ });
826
+ });
827
+
828
+ describe("Localized book Obad (ee)", 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: Obad (ee)", function() {
842
+ expect(p.parse("Obadiah 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obadiah 1:1'");
843
+ expect(p.parse("Obad 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obad 1:1'");
844
+ expect(p.parse("Oba 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Oba 1:1'");
845
+ p.include_apocrypha(false);
846
+ expect(p.parse("OBADIAH 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBADIAH 1:1'");
847
+ expect(p.parse("OBAD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBAD 1:1'");
848
+ expect(p.parse("OBA 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBA 1:1'");
849
+ });
850
+ });
851
+
852
+ describe("Localized book Jonah (ee)", function() {
853
+ var p;
854
+ p = {};
855
+ beforeEach(function() {
856
+ p = new bcv_parser();
857
+ p.set_options({
858
+ book_alone_strategy: "ignore",
859
+ book_sequence_strategy: "ignore",
860
+ osis_compaction_strategy: "bc",
861
+ captive_end_digits_strategy: "delete"
862
+ });
863
+ p.include_apocrypha(true);
864
+ });
865
+ it("should handle book: Jonah (ee)", function() {
866
+ expect(p.parse("Jonah 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonah 1:1'");
867
+ expect(p.parse("Yona 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Yona 1:1'");
868
+ expect(p.parse("Yon 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Yon 1:1'");
869
+ p.include_apocrypha(false);
870
+ expect(p.parse("JONAH 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAH 1:1'");
871
+ expect(p.parse("YONA 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'YONA 1:1'");
872
+ expect(p.parse("YON 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'YON 1:1'");
873
+ });
874
+ });
875
+
876
+ describe("Localized book Mic (ee)", function() {
877
+ var p;
878
+ p = {};
879
+ beforeEach(function() {
880
+ p = new bcv_parser();
881
+ p.set_options({
882
+ book_alone_strategy: "ignore",
883
+ book_sequence_strategy: "ignore",
884
+ osis_compaction_strategy: "bc",
885
+ captive_end_digits_strategy: "delete"
886
+ });
887
+ p.include_apocrypha(true);
888
+ });
889
+ it("should handle book: Mic (ee)", function() {
890
+ expect(p.parse("Mika 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mika 1:1'");
891
+ expect(p.parse("Mic 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mic 1:1'");
892
+ expect(p.parse("Mik 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mik 1:1'");
893
+ p.include_apocrypha(false);
894
+ expect(p.parse("MIKA 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIKA 1:1'");
895
+ expect(p.parse("MIC 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIC 1:1'");
896
+ expect(p.parse("MIK 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIK 1:1'");
897
+ });
898
+ });
899
+
900
+ describe("Localized book Nah (ee)", function() {
901
+ var p;
902
+ p = {};
903
+ beforeEach(function() {
904
+ p = new bcv_parser();
905
+ p.set_options({
906
+ book_alone_strategy: "ignore",
907
+ book_sequence_strategy: "ignore",
908
+ osis_compaction_strategy: "bc",
909
+ captive_end_digits_strategy: "delete"
910
+ });
911
+ p.include_apocrypha(true);
912
+ });
913
+ it("should handle book: Nah (ee)", function() {
914
+ expect(p.parse("Nahum 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nahum 1:1'");
915
+ expect(p.parse("Nah 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nah 1:1'");
916
+ p.include_apocrypha(false);
917
+ expect(p.parse("NAHUM 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAHUM 1:1'");
918
+ expect(p.parse("NAH 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAH 1:1'");
919
+ });
920
+ });
921
+
922
+ describe("Localized book Hab (ee)", function() {
923
+ var p;
924
+ p = {};
925
+ beforeEach(function() {
926
+ p = new bcv_parser();
927
+ p.set_options({
928
+ book_alone_strategy: "ignore",
929
+ book_sequence_strategy: "ignore",
930
+ osis_compaction_strategy: "bc",
931
+ captive_end_digits_strategy: "delete"
932
+ });
933
+ p.include_apocrypha(true);
934
+ });
935
+ it("should handle book: Hab (ee)", function() {
936
+ expect(p.parse("Habakuk 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habakuk 1:1'");
937
+ expect(p.parse("Hab 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Hab 1:1'");
938
+ p.include_apocrypha(false);
939
+ expect(p.parse("HABAKUK 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAKUK 1:1'");
940
+ expect(p.parse("HAB 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HAB 1:1'");
941
+ });
942
+ });
943
+
944
+ describe("Localized book Zeph (ee)", function() {
945
+ var p;
946
+ p = {};
947
+ beforeEach(function() {
948
+ p = new bcv_parser();
949
+ p.set_options({
950
+ book_alone_strategy: "ignore",
951
+ book_sequence_strategy: "ignore",
952
+ osis_compaction_strategy: "bc",
953
+ captive_end_digits_strategy: "delete"
954
+ });
955
+ p.include_apocrypha(true);
956
+ });
957
+ it("should handle book: Zeph (ee)", function() {
958
+ expect(p.parse("Sefania 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sefania 1:1'");
959
+ expect(p.parse("Zeph 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zeph 1:1'");
960
+ expect(p.parse("Sef 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sef 1:1'");
961
+ p.include_apocrypha(false);
962
+ expect(p.parse("SEFANIA 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SEFANIA 1:1'");
963
+ expect(p.parse("ZEPH 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEPH 1:1'");
964
+ expect(p.parse("SEF 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SEF 1:1'");
965
+ });
966
+ });
967
+
968
+ describe("Localized book Hag (ee)", function() {
969
+ var p;
970
+ p = {};
971
+ beforeEach(function() {
972
+ p = new bcv_parser();
973
+ p.set_options({
974
+ book_alone_strategy: "ignore",
975
+ book_sequence_strategy: "ignore",
976
+ osis_compaction_strategy: "bc",
977
+ captive_end_digits_strategy: "delete"
978
+ });
979
+ p.include_apocrypha(true);
980
+ });
981
+ it("should handle book: Hag (ee)", function() {
982
+ expect(p.parse("Hagayi 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hagayi 1:1'");
983
+ expect(p.parse("Hag 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hag 1:1'");
984
+ p.include_apocrypha(false);
985
+ expect(p.parse("HAGAYI 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAGAYI 1:1'");
986
+ expect(p.parse("HAG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAG 1:1'");
987
+ });
988
+ });
989
+
990
+ describe("Localized book Zech (ee)", function() {
991
+ var p;
992
+ p = {};
993
+ beforeEach(function() {
994
+ p = new bcv_parser();
995
+ p.set_options({
996
+ book_alone_strategy: "ignore",
997
+ book_sequence_strategy: "ignore",
998
+ osis_compaction_strategy: "bc",
999
+ captive_end_digits_strategy: "delete"
1000
+ });
1001
+ p.include_apocrypha(true);
1002
+ });
1003
+ it("should handle book: Zech (ee)", function() {
1004
+ expect(p.parse("Sekaria 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Sekaria 1:1'");
1005
+ expect(p.parse("Zech 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zech 1:1'");
1006
+ expect(p.parse("Sek 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Sek 1:1'");
1007
+ p.include_apocrypha(false);
1008
+ expect(p.parse("SEKARIA 1:1").osis()).toEqual("Zech.1.1", "parsing: 'SEKARIA 1:1'");
1009
+ expect(p.parse("ZECH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZECH 1:1'");
1010
+ expect(p.parse("SEK 1:1").osis()).toEqual("Zech.1.1", "parsing: 'SEK 1:1'");
1011
+ });
1012
+ });
1013
+
1014
+ describe("Localized book Mal (ee)", function() {
1015
+ var p;
1016
+ p = {};
1017
+ beforeEach(function() {
1018
+ p = new bcv_parser();
1019
+ p.set_options({
1020
+ book_alone_strategy: "ignore",
1021
+ book_sequence_strategy: "ignore",
1022
+ osis_compaction_strategy: "bc",
1023
+ captive_end_digits_strategy: "delete"
1024
+ });
1025
+ p.include_apocrypha(true);
1026
+ });
1027
+ it("should handle book: Mal (ee)", function() {
1028
+ expect(p.parse("Malaki 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malaki 1:1'");
1029
+ expect(p.parse("Mal 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Mal 1:1'");
1030
+ p.include_apocrypha(false);
1031
+ expect(p.parse("MALAKI 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALAKI 1:1'");
1032
+ expect(p.parse("MAL 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MAL 1:1'");
1033
+ });
1034
+ });
1035
+
1036
+ describe("Localized book Matt (ee)", function() {
1037
+ var p;
1038
+ p = {};
1039
+ beforeEach(function() {
1040
+ p = new bcv_parser();
1041
+ p.set_options({
1042
+ book_alone_strategy: "ignore",
1043
+ book_sequence_strategy: "ignore",
1044
+ osis_compaction_strategy: "bc",
1045
+ captive_end_digits_strategy: "delete"
1046
+ });
1047
+ p.include_apocrypha(true);
1048
+ });
1049
+ it("should handle book: Matt (ee)", function() {
1050
+ expect(p.parse("Matiu 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matiu 1:1'");
1051
+ expect(p.parse("Matt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matt 1:1'");
1052
+ expect(p.parse("Mat 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Mat 1:1'");
1053
+ p.include_apocrypha(false);
1054
+ expect(p.parse("MATIU 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATIU 1:1'");
1055
+ expect(p.parse("MATT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATT 1:1'");
1056
+ expect(p.parse("MAT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MAT 1:1'");
1057
+ });
1058
+ });
1059
+
1060
+ describe("Localized book Mark (ee)", function() {
1061
+ var p;
1062
+ p = {};
1063
+ beforeEach(function() {
1064
+ p = new bcv_parser();
1065
+ p.set_options({
1066
+ book_alone_strategy: "ignore",
1067
+ book_sequence_strategy: "ignore",
1068
+ osis_compaction_strategy: "bc",
1069
+ captive_end_digits_strategy: "delete"
1070
+ });
1071
+ p.include_apocrypha(true);
1072
+ });
1073
+ it("should handle book: Mark (ee)", function() {
1074
+ expect(p.parse("Make 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Make 1:1'");
1075
+ expect(p.parse("Mark 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mark 1:1'");
1076
+ expect(p.parse("Mak 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mak 1:1'");
1077
+ p.include_apocrypha(false);
1078
+ expect(p.parse("MAKE 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MAKE 1:1'");
1079
+ expect(p.parse("MARK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARK 1:1'");
1080
+ expect(p.parse("MAK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MAK 1:1'");
1081
+ });
1082
+ });
1083
+
1084
+ describe("Localized book Luke (ee)", function() {
1085
+ var p;
1086
+ p = {};
1087
+ beforeEach(function() {
1088
+ p = new bcv_parser();
1089
+ p.set_options({
1090
+ book_alone_strategy: "ignore",
1091
+ book_sequence_strategy: "ignore",
1092
+ osis_compaction_strategy: "bc",
1093
+ captive_end_digits_strategy: "delete"
1094
+ });
1095
+ p.include_apocrypha(true);
1096
+ });
1097
+ it("should handle book: Luke (ee)", function() {
1098
+ expect(p.parse("Luka 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luka 1:1'");
1099
+ expect(p.parse("Luke 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luke 1:1'");
1100
+ expect(p.parse("Luk 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luk 1:1'");
1101
+ p.include_apocrypha(false);
1102
+ expect(p.parse("LUKA 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKA 1:1'");
1103
+ expect(p.parse("LUKE 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKE 1:1'");
1104
+ expect(p.parse("LUK 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUK 1:1'");
1105
+ });
1106
+ });
1107
+
1108
+ describe("Localized book 1John (ee)", function() {
1109
+ var p;
1110
+ p = {};
1111
+ beforeEach(function() {
1112
+ p = new bcv_parser();
1113
+ p.set_options({
1114
+ book_alone_strategy: "ignore",
1115
+ book_sequence_strategy: "ignore",
1116
+ osis_compaction_strategy: "bc",
1117
+ captive_end_digits_strategy: "delete"
1118
+ });
1119
+ p.include_apocrypha(true);
1120
+ });
1121
+ it("should handle book: 1John (ee)", function() {
1122
+ expect(p.parse("1. Yohane 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Yohane 1:1'");
1123
+ expect(p.parse("le Yohane 1:1").osis()).toEqual("1John.1.1", "parsing: 'le Yohane 1:1'");
1124
+ expect(p.parse("1 Yohane 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Yohane 1:1'");
1125
+ expect(p.parse("1. Yo 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Yo 1:1'");
1126
+ expect(p.parse("1John 1:1").osis()).toEqual("1John.1.1", "parsing: '1John 1:1'");
1127
+ expect(p.parse("le Yo 1:1").osis()).toEqual("1John.1.1", "parsing: 'le Yo 1:1'");
1128
+ expect(p.parse("1 Yo 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Yo 1:1'");
1129
+ p.include_apocrypha(false);
1130
+ expect(p.parse("1. YOHANE 1:1").osis()).toEqual("1John.1.1", "parsing: '1. YOHANE 1:1'");
1131
+ expect(p.parse("LE YOHANE 1:1").osis()).toEqual("1John.1.1", "parsing: 'LE YOHANE 1:1'");
1132
+ expect(p.parse("1 YOHANE 1:1").osis()).toEqual("1John.1.1", "parsing: '1 YOHANE 1:1'");
1133
+ expect(p.parse("1. YO 1:1").osis()).toEqual("1John.1.1", "parsing: '1. YO 1:1'");
1134
+ expect(p.parse("1JOHN 1:1").osis()).toEqual("1John.1.1", "parsing: '1JOHN 1:1'");
1135
+ expect(p.parse("LE YO 1:1").osis()).toEqual("1John.1.1", "parsing: 'LE YO 1:1'");
1136
+ expect(p.parse("1 YO 1:1").osis()).toEqual("1John.1.1", "parsing: '1 YO 1:1'");
1137
+ });
1138
+ });
1139
+
1140
+ describe("Localized book 2John (ee)", function() {
1141
+ var p;
1142
+ p = {};
1143
+ beforeEach(function() {
1144
+ p = new bcv_parser();
1145
+ p.set_options({
1146
+ book_alone_strategy: "ignore",
1147
+ book_sequence_strategy: "ignore",
1148
+ osis_compaction_strategy: "bc",
1149
+ captive_end_digits_strategy: "delete"
1150
+ });
1151
+ p.include_apocrypha(true);
1152
+ });
1153
+ it("should handle book: 2John (ee)", function() {
1154
+ expect(p.parse("2. Yohane 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Yohane 1:1'");
1155
+ expect(p.parse("2 Yohane 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Yohane 1:1'");
1156
+ expect(p.parse("2. Yo 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Yo 1:1'");
1157
+ expect(p.parse("2John 1:1").osis()).toEqual("2John.1.1", "parsing: '2John 1:1'");
1158
+ expect(p.parse("2 Yo 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Yo 1:1'");
1159
+ p.include_apocrypha(false);
1160
+ expect(p.parse("2. YOHANE 1:1").osis()).toEqual("2John.1.1", "parsing: '2. YOHANE 1:1'");
1161
+ expect(p.parse("2 YOHANE 1:1").osis()).toEqual("2John.1.1", "parsing: '2 YOHANE 1:1'");
1162
+ expect(p.parse("2. YO 1:1").osis()).toEqual("2John.1.1", "parsing: '2. YO 1:1'");
1163
+ expect(p.parse("2JOHN 1:1").osis()).toEqual("2John.1.1", "parsing: '2JOHN 1:1'");
1164
+ expect(p.parse("2 YO 1:1").osis()).toEqual("2John.1.1", "parsing: '2 YO 1:1'");
1165
+ });
1166
+ });
1167
+
1168
+ describe("Localized book 3John (ee)", function() {
1169
+ var p;
1170
+ p = {};
1171
+ beforeEach(function() {
1172
+ p = new bcv_parser();
1173
+ p.set_options({
1174
+ book_alone_strategy: "ignore",
1175
+ book_sequence_strategy: "ignore",
1176
+ osis_compaction_strategy: "bc",
1177
+ captive_end_digits_strategy: "delete"
1178
+ });
1179
+ p.include_apocrypha(true);
1180
+ });
1181
+ it("should handle book: 3John (ee)", function() {
1182
+ expect(p.parse("3. Yohane 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Yohane 1:1'");
1183
+ expect(p.parse("3 Yohane 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Yohane 1:1'");
1184
+ expect(p.parse("3. Yo 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Yo 1:1'");
1185
+ expect(p.parse("3John 1:1").osis()).toEqual("3John.1.1", "parsing: '3John 1:1'");
1186
+ expect(p.parse("3 Yo 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Yo 1:1'");
1187
+ p.include_apocrypha(false);
1188
+ expect(p.parse("3. YOHANE 1:1").osis()).toEqual("3John.1.1", "parsing: '3. YOHANE 1:1'");
1189
+ expect(p.parse("3 YOHANE 1:1").osis()).toEqual("3John.1.1", "parsing: '3 YOHANE 1:1'");
1190
+ expect(p.parse("3. YO 1:1").osis()).toEqual("3John.1.1", "parsing: '3. YO 1:1'");
1191
+ expect(p.parse("3JOHN 1:1").osis()).toEqual("3John.1.1", "parsing: '3JOHN 1:1'");
1192
+ expect(p.parse("3 YO 1:1").osis()).toEqual("3John.1.1", "parsing: '3 YO 1:1'");
1193
+ });
1194
+ });
1195
+
1196
+ describe("Localized book John (ee)", 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: John (ee)", function() {
1210
+ expect(p.parse("Yohane 1:1").osis()).toEqual("John.1.1", "parsing: 'Yohane 1:1'");
1211
+ expect(p.parse("John 1:1").osis()).toEqual("John.1.1", "parsing: 'John 1:1'");
1212
+ expect(p.parse("Yoh 1:1").osis()).toEqual("John.1.1", "parsing: 'Yoh 1:1'");
1213
+ p.include_apocrypha(false);
1214
+ expect(p.parse("YOHANE 1:1").osis()).toEqual("John.1.1", "parsing: 'YOHANE 1:1'");
1215
+ expect(p.parse("JOHN 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHN 1:1'");
1216
+ expect(p.parse("YOH 1:1").osis()).toEqual("John.1.1", "parsing: 'YOH 1:1'");
1217
+ });
1218
+ });
1219
+
1220
+ describe("Localized book Acts (ee)", function() {
1221
+ var p;
1222
+ p = {};
1223
+ beforeEach(function() {
1224
+ p = new bcv_parser();
1225
+ p.set_options({
1226
+ book_alone_strategy: "ignore",
1227
+ book_sequence_strategy: "ignore",
1228
+ osis_compaction_strategy: "bc",
1229
+ captive_end_digits_strategy: "delete"
1230
+ });
1231
+ p.include_apocrypha(true);
1232
+ });
1233
+ it("should handle book: Acts (ee)", function() {
1234
+ expect(p.parse("Asikɔto 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Asikɔto 1:1'");
1235
+ expect(p.parse("Acts 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Acts 1:1'");
1236
+ expect(p.parse("Asi 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Asi 1:1'");
1237
+ p.include_apocrypha(false);
1238
+ expect(p.parse("ASIKƆTO 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ASIKƆTO 1:1'");
1239
+ expect(p.parse("ACTS 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTS 1:1'");
1240
+ expect(p.parse("ASI 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ASI 1:1'");
1241
+ });
1242
+ });
1243
+
1244
+ describe("Localized book Rom (ee)", function() {
1245
+ var p;
1246
+ p = {};
1247
+ beforeEach(function() {
1248
+ p = new bcv_parser();
1249
+ p.set_options({
1250
+ book_alone_strategy: "ignore",
1251
+ book_sequence_strategy: "ignore",
1252
+ osis_compaction_strategy: "bc",
1253
+ captive_end_digits_strategy: "delete"
1254
+ });
1255
+ p.include_apocrypha(true);
1256
+ });
1257
+ it("should handle book: Rom (ee)", function() {
1258
+ expect(p.parse("Roma 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Roma 1:1'");
1259
+ expect(p.parse("Rom 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rom 1:1'");
1260
+ p.include_apocrypha(false);
1261
+ expect(p.parse("ROMA 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROMA 1:1'");
1262
+ expect(p.parse("ROM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROM 1:1'");
1263
+ });
1264
+ });
1265
+
1266
+ describe("Localized book 2Cor (ee)", 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: 2Cor (ee)", function() {
1280
+ expect(p.parse("2. Kɔrintintɔwo 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Kɔrintintɔwo 1:1'");
1281
+ expect(p.parse("2 Kɔrintintɔwo 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Kɔrintintɔwo 1:1'");
1282
+ expect(p.parse("2. Ko 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Ko 1:1'");
1283
+ expect(p.parse("2 Ko 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Ko 1:1'");
1284
+ expect(p.parse("2Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2Cor 1:1'");
1285
+ p.include_apocrypha(false);
1286
+ expect(p.parse("2. KƆRINTINTƆWO 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KƆRINTINTƆWO 1:1'");
1287
+ expect(p.parse("2 KƆRINTINTƆWO 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KƆRINTINTƆWO 1:1'");
1288
+ expect(p.parse("2. KO 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KO 1:1'");
1289
+ expect(p.parse("2 KO 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KO 1:1'");
1290
+ expect(p.parse("2COR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2COR 1:1'");
1291
+ });
1292
+ });
1293
+
1294
+ describe("Localized book 1Cor (ee)", function() {
1295
+ var p;
1296
+ p = {};
1297
+ beforeEach(function() {
1298
+ p = new bcv_parser();
1299
+ p.set_options({
1300
+ book_alone_strategy: "ignore",
1301
+ book_sequence_strategy: "ignore",
1302
+ osis_compaction_strategy: "bc",
1303
+ captive_end_digits_strategy: "delete"
1304
+ });
1305
+ p.include_apocrypha(true);
1306
+ });
1307
+ it("should handle book: 1Cor (ee)", function() {
1308
+ expect(p.parse("1. Kɔrintintɔwo 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Kɔrintintɔwo 1:1'");
1309
+ expect(p.parse("le Kɔrintintɔwo 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'le Kɔrintintɔwo 1:1'");
1310
+ expect(p.parse("1 Kɔrintintɔwo 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Kɔrintintɔwo 1:1'");
1311
+ expect(p.parse("1. Ko 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Ko 1:1'");
1312
+ expect(p.parse("le Ko 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'le Ko 1:1'");
1313
+ expect(p.parse("1 Ko 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Ko 1:1'");
1314
+ expect(p.parse("1Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1Cor 1:1'");
1315
+ p.include_apocrypha(false);
1316
+ expect(p.parse("1. KƆRINTINTƆWO 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KƆRINTINTƆWO 1:1'");
1317
+ expect(p.parse("LE KƆRINTINTƆWO 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'LE KƆRINTINTƆWO 1:1'");
1318
+ expect(p.parse("1 KƆRINTINTƆWO 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KƆRINTINTƆWO 1:1'");
1319
+ expect(p.parse("1. KO 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KO 1:1'");
1320
+ expect(p.parse("LE KO 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'LE KO 1:1'");
1321
+ expect(p.parse("1 KO 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KO 1:1'");
1322
+ expect(p.parse("1COR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1COR 1:1'");
1323
+ });
1324
+ });
1325
+
1326
+ describe("Localized book Gal (ee)", function() {
1327
+ var p;
1328
+ p = {};
1329
+ beforeEach(function() {
1330
+ p = new bcv_parser();
1331
+ p.set_options({
1332
+ book_alone_strategy: "ignore",
1333
+ book_sequence_strategy: "ignore",
1334
+ osis_compaction_strategy: "bc",
1335
+ captive_end_digits_strategy: "delete"
1336
+ });
1337
+ p.include_apocrypha(true);
1338
+ });
1339
+ it("should handle book: Gal (ee)", function() {
1340
+ expect(p.parse("Galatiatɔwo 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Galatiatɔwo 1:1'");
1341
+ expect(p.parse("Gal 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Gal 1:1'");
1342
+ p.include_apocrypha(false);
1343
+ expect(p.parse("GALATIATƆWO 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GALATIATƆWO 1:1'");
1344
+ expect(p.parse("GAL 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GAL 1:1'");
1345
+ });
1346
+ });
1347
+
1348
+ describe("Localized book Eph (ee)", function() {
1349
+ var p;
1350
+ p = {};
1351
+ beforeEach(function() {
1352
+ p = new bcv_parser();
1353
+ p.set_options({
1354
+ book_alone_strategy: "ignore",
1355
+ book_sequence_strategy: "ignore",
1356
+ osis_compaction_strategy: "bc",
1357
+ captive_end_digits_strategy: "delete"
1358
+ });
1359
+ p.include_apocrypha(true);
1360
+ });
1361
+ it("should handle book: Eph (ee)", function() {
1362
+ expect(p.parse("Efesotɔwo 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Efesotɔwo 1:1'");
1363
+ expect(p.parse("Efe 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Efe 1:1'");
1364
+ expect(p.parse("Eph 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Eph 1:1'");
1365
+ p.include_apocrypha(false);
1366
+ expect(p.parse("EFESOTƆWO 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EFESOTƆWO 1:1'");
1367
+ expect(p.parse("EFE 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EFE 1:1'");
1368
+ expect(p.parse("EPH 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPH 1:1'");
1369
+ });
1370
+ });
1371
+
1372
+ describe("Localized book Phil (ee)", function() {
1373
+ var p;
1374
+ p = {};
1375
+ beforeEach(function() {
1376
+ p = new bcv_parser();
1377
+ p.set_options({
1378
+ book_alone_strategy: "ignore",
1379
+ book_sequence_strategy: "ignore",
1380
+ osis_compaction_strategy: "bc",
1381
+ captive_end_digits_strategy: "delete"
1382
+ });
1383
+ p.include_apocrypha(true);
1384
+ });
1385
+ it("should handle book: Phil (ee)", function() {
1386
+ expect(p.parse("Filipitɔwo 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Filipitɔwo 1:1'");
1387
+ expect(p.parse("Phil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Phil 1:1'");
1388
+ expect(p.parse("Fil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Fil 1:1'");
1389
+ p.include_apocrypha(false);
1390
+ expect(p.parse("FILIPITƆWO 1:1").osis()).toEqual("Phil.1.1", "parsing: 'FILIPITƆWO 1:1'");
1391
+ expect(p.parse("PHIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHIL 1:1'");
1392
+ expect(p.parse("FIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'FIL 1:1'");
1393
+ });
1394
+ });
1395
+
1396
+ describe("Localized book Col (ee)", function() {
1397
+ var p;
1398
+ p = {};
1399
+ beforeEach(function() {
1400
+ p = new bcv_parser();
1401
+ p.set_options({
1402
+ book_alone_strategy: "ignore",
1403
+ book_sequence_strategy: "ignore",
1404
+ osis_compaction_strategy: "bc",
1405
+ captive_end_digits_strategy: "delete"
1406
+ });
1407
+ p.include_apocrypha(true);
1408
+ });
1409
+ it("should handle book: Col (ee)", function() {
1410
+ expect(p.parse("Kolositɔwo 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kolositɔwo 1:1'");
1411
+ expect(p.parse("Col 1:1").osis()).toEqual("Col.1.1", "parsing: 'Col 1:1'");
1412
+ expect(p.parse("Kol 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kol 1:1'");
1413
+ p.include_apocrypha(false);
1414
+ expect(p.parse("KOLOSITƆWO 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOLOSITƆWO 1:1'");
1415
+ expect(p.parse("COL 1:1").osis()).toEqual("Col.1.1", "parsing: 'COL 1:1'");
1416
+ expect(p.parse("KOL 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOL 1:1'");
1417
+ });
1418
+ });
1419
+
1420
+ describe("Localized book 2Thess (ee)", function() {
1421
+ var p;
1422
+ p = {};
1423
+ beforeEach(function() {
1424
+ p = new bcv_parser();
1425
+ p.set_options({
1426
+ book_alone_strategy: "ignore",
1427
+ book_sequence_strategy: "ignore",
1428
+ osis_compaction_strategy: "bc",
1429
+ captive_end_digits_strategy: "delete"
1430
+ });
1431
+ p.include_apocrypha(true);
1432
+ });
1433
+ it("should handle book: 2Thess (ee)", function() {
1434
+ expect(p.parse("2. Tesalonikatɔwo 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Tesalonikatɔwo 1:1'");
1435
+ expect(p.parse("2 Tesalonikatɔwo 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Tesalonikatɔwo 1:1'");
1436
+ expect(p.parse("2Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2Thess 1:1'");
1437
+ expect(p.parse("2. Te 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Te 1:1'");
1438
+ expect(p.parse("2 Te 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Te 1:1'");
1439
+ p.include_apocrypha(false);
1440
+ expect(p.parse("2. TESALONIKATƆWO 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. TESALONIKATƆWO 1:1'");
1441
+ expect(p.parse("2 TESALONIKATƆWO 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 TESALONIKATƆWO 1:1'");
1442
+ expect(p.parse("2THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2THESS 1:1'");
1443
+ expect(p.parse("2. TE 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. TE 1:1'");
1444
+ expect(p.parse("2 TE 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 TE 1:1'");
1445
+ });
1446
+ });
1447
+
1448
+ describe("Localized book 1Thess (ee)", function() {
1449
+ var p;
1450
+ p = {};
1451
+ beforeEach(function() {
1452
+ p = new bcv_parser();
1453
+ p.set_options({
1454
+ book_alone_strategy: "ignore",
1455
+ book_sequence_strategy: "ignore",
1456
+ osis_compaction_strategy: "bc",
1457
+ captive_end_digits_strategy: "delete"
1458
+ });
1459
+ p.include_apocrypha(true);
1460
+ });
1461
+ it("should handle book: 1Thess (ee)", function() {
1462
+ expect(p.parse("1. Tesalonikatɔwo 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Tesalonikatɔwo 1:1'");
1463
+ expect(p.parse("le Tesalonikatɔwo 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'le Tesalonikatɔwo 1:1'");
1464
+ expect(p.parse("1 Tesalonikatɔwo 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Tesalonikatɔwo 1:1'");
1465
+ expect(p.parse("1Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1Thess 1:1'");
1466
+ expect(p.parse("1. Te 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Te 1:1'");
1467
+ expect(p.parse("le Te 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'le Te 1:1'");
1468
+ expect(p.parse("1 Te 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Te 1:1'");
1469
+ p.include_apocrypha(false);
1470
+ expect(p.parse("1. TESALONIKATƆWO 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. TESALONIKATƆWO 1:1'");
1471
+ expect(p.parse("LE TESALONIKATƆWO 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'LE TESALONIKATƆWO 1:1'");
1472
+ expect(p.parse("1 TESALONIKATƆWO 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 TESALONIKATƆWO 1:1'");
1473
+ expect(p.parse("1THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1THESS 1:1'");
1474
+ expect(p.parse("1. TE 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. TE 1:1'");
1475
+ expect(p.parse("LE TE 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'LE TE 1:1'");
1476
+ expect(p.parse("1 TE 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 TE 1:1'");
1477
+ });
1478
+ });
1479
+
1480
+ describe("Localized book 2Tim (ee)", function() {
1481
+ var p;
1482
+ p = {};
1483
+ beforeEach(function() {
1484
+ p = new bcv_parser();
1485
+ p.set_options({
1486
+ book_alone_strategy: "ignore",
1487
+ book_sequence_strategy: "ignore",
1488
+ osis_compaction_strategy: "bc",
1489
+ captive_end_digits_strategy: "delete"
1490
+ });
1491
+ p.include_apocrypha(true);
1492
+ });
1493
+ it("should handle book: 2Tim (ee)", function() {
1494
+ expect(p.parse("2. Timotitɔ 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Timotitɔ 1:1'");
1495
+ expect(p.parse("2 Timotitɔ 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Timotitɔ 1:1'");
1496
+ expect(p.parse("2. Ti 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Ti 1:1'");
1497
+ expect(p.parse("2 Ti 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Ti 1:1'");
1498
+ expect(p.parse("2Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2Tim 1:1'");
1499
+ p.include_apocrypha(false);
1500
+ expect(p.parse("2. TIMOTITƆ 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIMOTITƆ 1:1'");
1501
+ expect(p.parse("2 TIMOTITƆ 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIMOTITƆ 1:1'");
1502
+ expect(p.parse("2. TI 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TI 1:1'");
1503
+ expect(p.parse("2 TI 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TI 1:1'");
1504
+ expect(p.parse("2TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2TIM 1:1'");
1505
+ });
1506
+ });
1507
+
1508
+ describe("Localized book 1Tim (ee)", function() {
1509
+ var p;
1510
+ p = {};
1511
+ beforeEach(function() {
1512
+ p = new bcv_parser();
1513
+ p.set_options({
1514
+ book_alone_strategy: "ignore",
1515
+ book_sequence_strategy: "ignore",
1516
+ osis_compaction_strategy: "bc",
1517
+ captive_end_digits_strategy: "delete"
1518
+ });
1519
+ p.include_apocrypha(true);
1520
+ });
1521
+ it("should handle book: 1Tim (ee)", function() {
1522
+ expect(p.parse("1. Timotitɔ 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Timotitɔ 1:1'");
1523
+ expect(p.parse("le Timotitɔ 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'le Timotitɔ 1:1'");
1524
+ expect(p.parse("1 Timotitɔ 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Timotitɔ 1:1'");
1525
+ expect(p.parse("1. Ti 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Ti 1:1'");
1526
+ expect(p.parse("le Ti 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'le Ti 1:1'");
1527
+ expect(p.parse("1 Ti 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Ti 1:1'");
1528
+ expect(p.parse("1Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1Tim 1:1'");
1529
+ p.include_apocrypha(false);
1530
+ expect(p.parse("1. TIMOTITƆ 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TIMOTITƆ 1:1'");
1531
+ expect(p.parse("LE TIMOTITƆ 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'LE TIMOTITƆ 1:1'");
1532
+ expect(p.parse("1 TIMOTITƆ 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIMOTITƆ 1:1'");
1533
+ expect(p.parse("1. TI 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TI 1:1'");
1534
+ expect(p.parse("LE TI 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'LE TI 1:1'");
1535
+ expect(p.parse("1 TI 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TI 1:1'");
1536
+ expect(p.parse("1TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1TIM 1:1'");
1537
+ });
1538
+ });
1539
+
1540
+ describe("Localized book Titus (ee)", function() {
1541
+ var p;
1542
+ p = {};
1543
+ beforeEach(function() {
1544
+ p = new bcv_parser();
1545
+ p.set_options({
1546
+ book_alone_strategy: "ignore",
1547
+ book_sequence_strategy: "ignore",
1548
+ osis_compaction_strategy: "bc",
1549
+ captive_end_digits_strategy: "delete"
1550
+ });
1551
+ p.include_apocrypha(true);
1552
+ });
1553
+ it("should handle book: Titus (ee)", function() {
1554
+ expect(p.parse("Titus 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titus 1:1'");
1555
+ expect(p.parse("Titɔ 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titɔ 1:1'");
1556
+ expect(p.parse("Tit 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tit 1:1'");
1557
+ p.include_apocrypha(false);
1558
+ expect(p.parse("TITUS 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITUS 1:1'");
1559
+ expect(p.parse("TITƆ 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITƆ 1:1'");
1560
+ expect(p.parse("TIT 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TIT 1:1'");
1561
+ });
1562
+ });
1563
+
1564
+ describe("Localized book Phlm (ee)", function() {
1565
+ var p;
1566
+ p = {};
1567
+ beforeEach(function() {
1568
+ p = new bcv_parser();
1569
+ p.set_options({
1570
+ book_alone_strategy: "ignore",
1571
+ book_sequence_strategy: "ignore",
1572
+ osis_compaction_strategy: "bc",
1573
+ captive_end_digits_strategy: "delete"
1574
+ });
1575
+ p.include_apocrypha(true);
1576
+ });
1577
+ it("should handle book: Phlm (ee)", function() {
1578
+ expect(p.parse("Filemon 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Filemon 1:1'");
1579
+ expect(p.parse("Phlm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phlm 1:1'");
1580
+ expect(p.parse("Fil 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Fil 1:1'");
1581
+ p.include_apocrypha(false);
1582
+ expect(p.parse("FILEMON 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'FILEMON 1:1'");
1583
+ expect(p.parse("PHLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHLM 1:1'");
1584
+ expect(p.parse("FIL 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'FIL 1:1'");
1585
+ });
1586
+ });
1587
+
1588
+ describe("Localized book Heb (ee)", function() {
1589
+ var p;
1590
+ p = {};
1591
+ beforeEach(function() {
1592
+ p = new bcv_parser();
1593
+ p.set_options({
1594
+ book_alone_strategy: "ignore",
1595
+ book_sequence_strategy: "ignore",
1596
+ osis_compaction_strategy: "bc",
1597
+ captive_end_digits_strategy: "delete"
1598
+ });
1599
+ p.include_apocrypha(true);
1600
+ });
1601
+ it("should handle book: Heb (ee)", function() {
1602
+ expect(p.parse("Hevriotɔwo 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hevriotɔwo 1:1'");
1603
+ expect(p.parse("Heb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Heb 1:1'");
1604
+ p.include_apocrypha(false);
1605
+ expect(p.parse("HEVRIOTƆWO 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEVRIOTƆWO 1:1'");
1606
+ expect(p.parse("HEB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEB 1:1'");
1607
+ });
1608
+ });
1609
+
1610
+ describe("Localized book Jas (ee)", function() {
1611
+ var p;
1612
+ p = {};
1613
+ beforeEach(function() {
1614
+ p = new bcv_parser();
1615
+ p.set_options({
1616
+ book_alone_strategy: "ignore",
1617
+ book_sequence_strategy: "ignore",
1618
+ osis_compaction_strategy: "bc",
1619
+ captive_end_digits_strategy: "delete"
1620
+ });
1621
+ p.include_apocrypha(true);
1622
+ });
1623
+ it("should handle book: Jas (ee)", function() {
1624
+ expect(p.parse("Yakɔbu 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Yakɔbu 1:1'");
1625
+ expect(p.parse("Jas 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jas 1:1'");
1626
+ expect(p.parse("Yak 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Yak 1:1'");
1627
+ p.include_apocrypha(false);
1628
+ expect(p.parse("YAKƆBU 1:1").osis()).toEqual("Jas.1.1", "parsing: 'YAKƆBU 1:1'");
1629
+ expect(p.parse("JAS 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAS 1:1'");
1630
+ expect(p.parse("YAK 1:1").osis()).toEqual("Jas.1.1", "parsing: 'YAK 1:1'");
1631
+ });
1632
+ });
1633
+
1634
+ describe("Localized book 2Pet (ee)", function() {
1635
+ var p;
1636
+ p = {};
1637
+ beforeEach(function() {
1638
+ p = new bcv_parser();
1639
+ p.set_options({
1640
+ book_alone_strategy: "ignore",
1641
+ book_sequence_strategy: "ignore",
1642
+ osis_compaction_strategy: "bc",
1643
+ captive_end_digits_strategy: "delete"
1644
+ });
1645
+ p.include_apocrypha(true);
1646
+ });
1647
+ it("should handle book: 2Pet (ee)", function() {
1648
+ expect(p.parse("2. Petertɔ 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Petertɔ 1:1'");
1649
+ expect(p.parse("2 Petertɔ 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Petertɔ 1:1'");
1650
+ expect(p.parse("2. Pe 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Pe 1:1'");
1651
+ expect(p.parse("2 Pe 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Pe 1:1'");
1652
+ expect(p.parse("2Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2Pet 1:1'");
1653
+ p.include_apocrypha(false);
1654
+ expect(p.parse("2. PETERTƆ 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PETERTƆ 1:1'");
1655
+ expect(p.parse("2 PETERTƆ 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PETERTƆ 1:1'");
1656
+ expect(p.parse("2. PE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PE 1:1'");
1657
+ expect(p.parse("2 PE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PE 1:1'");
1658
+ expect(p.parse("2PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2PET 1:1'");
1659
+ });
1660
+ });
1661
+
1662
+ describe("Localized book 1Pet (ee)", function() {
1663
+ var p;
1664
+ p = {};
1665
+ beforeEach(function() {
1666
+ p = new bcv_parser();
1667
+ p.set_options({
1668
+ book_alone_strategy: "ignore",
1669
+ book_sequence_strategy: "ignore",
1670
+ osis_compaction_strategy: "bc",
1671
+ captive_end_digits_strategy: "delete"
1672
+ });
1673
+ p.include_apocrypha(true);
1674
+ });
1675
+ it("should handle book: 1Pet (ee)", function() {
1676
+ expect(p.parse("1. Petertɔ 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Petertɔ 1:1'");
1677
+ expect(p.parse("le Petertɔ 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'le Petertɔ 1:1'");
1678
+ expect(p.parse("1 Petertɔ 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Petertɔ 1:1'");
1679
+ expect(p.parse("1. Pe 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Pe 1:1'");
1680
+ expect(p.parse("le Pe 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'le Pe 1:1'");
1681
+ expect(p.parse("1 Pe 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Pe 1:1'");
1682
+ expect(p.parse("1Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1Pet 1:1'");
1683
+ p.include_apocrypha(false);
1684
+ expect(p.parse("1. PETERTƆ 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PETERTƆ 1:1'");
1685
+ expect(p.parse("LE PETERTƆ 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'LE PETERTƆ 1:1'");
1686
+ expect(p.parse("1 PETERTƆ 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PETERTƆ 1:1'");
1687
+ expect(p.parse("1. PE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PE 1:1'");
1688
+ expect(p.parse("LE PE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'LE PE 1:1'");
1689
+ expect(p.parse("1 PE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PE 1:1'");
1690
+ expect(p.parse("1PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1PET 1:1'");
1691
+ });
1692
+ });
1693
+
1694
+ describe("Localized book Jude (ee)", function() {
1695
+ var p;
1696
+ p = {};
1697
+ beforeEach(function() {
1698
+ p = new bcv_parser();
1699
+ p.set_options({
1700
+ book_alone_strategy: "ignore",
1701
+ book_sequence_strategy: "ignore",
1702
+ osis_compaction_strategy: "bc",
1703
+ captive_end_digits_strategy: "delete"
1704
+ });
1705
+ p.include_apocrypha(true);
1706
+ });
1707
+ it("should handle book: Jude (ee)", function() {
1708
+ expect(p.parse("Jude 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jude 1:1'");
1709
+ expect(p.parse("Yuda 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Yuda 1:1'");
1710
+ expect(p.parse("Yud 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Yud 1:1'");
1711
+ p.include_apocrypha(false);
1712
+ expect(p.parse("JUDE 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDE 1:1'");
1713
+ expect(p.parse("YUDA 1:1").osis()).toEqual("Jude.1.1", "parsing: 'YUDA 1:1'");
1714
+ expect(p.parse("YUD 1:1").osis()).toEqual("Jude.1.1", "parsing: 'YUD 1:1'");
1715
+ });
1716
+ });
1717
+
1718
+ describe("Miscellaneous tests", function() {
1719
+ var p;
1720
+ p = {};
1721
+ beforeEach(function() {
1722
+ p = new bcv_parser();
1723
+ p.set_options({
1724
+ book_alone_strategy: "ignore",
1725
+ book_sequence_strategy: "ignore",
1726
+ osis_compaction_strategy: "bc",
1727
+ captive_end_digits_strategy: "delete"
1728
+ });
1729
+ p.include_apocrypha(true);
1730
+ });
1731
+ it("should return the expected language", function() {
1732
+ expect(p.languages).toEqual(["ee"]);
1733
+ });
1734
+ it("should handle ranges (ee)", function() {
1735
+ expect(p.parse("Titus 1:1 yi 2").osis()).toEqual("Titus.1.1-Titus.1.2", "parsing: 'Titus 1:1 yi 2'");
1736
+ expect(p.parse("Matt 1yi2").osis()).toEqual("Matt.1-Matt.2", "parsing: 'Matt 1yi2'");
1737
+ expect(p.parse("Phlm 2 YI 3").osis()).toEqual("Phlm.1.2-Phlm.1.3", "parsing: 'Phlm 2 YI 3'");
1738
+ });
1739
+ it("should handle chapters (ee)", function() {
1740
+ expect(p.parse("Titus 1:1, ta 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, ta 2'");
1741
+ expect(p.parse("Matt 3:4 TA 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 TA 6'");
1742
+ });
1743
+ it("should handle verses (ee)", function() {
1744
+ expect(p.parse("Exod 1:1 kpukpui 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 kpukpui 3'");
1745
+ expect(p.parse("Phlm KPUKPUI 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm KPUKPUI 6'");
1746
+ expect(p.parse("Exod 1:1 vovo 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vovo 3'");
1747
+ expect(p.parse("Phlm VOVO 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VOVO 6'");
1748
+ });
1749
+ it("should handle 'and' (ee)", function() {
1750
+ expect(p.parse("Exod 1:1 kple 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 kple 3'");
1751
+ expect(p.parse("Phlm 2 KPLE 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 KPLE 6'");
1752
+ });
1753
+ it("should handle titles (ee)", function() {
1754
+ expect(p.parse("Ps 3 tanya, 4:2, 5:tanya").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'Ps 3 tanya, 4:2, 5:tanya'");
1755
+ expect(p.parse("PS 3 TANYA, 4:2, 5:TANYA").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'PS 3 TANYA, 4:2, 5:TANYA'");
1756
+ });
1757
+ it("should handle 'ff' (ee)", function() {
1758
+ expect(p.parse("Rev 3ff, 4:2ff").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'Rev 3ff, 4:2ff'");
1759
+ 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'");
1760
+ });
1761
+ it("should handle translations (ee)", function() {
1762
+ expect(p.parse("Lev 1 (kjv)").osis_and_translations()).toEqual([["Lev.1", "kjv"]]);
1763
+ expect(p.parse("lev 1 kjv").osis_and_translations()).toEqual([["Lev.1", "kjv"]]);
1764
+ });
1765
+ it("should handle book ranges (ee)", function() {
1766
+ p.set_options({
1767
+ book_alone_strategy: "full",
1768
+ book_range_strategy: "include"
1769
+ });
1770
+ expect(p.parse("1 yi 3 Yo").osis()).toEqual("1John.1-3John.1", "parsing: '1 yi 3 Yo'");
1771
+ });
1772
+ return it("should handle boundaries (ee)", function() {
1773
+ p.set_options({
1774
+ book_alone_strategy: "full"
1775
+ });
1776
+ expect(p.parse("\u2014Matt\u2014").osis()).toEqual("Matt.1-Matt.28", "parsing: '\u2014Matt\u2014'");
1777
+ expect(p.parse("\u201cMatt 1:1\u201d").osis()).toEqual("Matt.1.1", "parsing: '\u201cMatt 1:1\u201d'");
1778
+ });
1779
+ });
1780
+
1781
+ }).call(this);