bible-ref-parse 3.0.0 → 3.0.1

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 (97) hide show
  1. package/dist/ar-bcv-parser.js +7480 -0
  2. package/dist/bg-bcv-parser.js +7568 -0
  3. package/dist/ceb-bcv-parser.js +7498 -0
  4. package/dist/cs-bcv-parser.js +7613 -0
  5. package/dist/da-bcv-parser.js +7560 -0
  6. package/dist/de-bcv-parser.js +8406 -0
  7. package/dist/el-bcv-parser.js +7929 -0
  8. package/dist/en-bcv-parser.js +8404 -0
  9. package/dist/es-bcv-parser.js +8164 -0
  10. package/dist/fa-bcv-parser.js +7603 -0
  11. package/dist/fi-bcv-parser.js +7630 -0
  12. package/dist/fr-bcv-parser.js +7867 -0
  13. package/dist/he-bcv-parser.js +7504 -0
  14. package/dist/hi-bcv-parser.js +7480 -0
  15. package/dist/hr-bcv-parser.js +7500 -0
  16. package/dist/ht-bcv-parser.js +7526 -0
  17. package/dist/hu-bcv-parser.js +7785 -0
  18. package/dist/is-bcv-parser.js +7553 -0
  19. package/dist/it-bcv-parser.js +7875 -0
  20. package/dist/ja-bcv-parser.js +7528 -0
  21. package/dist/jv-bcv-parser.js +7489 -0
  22. package/dist/ko-bcv-parser.js +7528 -0
  23. package/dist/la-bcv-parser.js +7736 -0
  24. package/dist/mk-bcv-parser.js +7507 -0
  25. package/dist/mr-bcv-parser.js +7480 -0
  26. package/dist/ne-bcv-parser.js +7478 -0
  27. package/dist/nl-bcv-parser.js +7750 -0
  28. package/dist/no-bcv-parser.js +7633 -0
  29. package/dist/or-bcv-parser.js +7480 -0
  30. package/dist/pa-bcv-parser.js +7478 -0
  31. package/dist/pl-bcv-parser.js +7910 -0
  32. package/dist/pt-bcv-parser.js +8001 -0
  33. package/dist/ro-bcv-parser.js +7772 -0
  34. package/dist/ru-bcv-parser.js +7602 -0
  35. package/dist/sk-bcv-parser.js +7713 -0
  36. package/dist/so-bcv-parser.js +7490 -0
  37. package/dist/sq-bcv-parser.js +7478 -0
  38. package/dist/sr-bcv-parser.js +7510 -0
  39. package/dist/sv-bcv-parser.js +7695 -0
  40. package/dist/sw-bcv-parser.js +7540 -0
  41. package/dist/ta-bcv-parser.js +7514 -0
  42. package/dist/test/ar.spec.js +2634 -0
  43. package/dist/test/bg.spec.js +3849 -0
  44. package/dist/test/ceb.spec.js +2533 -0
  45. package/dist/test/cs.spec.js +6593 -0
  46. package/dist/test/da.spec.js +2976 -0
  47. package/dist/test/de.spec.js +3114 -0
  48. package/dist/test/el.spec.js +4287 -0
  49. package/dist/test/en.spec.js +13196 -0
  50. package/dist/test/es.spec.js +5634 -0
  51. package/dist/test/fa.spec.js +16707 -0
  52. package/dist/test/fi.spec.js +3001 -0
  53. package/dist/test/fr.spec.js +3712 -0
  54. package/dist/test/he.spec.js +2411 -0
  55. package/dist/test/hi.spec.js +2754 -0
  56. package/dist/test/hr.spec.js +2851 -0
  57. package/dist/test/ht.spec.js +2749 -0
  58. package/dist/test/hu.spec.js +3951 -0
  59. package/dist/test/is.spec.js +3753 -0
  60. package/dist/test/it.spec.js +2917 -0
  61. package/dist/test/ja.spec.js +3079 -0
  62. package/dist/test/jv.spec.js +2470 -0
  63. package/dist/test/ko.spec.js +2682 -0
  64. package/dist/test/la.spec.js +2915 -0
  65. package/dist/test/mk.spec.js +3064 -0
  66. package/dist/test/mr.spec.js +3664 -0
  67. package/dist/test/ne.spec.js +4300 -0
  68. package/dist/test/nl.spec.js +3849 -0
  69. package/dist/test/no.spec.js +2867 -0
  70. package/dist/test/or.spec.js +2411 -0
  71. package/dist/test/pa.spec.js +2460 -0
  72. package/dist/test/pl.spec.js +7682 -0
  73. package/dist/test/pt.spec.js +3318 -0
  74. package/dist/test/ro.spec.js +3065 -0
  75. package/dist/test/ru.spec.js +3796 -0
  76. package/dist/test/sk.spec.js +5611 -0
  77. package/dist/test/so.spec.js +2613 -0
  78. package/dist/test/sq.spec.js +2643 -0
  79. package/dist/test/sr.spec.js +3150 -0
  80. package/dist/test/sv.spec.js +2785 -0
  81. package/dist/test/sw.spec.js +2994 -0
  82. package/dist/test/ta.spec.js +4859 -0
  83. package/dist/test/th.spec.js +2403 -0
  84. package/dist/test/tl.spec.js +3728 -0
  85. package/dist/test/tr.spec.js +19459 -0
  86. package/dist/test/uk.spec.js +6852 -0
  87. package/dist/test/ur.spec.js +3536 -0
  88. package/dist/test/vi.spec.js +2897 -0
  89. package/dist/test/zh.spec.js +4744 -0
  90. package/dist/th-bcv-parser.js +7478 -0
  91. package/dist/tl-bcv-parser.js +7555 -0
  92. package/dist/tr-bcv-parser.js +7673 -0
  93. package/dist/uk-bcv-parser.js +7541 -0
  94. package/dist/ur-bcv-parser.js +7564 -0
  95. package/dist/vi-bcv-parser.js +7480 -0
  96. package/dist/zh-bcv-parser.js +7588 -0
  97. package/package.json +2 -2
@@ -0,0 +1,2851 @@
1
+ (function() {
2
+ var bcv_parser;
3
+
4
+ bcv_parser = require("../../dist/hr-bcv-parser.js").bcv_parser;
5
+
6
+ describe("Parsing", function() {
7
+ var p;
8
+ p = {};
9
+ beforeEach(function() {
10
+ p = new bcv_parser();
11
+ p.options.osis_compaction_strategy = "b";
12
+ return 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, results;
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
+ results = [];
21
+ for (i = 0, len = books.length; i < len; i++) {
22
+ book = books[i];
23
+ bc = book + ".1";
24
+ bcv = bc + ".1";
25
+ bcv_range = bcv + "-" + bc + ".2";
26
+ expect(p.parse(bc).osis()).toEqual(bc);
27
+ expect(p.parse(bcv).osis()).toEqual(bcv);
28
+ results.push(expect(p.parse(bcv_range).osis()).toEqual(bcv_range));
29
+ }
30
+ return results;
31
+ });
32
+ it("should round-trip OSIS Apocrypha references", function() {
33
+ var bc, bcv, bcv_range, book, books, i, j, len, len1, results;
34
+ p.set_options({
35
+ osis_compaction_strategy: "bc",
36
+ ps151_strategy: "b"
37
+ });
38
+ p.include_apocrypha(true);
39
+ books = ["Tob", "Jdt", "GkEsth", "Wis", "Sir", "Bar", "PrAzar", "Sus", "Bel", "SgThree", "EpJer", "1Macc", "2Macc", "3Macc", "4Macc", "1Esd", "2Esd", "PrMan", "Ps151"];
40
+ for (i = 0, len = books.length; i < len; i++) {
41
+ book = books[i];
42
+ bc = book + ".1";
43
+ bcv = bc + ".1";
44
+ bcv_range = bcv + "-" + bc + ".2";
45
+ expect(p.parse(bc).osis()).toEqual(bc);
46
+ expect(p.parse(bcv).osis()).toEqual(bcv);
47
+ expect(p.parse(bcv_range).osis()).toEqual(bcv_range);
48
+ }
49
+ p.set_options({
50
+ ps151_strategy: "bc"
51
+ });
52
+ expect(p.parse("Ps151.1").osis()).toEqual("Ps.151");
53
+ expect(p.parse("Ps151.1.1").osis()).toEqual("Ps.151.1");
54
+ expect(p.parse("Ps151.1-Ps151.2").osis()).toEqual("Ps.151.1-Ps.151.2");
55
+ p.include_apocrypha(false);
56
+ results = [];
57
+ for (j = 0, len1 = books.length; j < len1; j++) {
58
+ book = books[j];
59
+ bc = book + ".1";
60
+ results.push(expect(p.parse(bc).osis()).toEqual(""));
61
+ }
62
+ return results;
63
+ });
64
+ return it("should handle a preceding character", function() {
65
+ expect(p.parse(" Gen 1").osis()).toEqual("Gen.1");
66
+ expect(p.parse("Matt5John3").osis()).toEqual("Matt.5,John.3");
67
+ expect(p.parse("1Ps 1").osis()).toEqual("");
68
+ return expect(p.parse("11Sam 1").osis()).toEqual("");
69
+ });
70
+ });
71
+
72
+ describe("Localized book Gen (hr)", function() {
73
+ var p;
74
+ p = {};
75
+ beforeEach(function() {
76
+ p = new bcv_parser();
77
+ p.set_options({
78
+ book_alone_strategy: "ignore",
79
+ book_sequence_strategy: "ignore",
80
+ osis_compaction_strategy: "bc",
81
+ captive_end_digits_strategy: "delete"
82
+ });
83
+ return p.include_apocrypha(true);
84
+ });
85
+ return it("should handle book: Gen (hr)", function() {
86
+
87
+ expect(p.parse("Knjiga Postanka 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Knjiga Postanka 1:1'")
88
+ expect(p.parse("Postanak 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Postanak 1:1'")
89
+ expect(p.parse("Post 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Post 1:1'")
90
+ expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'")
91
+ p.include_apocrypha(false)
92
+ expect(p.parse("KNJIGA POSTANKA 1:1").osis()).toEqual("Gen.1.1", "parsing: 'KNJIGA POSTANKA 1:1'")
93
+ expect(p.parse("POSTANAK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'POSTANAK 1:1'")
94
+ expect(p.parse("POST 1:1").osis()).toEqual("Gen.1.1", "parsing: 'POST 1:1'")
95
+ expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'")
96
+ ;
97
+ return true;
98
+ });
99
+ });
100
+
101
+ describe("Localized book Exod (hr)", function() {
102
+ var p;
103
+ p = {};
104
+ beforeEach(function() {
105
+ p = new bcv_parser();
106
+ p.set_options({
107
+ book_alone_strategy: "ignore",
108
+ book_sequence_strategy: "ignore",
109
+ osis_compaction_strategy: "bc",
110
+ captive_end_digits_strategy: "delete"
111
+ });
112
+ return p.include_apocrypha(true);
113
+ });
114
+ return it("should handle book: Exod (hr)", function() {
115
+
116
+ expect(p.parse("Knjiga Izlaska 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Knjiga Izlaska 1:1'")
117
+ expect(p.parse("Egzodus 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Egzodus 1:1'")
118
+ expect(p.parse("Izlazak 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Izlazak 1:1'")
119
+ expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'")
120
+ expect(p.parse("Izl 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Izl 1:1'")
121
+ p.include_apocrypha(false)
122
+ expect(p.parse("KNJIGA IZLASKA 1:1").osis()).toEqual("Exod.1.1", "parsing: 'KNJIGA IZLASKA 1:1'")
123
+ expect(p.parse("EGZODUS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EGZODUS 1:1'")
124
+ expect(p.parse("IZLAZAK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'IZLAZAK 1:1'")
125
+ expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'")
126
+ expect(p.parse("IZL 1:1").osis()).toEqual("Exod.1.1", "parsing: 'IZL 1:1'")
127
+ ;
128
+ return true;
129
+ });
130
+ });
131
+
132
+ describe("Localized book Bel (hr)", function() {
133
+ var p;
134
+ p = {};
135
+ beforeEach(function() {
136
+ p = new bcv_parser();
137
+ p.set_options({
138
+ book_alone_strategy: "ignore",
139
+ book_sequence_strategy: "ignore",
140
+ osis_compaction_strategy: "bc",
141
+ captive_end_digits_strategy: "delete"
142
+ });
143
+ return p.include_apocrypha(true);
144
+ });
145
+ return it("should handle book: Bel (hr)", function() {
146
+
147
+ expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'")
148
+ ;
149
+ return true;
150
+ });
151
+ });
152
+
153
+ describe("Localized book Lev (hr)", function() {
154
+ var p;
155
+ p = {};
156
+ beforeEach(function() {
157
+ p = new bcv_parser();
158
+ p.set_options({
159
+ book_alone_strategy: "ignore",
160
+ book_sequence_strategy: "ignore",
161
+ osis_compaction_strategy: "bc",
162
+ captive_end_digits_strategy: "delete"
163
+ });
164
+ return p.include_apocrypha(true);
165
+ });
166
+ return it("should handle book: Lev (hr)", function() {
167
+
168
+ expect(p.parse("Levitski zakonik 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Levitski zakonik 1:1'")
169
+ expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'")
170
+ p.include_apocrypha(false)
171
+ expect(p.parse("LEVITSKI ZAKONIK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEVITSKI ZAKONIK 1:1'")
172
+ expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'")
173
+ ;
174
+ return true;
175
+ });
176
+ });
177
+
178
+ describe("Localized book Num (hr)", function() {
179
+ var p;
180
+ p = {};
181
+ beforeEach(function() {
182
+ p = new bcv_parser();
183
+ p.set_options({
184
+ book_alone_strategy: "ignore",
185
+ book_sequence_strategy: "ignore",
186
+ osis_compaction_strategy: "bc",
187
+ captive_end_digits_strategy: "delete"
188
+ });
189
+ return p.include_apocrypha(true);
190
+ });
191
+ return it("should handle book: Num (hr)", function() {
192
+
193
+ expect(p.parse("Knjiga Brojeva 1:1").osis()).toEqual("Num.1.1", "parsing: 'Knjiga Brojeva 1:1'")
194
+ expect(p.parse("Brojevi 1:1").osis()).toEqual("Num.1.1", "parsing: 'Brojevi 1:1'")
195
+ expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'")
196
+ expect(p.parse("Br 1:1").osis()).toEqual("Num.1.1", "parsing: 'Br 1:1'")
197
+ p.include_apocrypha(false)
198
+ expect(p.parse("KNJIGA BROJEVA 1:1").osis()).toEqual("Num.1.1", "parsing: 'KNJIGA BROJEVA 1:1'")
199
+ expect(p.parse("BROJEVI 1:1").osis()).toEqual("Num.1.1", "parsing: 'BROJEVI 1:1'")
200
+ expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'")
201
+ expect(p.parse("BR 1:1").osis()).toEqual("Num.1.1", "parsing: 'BR 1:1'")
202
+ ;
203
+ return true;
204
+ });
205
+ });
206
+
207
+ describe("Localized book Sir (hr)", function() {
208
+ var p;
209
+ p = {};
210
+ beforeEach(function() {
211
+ p = new bcv_parser();
212
+ p.set_options({
213
+ book_alone_strategy: "ignore",
214
+ book_sequence_strategy: "ignore",
215
+ osis_compaction_strategy: "bc",
216
+ captive_end_digits_strategy: "delete"
217
+ });
218
+ return p.include_apocrypha(true);
219
+ });
220
+ return it("should handle book: Sir (hr)", function() {
221
+
222
+ expect(p.parse("Knjiga Sirahova 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Knjiga Sirahova 1:1'")
223
+ expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'")
224
+ ;
225
+ return true;
226
+ });
227
+ });
228
+
229
+ describe("Localized book Wis (hr)", function() {
230
+ var p;
231
+ p = {};
232
+ beforeEach(function() {
233
+ p = new bcv_parser();
234
+ p.set_options({
235
+ book_alone_strategy: "ignore",
236
+ book_sequence_strategy: "ignore",
237
+ osis_compaction_strategy: "bc",
238
+ captive_end_digits_strategy: "delete"
239
+ });
240
+ return p.include_apocrypha(true);
241
+ });
242
+ return it("should handle book: Wis (hr)", function() {
243
+
244
+ expect(p.parse("Knjiga Mudrosti 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Knjiga Mudrosti 1:1'")
245
+ expect(p.parse("Mudr 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Mudr 1:1'")
246
+ expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'")
247
+ ;
248
+ return true;
249
+ });
250
+ });
251
+
252
+ describe("Localized book Lam (hr)", function() {
253
+ var p;
254
+ p = {};
255
+ beforeEach(function() {
256
+ p = new bcv_parser();
257
+ p.set_options({
258
+ book_alone_strategy: "ignore",
259
+ book_sequence_strategy: "ignore",
260
+ osis_compaction_strategy: "bc",
261
+ captive_end_digits_strategy: "delete"
262
+ });
263
+ return p.include_apocrypha(true);
264
+ });
265
+ return it("should handle book: Lam (hr)", function() {
266
+
267
+ expect(p.parse("Jeremijine tuzaljke 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Jeremijine tuzaljke 1:1'")
268
+ expect(p.parse("Jeremijine tužaljke 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Jeremijine tužaljke 1:1'")
269
+ expect(p.parse("Lamentacije 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentacije 1:1'")
270
+ expect(p.parse("Tuzaljke 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Tuzaljke 1:1'")
271
+ expect(p.parse("Tužaljke 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Tužaljke 1:1'")
272
+ expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'")
273
+ expect(p.parse("Tuz 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Tuz 1:1'")
274
+ expect(p.parse("Tuž 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Tuž 1:1'")
275
+ p.include_apocrypha(false)
276
+ expect(p.parse("JEREMIJINE TUZALJKE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'JEREMIJINE TUZALJKE 1:1'")
277
+ expect(p.parse("JEREMIJINE TUŽALJKE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'JEREMIJINE TUŽALJKE 1:1'")
278
+ expect(p.parse("LAMENTACIJE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTACIJE 1:1'")
279
+ expect(p.parse("TUZALJKE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'TUZALJKE 1:1'")
280
+ expect(p.parse("TUŽALJKE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'TUŽALJKE 1:1'")
281
+ expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'")
282
+ expect(p.parse("TUZ 1:1").osis()).toEqual("Lam.1.1", "parsing: 'TUZ 1:1'")
283
+ expect(p.parse("TUŽ 1:1").osis()).toEqual("Lam.1.1", "parsing: 'TUŽ 1:1'")
284
+ ;
285
+ return true;
286
+ });
287
+ });
288
+
289
+ describe("Localized book EpJer (hr)", function() {
290
+ var p;
291
+ p = {};
292
+ beforeEach(function() {
293
+ p = new bcv_parser();
294
+ p.set_options({
295
+ book_alone_strategy: "ignore",
296
+ book_sequence_strategy: "ignore",
297
+ osis_compaction_strategy: "bc",
298
+ captive_end_digits_strategy: "delete"
299
+ });
300
+ return p.include_apocrypha(true);
301
+ });
302
+ return it("should handle book: EpJer (hr)", function() {
303
+
304
+ expect(p.parse("Pismo Jeremije proroka 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Pismo Jeremije proroka 1:1'")
305
+ expect(p.parse("Jeremijino pismo 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Jeremijino pismo 1:1'")
306
+ expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'")
307
+ ;
308
+ return true;
309
+ });
310
+ });
311
+
312
+ describe("Localized book Rev (hr)", function() {
313
+ var p;
314
+ p = {};
315
+ beforeEach(function() {
316
+ p = new bcv_parser();
317
+ p.set_options({
318
+ book_alone_strategy: "ignore",
319
+ book_sequence_strategy: "ignore",
320
+ osis_compaction_strategy: "bc",
321
+ captive_end_digits_strategy: "delete"
322
+ });
323
+ return p.include_apocrypha(true);
324
+ });
325
+ return it("should handle book: Rev (hr)", function() {
326
+
327
+ expect(p.parse("Otkrivenje Ivanovo 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Otkrivenje Ivanovo 1:1'")
328
+ expect(p.parse("Apokalipsa 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apokalipsa 1:1'")
329
+ expect(p.parse("Otkrivenje 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Otkrivenje 1:1'")
330
+ expect(p.parse("Otk 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Otk 1:1'")
331
+ expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'")
332
+ p.include_apocrypha(false)
333
+ expect(p.parse("OTKRIVENJE IVANOVO 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OTKRIVENJE IVANOVO 1:1'")
334
+ expect(p.parse("APOKALIPSA 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APOKALIPSA 1:1'")
335
+ expect(p.parse("OTKRIVENJE 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OTKRIVENJE 1:1'")
336
+ expect(p.parse("OTK 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OTK 1:1'")
337
+ expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'")
338
+ ;
339
+ return true;
340
+ });
341
+ });
342
+
343
+ describe("Localized book PrMan (hr)", function() {
344
+ var p;
345
+ p = {};
346
+ beforeEach(function() {
347
+ p = new bcv_parser();
348
+ p.set_options({
349
+ book_alone_strategy: "ignore",
350
+ book_sequence_strategy: "ignore",
351
+ osis_compaction_strategy: "bc",
352
+ captive_end_digits_strategy: "delete"
353
+ });
354
+ return p.include_apocrypha(true);
355
+ });
356
+ return it("should handle book: PrMan (hr)", function() {
357
+
358
+ expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'")
359
+ ;
360
+ return true;
361
+ });
362
+ });
363
+
364
+ describe("Localized book Deut (hr)", function() {
365
+ var p;
366
+ p = {};
367
+ beforeEach(function() {
368
+ p = new bcv_parser();
369
+ p.set_options({
370
+ book_alone_strategy: "ignore",
371
+ book_sequence_strategy: "ignore",
372
+ osis_compaction_strategy: "bc",
373
+ captive_end_digits_strategy: "delete"
374
+ });
375
+ return p.include_apocrypha(true);
376
+ });
377
+ return it("should handle book: Deut (hr)", function() {
378
+
379
+ expect(p.parse("Ponovljeni zakon 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Ponovljeni zakon 1:1'")
380
+ expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'")
381
+ expect(p.parse("Pnz 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Pnz 1:1'")
382
+ p.include_apocrypha(false)
383
+ expect(p.parse("PONOVLJENI ZAKON 1:1").osis()).toEqual("Deut.1.1", "parsing: 'PONOVLJENI ZAKON 1:1'")
384
+ expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'")
385
+ expect(p.parse("PNZ 1:1").osis()).toEqual("Deut.1.1", "parsing: 'PNZ 1:1'")
386
+ ;
387
+ return true;
388
+ });
389
+ });
390
+
391
+ describe("Localized book Josh (hr)", function() {
392
+ var p;
393
+ p = {};
394
+ beforeEach(function() {
395
+ p = new bcv_parser();
396
+ p.set_options({
397
+ book_alone_strategy: "ignore",
398
+ book_sequence_strategy: "ignore",
399
+ osis_compaction_strategy: "bc",
400
+ captive_end_digits_strategy: "delete"
401
+ });
402
+ return p.include_apocrypha(true);
403
+ });
404
+ return it("should handle book: Josh (hr)", function() {
405
+
406
+ expect(p.parse("Josua 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josua 1:1'")
407
+ expect(p.parse("Jošua 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jošua 1:1'")
408
+ expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'")
409
+ expect(p.parse("Js 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Js 1:1'")
410
+ expect(p.parse("Jš 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jš 1:1'")
411
+ p.include_apocrypha(false)
412
+ expect(p.parse("JOSUA 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSUA 1:1'")
413
+ expect(p.parse("JOŠUA 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOŠUA 1:1'")
414
+ expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'")
415
+ expect(p.parse("JS 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JS 1:1'")
416
+ expect(p.parse("JŠ 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JŠ 1:1'")
417
+ ;
418
+ return true;
419
+ });
420
+ });
421
+
422
+ describe("Localized book Judg (hr)", function() {
423
+ var p;
424
+ p = {};
425
+ beforeEach(function() {
426
+ p = new bcv_parser();
427
+ p.set_options({
428
+ book_alone_strategy: "ignore",
429
+ book_sequence_strategy: "ignore",
430
+ osis_compaction_strategy: "bc",
431
+ captive_end_digits_strategy: "delete"
432
+ });
433
+ return p.include_apocrypha(true);
434
+ });
435
+ return it("should handle book: Judg (hr)", function() {
436
+
437
+ expect(p.parse("Knjiga o Sucima 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Knjiga o Sucima 1:1'")
438
+ expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'")
439
+ expect(p.parse("Suci 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Suci 1:1'")
440
+ p.include_apocrypha(false)
441
+ expect(p.parse("KNJIGA O SUCIMA 1:1").osis()).toEqual("Judg.1.1", "parsing: 'KNJIGA O SUCIMA 1:1'")
442
+ expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'")
443
+ expect(p.parse("SUCI 1:1").osis()).toEqual("Judg.1.1", "parsing: 'SUCI 1:1'")
444
+ ;
445
+ return true;
446
+ });
447
+ });
448
+
449
+ describe("Localized book Ruth (hr)", function() {
450
+ var p;
451
+ p = {};
452
+ beforeEach(function() {
453
+ p = new bcv_parser();
454
+ p.set_options({
455
+ book_alone_strategy: "ignore",
456
+ book_sequence_strategy: "ignore",
457
+ osis_compaction_strategy: "bc",
458
+ captive_end_digits_strategy: "delete"
459
+ });
460
+ return p.include_apocrypha(true);
461
+ });
462
+ return it("should handle book: Ruth (hr)", function() {
463
+
464
+ expect(p.parse("Knjiga o Ruti 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Knjiga o Ruti 1:1'")
465
+ expect(p.parse("Ruta 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruta 1:1'")
466
+ expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'")
467
+ expect(p.parse("Rut 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rut 1:1'")
468
+ p.include_apocrypha(false)
469
+ expect(p.parse("KNJIGA O RUTI 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'KNJIGA O RUTI 1:1'")
470
+ expect(p.parse("RUTA 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTA 1:1'")
471
+ expect(p.parse("RUTH 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTH 1:1'")
472
+ expect(p.parse("RUT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUT 1:1'")
473
+ ;
474
+ return true;
475
+ });
476
+ });
477
+
478
+ describe("Localized book 1Esd (hr)", function() {
479
+ var p;
480
+ p = {};
481
+ beforeEach(function() {
482
+ p = new bcv_parser();
483
+ p.set_options({
484
+ book_alone_strategy: "ignore",
485
+ book_sequence_strategy: "ignore",
486
+ osis_compaction_strategy: "bc",
487
+ captive_end_digits_strategy: "delete"
488
+ });
489
+ return p.include_apocrypha(true);
490
+ });
491
+ return it("should handle book: 1Esd (hr)", function() {
492
+
493
+ expect(p.parse("1Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1Esd 1:1'")
494
+ ;
495
+ return true;
496
+ });
497
+ });
498
+
499
+ describe("Localized book 2Esd (hr)", function() {
500
+ var p;
501
+ p = {};
502
+ beforeEach(function() {
503
+ p = new bcv_parser();
504
+ p.set_options({
505
+ book_alone_strategy: "ignore",
506
+ book_sequence_strategy: "ignore",
507
+ osis_compaction_strategy: "bc",
508
+ captive_end_digits_strategy: "delete"
509
+ });
510
+ return p.include_apocrypha(true);
511
+ });
512
+ return it("should handle book: 2Esd (hr)", function() {
513
+
514
+ expect(p.parse("2Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2Esd 1:1'")
515
+ ;
516
+ return true;
517
+ });
518
+ });
519
+
520
+ describe("Localized book Isa (hr)", function() {
521
+ var p;
522
+ p = {};
523
+ beforeEach(function() {
524
+ p = new bcv_parser();
525
+ p.set_options({
526
+ book_alone_strategy: "ignore",
527
+ book_sequence_strategy: "ignore",
528
+ osis_compaction_strategy: "bc",
529
+ captive_end_digits_strategy: "delete"
530
+ });
531
+ return p.include_apocrypha(true);
532
+ });
533
+ return it("should handle book: Isa (hr)", function() {
534
+
535
+ expect(p.parse("Izaija 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Izaija 1:1'")
536
+ expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'")
537
+ expect(p.parse("Iz 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Iz 1:1'")
538
+ p.include_apocrypha(false)
539
+ expect(p.parse("IZAIJA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'IZAIJA 1:1'")
540
+ expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'")
541
+ expect(p.parse("IZ 1:1").osis()).toEqual("Isa.1.1", "parsing: 'IZ 1:1'")
542
+ ;
543
+ return true;
544
+ });
545
+ });
546
+
547
+ describe("Localized book 2Sam (hr)", function() {
548
+ var p;
549
+ p = {};
550
+ beforeEach(function() {
551
+ p = new bcv_parser();
552
+ p.set_options({
553
+ book_alone_strategy: "ignore",
554
+ book_sequence_strategy: "ignore",
555
+ osis_compaction_strategy: "bc",
556
+ captive_end_digits_strategy: "delete"
557
+ });
558
+ return p.include_apocrypha(true);
559
+ });
560
+ return it("should handle book: 2Sam (hr)", function() {
561
+
562
+ expect(p.parse("Druga Samuelova knjiga 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Druga Samuelova knjiga 1:1'")
563
+ expect(p.parse("Druga knjiga o Samuelu 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Druga knjiga o Samuelu 1:1'")
564
+ expect(p.parse("Druga Samuelova 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Druga Samuelova 1:1'")
565
+ expect(p.parse("2.. Samuelova 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2.. Samuelova 1:1'")
566
+ expect(p.parse("II. Samuelova 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II. Samuelova 1:1'")
567
+ expect(p.parse("2. Samuelova 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Samuelova 1:1'")
568
+ expect(p.parse("II Samuelova 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II Samuelova 1:1'")
569
+ expect(p.parse("2 Samuelova 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Samuelova 1:1'")
570
+ expect(p.parse("2 Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Sam 1:1'")
571
+ expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'")
572
+ p.include_apocrypha(false)
573
+ expect(p.parse("DRUGA SAMUELOVA KNJIGA 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DRUGA SAMUELOVA KNJIGA 1:1'")
574
+ expect(p.parse("DRUGA KNJIGA O SAMUELU 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DRUGA KNJIGA O SAMUELU 1:1'")
575
+ expect(p.parse("DRUGA SAMUELOVA 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DRUGA SAMUELOVA 1:1'")
576
+ expect(p.parse("2.. SAMUELOVA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2.. SAMUELOVA 1:1'")
577
+ expect(p.parse("II. SAMUELOVA 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II. SAMUELOVA 1:1'")
578
+ expect(p.parse("2. SAMUELOVA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAMUELOVA 1:1'")
579
+ expect(p.parse("II SAMUELOVA 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II SAMUELOVA 1:1'")
580
+ expect(p.parse("2 SAMUELOVA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAMUELOVA 1:1'")
581
+ expect(p.parse("2 SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAM 1:1'")
582
+ expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'")
583
+ ;
584
+ return true;
585
+ });
586
+ });
587
+
588
+ describe("Localized book 1Sam (hr)", function() {
589
+ var p;
590
+ p = {};
591
+ beforeEach(function() {
592
+ p = new bcv_parser();
593
+ p.set_options({
594
+ book_alone_strategy: "ignore",
595
+ book_sequence_strategy: "ignore",
596
+ osis_compaction_strategy: "bc",
597
+ captive_end_digits_strategy: "delete"
598
+ });
599
+ return p.include_apocrypha(true);
600
+ });
601
+ return it("should handle book: 1Sam (hr)", function() {
602
+
603
+ expect(p.parse("Prva Samuelova knjiga 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Prva Samuelova knjiga 1:1'")
604
+ expect(p.parse("Prva knjiga o Samuelu 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Prva knjiga o Samuelu 1:1'")
605
+ expect(p.parse("Prva Samuelova 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Prva Samuelova 1:1'")
606
+ expect(p.parse("1.. Samuelova 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1.. Samuelova 1:1'")
607
+ expect(p.parse("1. Samuelova 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Samuelova 1:1'")
608
+ expect(p.parse("I. Samuelova 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I. Samuelova 1:1'")
609
+ expect(p.parse("1 Samuelova 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Samuelova 1:1'")
610
+ expect(p.parse("I Samuelova 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I Samuelova 1:1'")
611
+ expect(p.parse("1 Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sam 1:1'")
612
+ expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'")
613
+ p.include_apocrypha(false)
614
+ expect(p.parse("PRVA SAMUELOVA KNJIGA 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PRVA SAMUELOVA KNJIGA 1:1'")
615
+ expect(p.parse("PRVA KNJIGA O SAMUELU 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PRVA KNJIGA O SAMUELU 1:1'")
616
+ expect(p.parse("PRVA SAMUELOVA 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PRVA SAMUELOVA 1:1'")
617
+ expect(p.parse("1.. SAMUELOVA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1.. SAMUELOVA 1:1'")
618
+ expect(p.parse("1. SAMUELOVA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAMUELOVA 1:1'")
619
+ expect(p.parse("I. SAMUELOVA 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I. SAMUELOVA 1:1'")
620
+ expect(p.parse("1 SAMUELOVA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAMUELOVA 1:1'")
621
+ expect(p.parse("I SAMUELOVA 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I SAMUELOVA 1:1'")
622
+ expect(p.parse("1 SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAM 1:1'")
623
+ expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'")
624
+ ;
625
+ return true;
626
+ });
627
+ });
628
+
629
+ describe("Localized book 2Kgs (hr)", function() {
630
+ var p;
631
+ p = {};
632
+ beforeEach(function() {
633
+ p = new bcv_parser();
634
+ p.set_options({
635
+ book_alone_strategy: "ignore",
636
+ book_sequence_strategy: "ignore",
637
+ osis_compaction_strategy: "bc",
638
+ captive_end_digits_strategy: "delete"
639
+ });
640
+ return p.include_apocrypha(true);
641
+ });
642
+ return it("should handle book: 2Kgs (hr)", function() {
643
+
644
+ expect(p.parse("Druga knjiga o Kraljevima 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Druga knjiga o Kraljevima 1:1'")
645
+ expect(p.parse("Druga Kraljevima 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Druga Kraljevima 1:1'")
646
+ expect(p.parse("2.. Kraljevima 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2.. Kraljevima 1:1'")
647
+ expect(p.parse("II. Kraljevima 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II. Kraljevima 1:1'")
648
+ expect(p.parse("2. Kraljevima 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kraljevima 1:1'")
649
+ expect(p.parse("II Kraljevima 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II Kraljevima 1:1'")
650
+ expect(p.parse("2 Kraljevima 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kraljevima 1:1'")
651
+ expect(p.parse("2 Kr 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kr 1:1'")
652
+ expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'")
653
+ p.include_apocrypha(false)
654
+ expect(p.parse("DRUGA KNJIGA O KRALJEVIMA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DRUGA KNJIGA O KRALJEVIMA 1:1'")
655
+ expect(p.parse("DRUGA KRALJEVIMA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DRUGA KRALJEVIMA 1:1'")
656
+ expect(p.parse("2.. KRALJEVIMA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2.. KRALJEVIMA 1:1'")
657
+ expect(p.parse("II. KRALJEVIMA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II. KRALJEVIMA 1:1'")
658
+ expect(p.parse("2. KRALJEVIMA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KRALJEVIMA 1:1'")
659
+ expect(p.parse("II KRALJEVIMA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II KRALJEVIMA 1:1'")
660
+ expect(p.parse("2 KRALJEVIMA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KRALJEVIMA 1:1'")
661
+ expect(p.parse("2 KR 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KR 1:1'")
662
+ expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'")
663
+ ;
664
+ return true;
665
+ });
666
+ });
667
+
668
+ describe("Localized book 1Kgs (hr)", function() {
669
+ var p;
670
+ p = {};
671
+ beforeEach(function() {
672
+ p = new bcv_parser();
673
+ p.set_options({
674
+ book_alone_strategy: "ignore",
675
+ book_sequence_strategy: "ignore",
676
+ osis_compaction_strategy: "bc",
677
+ captive_end_digits_strategy: "delete"
678
+ });
679
+ return p.include_apocrypha(true);
680
+ });
681
+ return it("should handle book: 1Kgs (hr)", function() {
682
+
683
+ expect(p.parse("Prva knjiga o Kraljevima 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Prva knjiga o Kraljevima 1:1'")
684
+ expect(p.parse("Prva Kraljevima 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Prva Kraljevima 1:1'")
685
+ expect(p.parse("1.. Kraljevima 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1.. Kraljevima 1:1'")
686
+ expect(p.parse("1. Kraljevima 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Kraljevima 1:1'")
687
+ expect(p.parse("I. Kraljevima 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I. Kraljevima 1:1'")
688
+ expect(p.parse("1 Kraljevima 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Kraljevima 1:1'")
689
+ expect(p.parse("I Kraljevima 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I Kraljevima 1:1'")
690
+ expect(p.parse("1 Kr 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Kr 1:1'")
691
+ expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'")
692
+ p.include_apocrypha(false)
693
+ expect(p.parse("PRVA KNJIGA O KRALJEVIMA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PRVA KNJIGA O KRALJEVIMA 1:1'")
694
+ expect(p.parse("PRVA KRALJEVIMA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PRVA KRALJEVIMA 1:1'")
695
+ expect(p.parse("1.. KRALJEVIMA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1.. KRALJEVIMA 1:1'")
696
+ expect(p.parse("1. KRALJEVIMA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KRALJEVIMA 1:1'")
697
+ expect(p.parse("I. KRALJEVIMA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I. KRALJEVIMA 1:1'")
698
+ expect(p.parse("1 KRALJEVIMA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KRALJEVIMA 1:1'")
699
+ expect(p.parse("I KRALJEVIMA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I KRALJEVIMA 1:1'")
700
+ expect(p.parse("1 KR 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KR 1:1'")
701
+ expect(p.parse("1KGS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1KGS 1:1'")
702
+ ;
703
+ return true;
704
+ });
705
+ });
706
+
707
+ describe("Localized book 2Chr (hr)", function() {
708
+ var p;
709
+ p = {};
710
+ beforeEach(function() {
711
+ p = new bcv_parser();
712
+ p.set_options({
713
+ book_alone_strategy: "ignore",
714
+ book_sequence_strategy: "ignore",
715
+ osis_compaction_strategy: "bc",
716
+ captive_end_digits_strategy: "delete"
717
+ });
718
+ return p.include_apocrypha(true);
719
+ });
720
+ return it("should handle book: 2Chr (hr)", function() {
721
+
722
+ expect(p.parse("Druga knjiga Ljetopisa 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Druga knjiga Ljetopisa 1:1'")
723
+ expect(p.parse("Druga Ljetopisa 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Druga Ljetopisa 1:1'")
724
+ expect(p.parse("2.. Ljetopisa 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2.. Ljetopisa 1:1'")
725
+ expect(p.parse("II. Ljetopisa 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II. Ljetopisa 1:1'")
726
+ expect(p.parse("2. Ljetopisa 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Ljetopisa 1:1'")
727
+ expect(p.parse("II Ljetopisa 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II Ljetopisa 1:1'")
728
+ expect(p.parse("2 Ljetopisa 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Ljetopisa 1:1'")
729
+ expect(p.parse("2 Ljet 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Ljet 1:1'")
730
+ expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'")
731
+ p.include_apocrypha(false)
732
+ expect(p.parse("DRUGA KNJIGA LJETOPISA 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'DRUGA KNJIGA LJETOPISA 1:1'")
733
+ expect(p.parse("DRUGA LJETOPISA 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'DRUGA LJETOPISA 1:1'")
734
+ expect(p.parse("2.. LJETOPISA 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2.. LJETOPISA 1:1'")
735
+ expect(p.parse("II. LJETOPISA 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II. LJETOPISA 1:1'")
736
+ expect(p.parse("2. LJETOPISA 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. LJETOPISA 1:1'")
737
+ expect(p.parse("II LJETOPISA 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II LJETOPISA 1:1'")
738
+ expect(p.parse("2 LJETOPISA 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 LJETOPISA 1:1'")
739
+ expect(p.parse("2 LJET 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 LJET 1:1'")
740
+ expect(p.parse("2CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2CHR 1:1'")
741
+ ;
742
+ return true;
743
+ });
744
+ });
745
+
746
+ describe("Localized book 1Chr (hr)", function() {
747
+ var p;
748
+ p = {};
749
+ beforeEach(function() {
750
+ p = new bcv_parser();
751
+ p.set_options({
752
+ book_alone_strategy: "ignore",
753
+ book_sequence_strategy: "ignore",
754
+ osis_compaction_strategy: "bc",
755
+ captive_end_digits_strategy: "delete"
756
+ });
757
+ return p.include_apocrypha(true);
758
+ });
759
+ return it("should handle book: 1Chr (hr)", function() {
760
+
761
+ expect(p.parse("Prva knjiga Ljetopisa 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Prva knjiga Ljetopisa 1:1'")
762
+ expect(p.parse("Prva Ljetopisa 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Prva Ljetopisa 1:1'")
763
+ expect(p.parse("1.. Ljetopisa 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1.. Ljetopisa 1:1'")
764
+ expect(p.parse("1. Ljetopisa 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Ljetopisa 1:1'")
765
+ expect(p.parse("I. Ljetopisa 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I. Ljetopisa 1:1'")
766
+ expect(p.parse("1 Ljetopisa 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Ljetopisa 1:1'")
767
+ expect(p.parse("I Ljetopisa 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I Ljetopisa 1:1'")
768
+ expect(p.parse("1 Ljet 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Ljet 1:1'")
769
+ expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'")
770
+ p.include_apocrypha(false)
771
+ expect(p.parse("PRVA KNJIGA LJETOPISA 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PRVA KNJIGA LJETOPISA 1:1'")
772
+ expect(p.parse("PRVA LJETOPISA 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PRVA LJETOPISA 1:1'")
773
+ expect(p.parse("1.. LJETOPISA 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1.. LJETOPISA 1:1'")
774
+ expect(p.parse("1. LJETOPISA 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. LJETOPISA 1:1'")
775
+ expect(p.parse("I. LJETOPISA 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I. LJETOPISA 1:1'")
776
+ expect(p.parse("1 LJETOPISA 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 LJETOPISA 1:1'")
777
+ expect(p.parse("I LJETOPISA 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I LJETOPISA 1:1'")
778
+ expect(p.parse("1 LJET 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 LJET 1:1'")
779
+ expect(p.parse("1CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1CHR 1:1'")
780
+ ;
781
+ return true;
782
+ });
783
+ });
784
+
785
+ describe("Localized book Ezra (hr)", function() {
786
+ var p;
787
+ p = {};
788
+ beforeEach(function() {
789
+ p = new bcv_parser();
790
+ p.set_options({
791
+ book_alone_strategy: "ignore",
792
+ book_sequence_strategy: "ignore",
793
+ osis_compaction_strategy: "bc",
794
+ captive_end_digits_strategy: "delete"
795
+ });
796
+ return p.include_apocrypha(true);
797
+ });
798
+ return it("should handle book: Ezra (hr)", function() {
799
+
800
+ expect(p.parse("Knjiga Ezrina 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Knjiga Ezrina 1:1'")
801
+ expect(p.parse("Ezra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezra 1:1'")
802
+ expect(p.parse("Ezr 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezr 1:1'")
803
+ p.include_apocrypha(false)
804
+ expect(p.parse("KNJIGA EZRINA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'KNJIGA EZRINA 1:1'")
805
+ expect(p.parse("EZRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZRA 1:1'")
806
+ expect(p.parse("EZR 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZR 1:1'")
807
+ ;
808
+ return true;
809
+ });
810
+ });
811
+
812
+ describe("Localized book Neh (hr)", function() {
813
+ var p;
814
+ p = {};
815
+ beforeEach(function() {
816
+ p = new bcv_parser();
817
+ p.set_options({
818
+ book_alone_strategy: "ignore",
819
+ book_sequence_strategy: "ignore",
820
+ osis_compaction_strategy: "bc",
821
+ captive_end_digits_strategy: "delete"
822
+ });
823
+ return p.include_apocrypha(true);
824
+ });
825
+ return it("should handle book: Neh (hr)", function() {
826
+
827
+ expect(p.parse("Knjiga Nehemijina 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Knjiga Nehemijina 1:1'")
828
+ expect(p.parse("Nehemija 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Nehemija 1:1'")
829
+ expect(p.parse("Neh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Neh 1:1'")
830
+ p.include_apocrypha(false)
831
+ expect(p.parse("KNJIGA NEHEMIJINA 1:1").osis()).toEqual("Neh.1.1", "parsing: 'KNJIGA NEHEMIJINA 1:1'")
832
+ expect(p.parse("NEHEMIJA 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEHEMIJA 1:1'")
833
+ expect(p.parse("NEH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEH 1:1'")
834
+ ;
835
+ return true;
836
+ });
837
+ });
838
+
839
+ describe("Localized book GkEsth (hr)", function() {
840
+ var p;
841
+ p = {};
842
+ beforeEach(function() {
843
+ p = new bcv_parser();
844
+ p.set_options({
845
+ book_alone_strategy: "ignore",
846
+ book_sequence_strategy: "ignore",
847
+ osis_compaction_strategy: "bc",
848
+ captive_end_digits_strategy: "delete"
849
+ });
850
+ return p.include_apocrypha(true);
851
+ });
852
+ return it("should handle book: GkEsth (hr)", function() {
853
+
854
+ expect(p.parse("GkEsth 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'GkEsth 1:1'")
855
+ ;
856
+ return true;
857
+ });
858
+ });
859
+
860
+ describe("Localized book Esth (hr)", function() {
861
+ var p;
862
+ p = {};
863
+ beforeEach(function() {
864
+ p = new bcv_parser();
865
+ p.set_options({
866
+ book_alone_strategy: "ignore",
867
+ book_sequence_strategy: "ignore",
868
+ osis_compaction_strategy: "bc",
869
+ captive_end_digits_strategy: "delete"
870
+ });
871
+ return p.include_apocrypha(true);
872
+ });
873
+ return it("should handle book: Esth (hr)", function() {
874
+
875
+ expect(p.parse("Estera 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Estera 1:1'")
876
+ expect(p.parse("Esth 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esth 1:1'")
877
+ expect(p.parse("Est 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Est 1:1'")
878
+ p.include_apocrypha(false)
879
+ expect(p.parse("ESTERA 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTERA 1:1'")
880
+ expect(p.parse("ESTH 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTH 1:1'")
881
+ expect(p.parse("EST 1:1").osis()).toEqual("Esth.1.1", "parsing: 'EST 1:1'")
882
+ ;
883
+ return true;
884
+ });
885
+ });
886
+
887
+ describe("Localized book Job (hr)", function() {
888
+ var p;
889
+ p = {};
890
+ beforeEach(function() {
891
+ p = new bcv_parser();
892
+ p.set_options({
893
+ book_alone_strategy: "ignore",
894
+ book_sequence_strategy: "ignore",
895
+ osis_compaction_strategy: "bc",
896
+ captive_end_digits_strategy: "delete"
897
+ });
898
+ return p.include_apocrypha(true);
899
+ });
900
+ return it("should handle book: Job (hr)", function() {
901
+
902
+ expect(p.parse("Knjiga o Jobu 1:1").osis()).toEqual("Job.1.1", "parsing: 'Knjiga o Jobu 1:1'")
903
+ expect(p.parse("Job 1:1").osis()).toEqual("Job.1.1", "parsing: 'Job 1:1'")
904
+ p.include_apocrypha(false)
905
+ expect(p.parse("KNJIGA O JOBU 1:1").osis()).toEqual("Job.1.1", "parsing: 'KNJIGA O JOBU 1:1'")
906
+ expect(p.parse("JOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JOB 1:1'")
907
+ ;
908
+ return true;
909
+ });
910
+ });
911
+
912
+ describe("Localized book Ps (hr)", function() {
913
+ var p;
914
+ p = {};
915
+ beforeEach(function() {
916
+ p = new bcv_parser();
917
+ p.set_options({
918
+ book_alone_strategy: "ignore",
919
+ book_sequence_strategy: "ignore",
920
+ osis_compaction_strategy: "bc",
921
+ captive_end_digits_strategy: "delete"
922
+ });
923
+ return p.include_apocrypha(true);
924
+ });
925
+ return it("should handle book: Ps (hr)", function() {
926
+
927
+ expect(p.parse("Psalam 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psalam 1:1'")
928
+ expect(p.parse("Psalme 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psalme 1:1'")
929
+ expect(p.parse("Psalmi 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psalmi 1:1'")
930
+ expect(p.parse("Ps 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Ps 1:1'")
931
+ p.include_apocrypha(false)
932
+ expect(p.parse("PSALAM 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSALAM 1:1'")
933
+ expect(p.parse("PSALME 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSALME 1:1'")
934
+ expect(p.parse("PSALMI 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSALMI 1:1'")
935
+ expect(p.parse("PS 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PS 1:1'")
936
+ ;
937
+ return true;
938
+ });
939
+ });
940
+
941
+ describe("Localized book PrAzar (hr)", function() {
942
+ var p;
943
+ p = {};
944
+ beforeEach(function() {
945
+ p = new bcv_parser();
946
+ p.set_options({
947
+ book_alone_strategy: "ignore",
948
+ book_sequence_strategy: "ignore",
949
+ osis_compaction_strategy: "bc",
950
+ captive_end_digits_strategy: "delete"
951
+ });
952
+ return p.include_apocrypha(true);
953
+ });
954
+ return it("should handle book: PrAzar (hr)", function() {
955
+
956
+ expect(p.parse("PrAzar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'PrAzar 1:1'")
957
+ ;
958
+ return true;
959
+ });
960
+ });
961
+
962
+ describe("Localized book Prov (hr)", 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
+ return p.include_apocrypha(true);
974
+ });
975
+ return it("should handle book: Prov (hr)", function() {
976
+
977
+ expect(p.parse("Mudre izreke 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Mudre izreke 1:1'")
978
+ expect(p.parse("Poslovice 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Poslovice 1:1'")
979
+ expect(p.parse("Izreke 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Izreke 1:1'")
980
+ expect(p.parse("Prov 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prov 1:1'")
981
+ expect(p.parse("Izr 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Izr 1:1'")
982
+ p.include_apocrypha(false)
983
+ expect(p.parse("MUDRE IZREKE 1:1").osis()).toEqual("Prov.1.1", "parsing: 'MUDRE IZREKE 1:1'")
984
+ expect(p.parse("POSLOVICE 1:1").osis()).toEqual("Prov.1.1", "parsing: 'POSLOVICE 1:1'")
985
+ expect(p.parse("IZREKE 1:1").osis()).toEqual("Prov.1.1", "parsing: 'IZREKE 1:1'")
986
+ expect(p.parse("PROV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROV 1:1'")
987
+ expect(p.parse("IZR 1:1").osis()).toEqual("Prov.1.1", "parsing: 'IZR 1:1'")
988
+ ;
989
+ return true;
990
+ });
991
+ });
992
+
993
+ describe("Localized book Eccl (hr)", function() {
994
+ var p;
995
+ p = {};
996
+ beforeEach(function() {
997
+ p = new bcv_parser();
998
+ p.set_options({
999
+ book_alone_strategy: "ignore",
1000
+ book_sequence_strategy: "ignore",
1001
+ osis_compaction_strategy: "bc",
1002
+ captive_end_digits_strategy: "delete"
1003
+ });
1004
+ return p.include_apocrypha(true);
1005
+ });
1006
+ return it("should handle book: Eccl (hr)", function() {
1007
+
1008
+ expect(p.parse("Propovjednik 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Propovjednik 1:1'")
1009
+ expect(p.parse("Kohelet 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Kohelet 1:1'")
1010
+ expect(p.parse("Eccl 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eccl 1:1'")
1011
+ expect(p.parse("Prop 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Prop 1:1'")
1012
+ p.include_apocrypha(false)
1013
+ expect(p.parse("PROPOVJEDNIK 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'PROPOVJEDNIK 1:1'")
1014
+ expect(p.parse("KOHELET 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'KOHELET 1:1'")
1015
+ expect(p.parse("ECCL 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCL 1:1'")
1016
+ expect(p.parse("PROP 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'PROP 1:1'")
1017
+ ;
1018
+ return true;
1019
+ });
1020
+ });
1021
+
1022
+ describe("Localized book SgThree (hr)", function() {
1023
+ var p;
1024
+ p = {};
1025
+ beforeEach(function() {
1026
+ p = new bcv_parser();
1027
+ p.set_options({
1028
+ book_alone_strategy: "ignore",
1029
+ book_sequence_strategy: "ignore",
1030
+ osis_compaction_strategy: "bc",
1031
+ captive_end_digits_strategy: "delete"
1032
+ });
1033
+ return p.include_apocrypha(true);
1034
+ });
1035
+ return it("should handle book: SgThree (hr)", function() {
1036
+
1037
+ expect(p.parse("SgThree 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'SgThree 1:1'")
1038
+ ;
1039
+ return true;
1040
+ });
1041
+ });
1042
+
1043
+ describe("Localized book Song (hr)", function() {
1044
+ var p;
1045
+ p = {};
1046
+ beforeEach(function() {
1047
+ p = new bcv_parser();
1048
+ p.set_options({
1049
+ book_alone_strategy: "ignore",
1050
+ book_sequence_strategy: "ignore",
1051
+ osis_compaction_strategy: "bc",
1052
+ captive_end_digits_strategy: "delete"
1053
+ });
1054
+ return p.include_apocrypha(true);
1055
+ });
1056
+ return it("should handle book: Song (hr)", function() {
1057
+
1058
+ expect(p.parse("Pjesma nad pjesmama 1:1").osis()).toEqual("Song.1.1", "parsing: 'Pjesma nad pjesmama 1:1'")
1059
+ expect(p.parse("Song 1:1").osis()).toEqual("Song.1.1", "parsing: 'Song 1:1'")
1060
+ expect(p.parse("Pj 1:1").osis()).toEqual("Song.1.1", "parsing: 'Pj 1:1'")
1061
+ p.include_apocrypha(false)
1062
+ expect(p.parse("PJESMA NAD PJESMAMA 1:1").osis()).toEqual("Song.1.1", "parsing: 'PJESMA NAD PJESMAMA 1:1'")
1063
+ expect(p.parse("SONG 1:1").osis()).toEqual("Song.1.1", "parsing: 'SONG 1:1'")
1064
+ expect(p.parse("PJ 1:1").osis()).toEqual("Song.1.1", "parsing: 'PJ 1:1'")
1065
+ ;
1066
+ return true;
1067
+ });
1068
+ });
1069
+
1070
+ describe("Localized book Jer (hr)", function() {
1071
+ var p;
1072
+ p = {};
1073
+ beforeEach(function() {
1074
+ p = new bcv_parser();
1075
+ p.set_options({
1076
+ book_alone_strategy: "ignore",
1077
+ book_sequence_strategy: "ignore",
1078
+ osis_compaction_strategy: "bc",
1079
+ captive_end_digits_strategy: "delete"
1080
+ });
1081
+ return p.include_apocrypha(true);
1082
+ });
1083
+ return it("should handle book: Jer (hr)", function() {
1084
+
1085
+ expect(p.parse("Jeremija 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jeremija 1:1'")
1086
+ expect(p.parse("Jer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jer 1:1'")
1087
+ expect(p.parse("Jr 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jr 1:1'")
1088
+ p.include_apocrypha(false)
1089
+ expect(p.parse("JEREMIJA 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JEREMIJA 1:1'")
1090
+ expect(p.parse("JER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JER 1:1'")
1091
+ expect(p.parse("JR 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JR 1:1'")
1092
+ ;
1093
+ return true;
1094
+ });
1095
+ });
1096
+
1097
+ describe("Localized book Ezek (hr)", function() {
1098
+ var p;
1099
+ p = {};
1100
+ beforeEach(function() {
1101
+ p = new bcv_parser();
1102
+ p.set_options({
1103
+ book_alone_strategy: "ignore",
1104
+ book_sequence_strategy: "ignore",
1105
+ osis_compaction_strategy: "bc",
1106
+ captive_end_digits_strategy: "delete"
1107
+ });
1108
+ return p.include_apocrypha(true);
1109
+ });
1110
+ return it("should handle book: Ezek (hr)", function() {
1111
+
1112
+ expect(p.parse("Ezekiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezekiel 1:1'")
1113
+ expect(p.parse("Ezek 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezek 1:1'")
1114
+ expect(p.parse("Ez 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ez 1:1'")
1115
+ p.include_apocrypha(false)
1116
+ expect(p.parse("EZEKIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEKIEL 1:1'")
1117
+ expect(p.parse("EZEK 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEK 1:1'")
1118
+ expect(p.parse("EZ 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZ 1:1'")
1119
+ ;
1120
+ return true;
1121
+ });
1122
+ });
1123
+
1124
+ describe("Localized book Dan (hr)", function() {
1125
+ var p;
1126
+ p = {};
1127
+ beforeEach(function() {
1128
+ p = new bcv_parser();
1129
+ p.set_options({
1130
+ book_alone_strategy: "ignore",
1131
+ book_sequence_strategy: "ignore",
1132
+ osis_compaction_strategy: "bc",
1133
+ captive_end_digits_strategy: "delete"
1134
+ });
1135
+ return p.include_apocrypha(true);
1136
+ });
1137
+ return it("should handle book: Dan (hr)", function() {
1138
+
1139
+ expect(p.parse("Daniel 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Daniel 1:1'")
1140
+ expect(p.parse("Dan 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dan 1:1'")
1141
+ expect(p.parse("Dn 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dn 1:1'")
1142
+ p.include_apocrypha(false)
1143
+ expect(p.parse("DANIEL 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DANIEL 1:1'")
1144
+ expect(p.parse("DAN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DAN 1:1'")
1145
+ expect(p.parse("DN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DN 1:1'")
1146
+ ;
1147
+ return true;
1148
+ });
1149
+ });
1150
+
1151
+ describe("Localized book Hos (hr)", function() {
1152
+ var p;
1153
+ p = {};
1154
+ beforeEach(function() {
1155
+ p = new bcv_parser();
1156
+ p.set_options({
1157
+ book_alone_strategy: "ignore",
1158
+ book_sequence_strategy: "ignore",
1159
+ osis_compaction_strategy: "bc",
1160
+ captive_end_digits_strategy: "delete"
1161
+ });
1162
+ return p.include_apocrypha(true);
1163
+ });
1164
+ return it("should handle book: Hos (hr)", function() {
1165
+
1166
+ expect(p.parse("Hosea 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hosea 1:1'")
1167
+ expect(p.parse("Hošea 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hošea 1:1'")
1168
+ expect(p.parse("Hos 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hos 1:1'")
1169
+ expect(p.parse("Hoš 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hoš 1:1'")
1170
+ p.include_apocrypha(false)
1171
+ expect(p.parse("HOSEA 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOSEA 1:1'")
1172
+ expect(p.parse("HOŠEA 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOŠEA 1:1'")
1173
+ expect(p.parse("HOS 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOS 1:1'")
1174
+ expect(p.parse("HOŠ 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOŠ 1:1'")
1175
+ ;
1176
+ return true;
1177
+ });
1178
+ });
1179
+
1180
+ describe("Localized book Joel (hr)", function() {
1181
+ var p;
1182
+ p = {};
1183
+ beforeEach(function() {
1184
+ p = new bcv_parser();
1185
+ p.set_options({
1186
+ book_alone_strategy: "ignore",
1187
+ book_sequence_strategy: "ignore",
1188
+ osis_compaction_strategy: "bc",
1189
+ captive_end_digits_strategy: "delete"
1190
+ });
1191
+ return p.include_apocrypha(true);
1192
+ });
1193
+ return it("should handle book: Joel (hr)", function() {
1194
+
1195
+ expect(p.parse("Joel 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joel 1:1'")
1196
+ expect(p.parse("Jl 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Jl 1:1'")
1197
+ p.include_apocrypha(false)
1198
+ expect(p.parse("JOEL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOEL 1:1'")
1199
+ expect(p.parse("JL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JL 1:1'")
1200
+ ;
1201
+ return true;
1202
+ });
1203
+ });
1204
+
1205
+ describe("Localized book Amos (hr)", function() {
1206
+ var p;
1207
+ p = {};
1208
+ beforeEach(function() {
1209
+ p = new bcv_parser();
1210
+ p.set_options({
1211
+ book_alone_strategy: "ignore",
1212
+ book_sequence_strategy: "ignore",
1213
+ osis_compaction_strategy: "bc",
1214
+ captive_end_digits_strategy: "delete"
1215
+ });
1216
+ return p.include_apocrypha(true);
1217
+ });
1218
+ return it("should handle book: Amos (hr)", function() {
1219
+
1220
+ expect(p.parse("Amos 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amos 1:1'")
1221
+ expect(p.parse("Am 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Am 1:1'")
1222
+ p.include_apocrypha(false)
1223
+ expect(p.parse("AMOS 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMOS 1:1'")
1224
+ expect(p.parse("AM 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AM 1:1'")
1225
+ ;
1226
+ return true;
1227
+ });
1228
+ });
1229
+
1230
+ describe("Localized book Obad (hr)", function() {
1231
+ var p;
1232
+ p = {};
1233
+ beforeEach(function() {
1234
+ p = new bcv_parser();
1235
+ p.set_options({
1236
+ book_alone_strategy: "ignore",
1237
+ book_sequence_strategy: "ignore",
1238
+ osis_compaction_strategy: "bc",
1239
+ captive_end_digits_strategy: "delete"
1240
+ });
1241
+ return p.include_apocrypha(true);
1242
+ });
1243
+ return it("should handle book: Obad (hr)", function() {
1244
+
1245
+ expect(p.parse("Obadija 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obadija 1:1'")
1246
+ expect(p.parse("Obad 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obad 1:1'")
1247
+ expect(p.parse("Ob 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Ob 1:1'")
1248
+ p.include_apocrypha(false)
1249
+ expect(p.parse("OBADIJA 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBADIJA 1:1'")
1250
+ expect(p.parse("OBAD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBAD 1:1'")
1251
+ expect(p.parse("OB 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OB 1:1'")
1252
+ ;
1253
+ return true;
1254
+ });
1255
+ });
1256
+
1257
+ describe("Localized book Jonah (hr)", function() {
1258
+ var p;
1259
+ p = {};
1260
+ beforeEach(function() {
1261
+ p = new bcv_parser();
1262
+ p.set_options({
1263
+ book_alone_strategy: "ignore",
1264
+ book_sequence_strategy: "ignore",
1265
+ osis_compaction_strategy: "bc",
1266
+ captive_end_digits_strategy: "delete"
1267
+ });
1268
+ return p.include_apocrypha(true);
1269
+ });
1270
+ return it("should handle book: Jonah (hr)", function() {
1271
+
1272
+ expect(p.parse("Jonah 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonah 1:1'")
1273
+ expect(p.parse("Jona 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jona 1:1'")
1274
+ expect(p.parse("Jon 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jon 1:1'")
1275
+ p.include_apocrypha(false)
1276
+ expect(p.parse("JONAH 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAH 1:1'")
1277
+ expect(p.parse("JONA 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONA 1:1'")
1278
+ expect(p.parse("JON 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JON 1:1'")
1279
+ ;
1280
+ return true;
1281
+ });
1282
+ });
1283
+
1284
+ describe("Localized book Mic (hr)", function() {
1285
+ var p;
1286
+ p = {};
1287
+ beforeEach(function() {
1288
+ p = new bcv_parser();
1289
+ p.set_options({
1290
+ book_alone_strategy: "ignore",
1291
+ book_sequence_strategy: "ignore",
1292
+ osis_compaction_strategy: "bc",
1293
+ captive_end_digits_strategy: "delete"
1294
+ });
1295
+ return p.include_apocrypha(true);
1296
+ });
1297
+ return it("should handle book: Mic (hr)", function() {
1298
+
1299
+ expect(p.parse("Mihej 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mihej 1:1'")
1300
+ expect(p.parse("Mic 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mic 1:1'")
1301
+ expect(p.parse("Mih 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mih 1:1'")
1302
+ p.include_apocrypha(false)
1303
+ expect(p.parse("MIHEJ 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIHEJ 1:1'")
1304
+ expect(p.parse("MIC 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIC 1:1'")
1305
+ expect(p.parse("MIH 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIH 1:1'")
1306
+ ;
1307
+ return true;
1308
+ });
1309
+ });
1310
+
1311
+ describe("Localized book Nah (hr)", function() {
1312
+ var p;
1313
+ p = {};
1314
+ beforeEach(function() {
1315
+ p = new bcv_parser();
1316
+ p.set_options({
1317
+ book_alone_strategy: "ignore",
1318
+ book_sequence_strategy: "ignore",
1319
+ osis_compaction_strategy: "bc",
1320
+ captive_end_digits_strategy: "delete"
1321
+ });
1322
+ return p.include_apocrypha(true);
1323
+ });
1324
+ return it("should handle book: Nah (hr)", function() {
1325
+
1326
+ expect(p.parse("Nahum 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nahum 1:1'")
1327
+ expect(p.parse("Nah 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nah 1:1'")
1328
+ p.include_apocrypha(false)
1329
+ expect(p.parse("NAHUM 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAHUM 1:1'")
1330
+ expect(p.parse("NAH 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAH 1:1'")
1331
+ ;
1332
+ return true;
1333
+ });
1334
+ });
1335
+
1336
+ describe("Localized book Hab (hr)", function() {
1337
+ var p;
1338
+ p = {};
1339
+ beforeEach(function() {
1340
+ p = new bcv_parser();
1341
+ p.set_options({
1342
+ book_alone_strategy: "ignore",
1343
+ book_sequence_strategy: "ignore",
1344
+ osis_compaction_strategy: "bc",
1345
+ captive_end_digits_strategy: "delete"
1346
+ });
1347
+ return p.include_apocrypha(true);
1348
+ });
1349
+ return it("should handle book: Hab (hr)", function() {
1350
+
1351
+ expect(p.parse("Habakuk 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habakuk 1:1'")
1352
+ expect(p.parse("Hab 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Hab 1:1'")
1353
+ p.include_apocrypha(false)
1354
+ expect(p.parse("HABAKUK 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAKUK 1:1'")
1355
+ expect(p.parse("HAB 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HAB 1:1'")
1356
+ ;
1357
+ return true;
1358
+ });
1359
+ });
1360
+
1361
+ describe("Localized book Zeph (hr)", function() {
1362
+ var p;
1363
+ p = {};
1364
+ beforeEach(function() {
1365
+ p = new bcv_parser();
1366
+ p.set_options({
1367
+ book_alone_strategy: "ignore",
1368
+ book_sequence_strategy: "ignore",
1369
+ osis_compaction_strategy: "bc",
1370
+ captive_end_digits_strategy: "delete"
1371
+ });
1372
+ return p.include_apocrypha(true);
1373
+ });
1374
+ return it("should handle book: Zeph (hr)", function() {
1375
+
1376
+ expect(p.parse("Sefanija 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sefanija 1:1'")
1377
+ expect(p.parse("Sofonije 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sofonije 1:1'")
1378
+ expect(p.parse("Zeph 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zeph 1:1'")
1379
+ expect(p.parse("Sef 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sef 1:1'")
1380
+ p.include_apocrypha(false)
1381
+ expect(p.parse("SEFANIJA 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SEFANIJA 1:1'")
1382
+ expect(p.parse("SOFONIJE 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SOFONIJE 1:1'")
1383
+ expect(p.parse("ZEPH 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEPH 1:1'")
1384
+ expect(p.parse("SEF 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SEF 1:1'")
1385
+ ;
1386
+ return true;
1387
+ });
1388
+ });
1389
+
1390
+ describe("Localized book Hag (hr)", function() {
1391
+ var p;
1392
+ p = {};
1393
+ beforeEach(function() {
1394
+ p = new bcv_parser();
1395
+ p.set_options({
1396
+ book_alone_strategy: "ignore",
1397
+ book_sequence_strategy: "ignore",
1398
+ osis_compaction_strategy: "bc",
1399
+ captive_end_digits_strategy: "delete"
1400
+ });
1401
+ return p.include_apocrypha(true);
1402
+ });
1403
+ return it("should handle book: Hag (hr)", function() {
1404
+
1405
+ expect(p.parse("Hagaj 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hagaj 1:1'")
1406
+ expect(p.parse("Hagej 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hagej 1:1'")
1407
+ expect(p.parse("Agej 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Agej 1:1'")
1408
+ expect(p.parse("Hag 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hag 1:1'")
1409
+ p.include_apocrypha(false)
1410
+ expect(p.parse("HAGAJ 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAGAJ 1:1'")
1411
+ expect(p.parse("HAGEJ 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAGEJ 1:1'")
1412
+ expect(p.parse("AGEJ 1:1").osis()).toEqual("Hag.1.1", "parsing: 'AGEJ 1:1'")
1413
+ expect(p.parse("HAG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAG 1:1'")
1414
+ ;
1415
+ return true;
1416
+ });
1417
+ });
1418
+
1419
+ describe("Localized book Zech (hr)", function() {
1420
+ var p;
1421
+ p = {};
1422
+ beforeEach(function() {
1423
+ p = new bcv_parser();
1424
+ p.set_options({
1425
+ book_alone_strategy: "ignore",
1426
+ book_sequence_strategy: "ignore",
1427
+ osis_compaction_strategy: "bc",
1428
+ captive_end_digits_strategy: "delete"
1429
+ });
1430
+ return p.include_apocrypha(true);
1431
+ });
1432
+ return it("should handle book: Zech (hr)", function() {
1433
+
1434
+ expect(p.parse("Zaharija 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zaharija 1:1'")
1435
+ expect(p.parse("Zech 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zech 1:1'")
1436
+ expect(p.parse("Zah 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zah 1:1'")
1437
+ p.include_apocrypha(false)
1438
+ expect(p.parse("ZAHARIJA 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZAHARIJA 1:1'")
1439
+ expect(p.parse("ZECH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZECH 1:1'")
1440
+ expect(p.parse("ZAH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZAH 1:1'")
1441
+ ;
1442
+ return true;
1443
+ });
1444
+ });
1445
+
1446
+ describe("Localized book Mal (hr)", function() {
1447
+ var p;
1448
+ p = {};
1449
+ beforeEach(function() {
1450
+ p = new bcv_parser();
1451
+ p.set_options({
1452
+ book_alone_strategy: "ignore",
1453
+ book_sequence_strategy: "ignore",
1454
+ osis_compaction_strategy: "bc",
1455
+ captive_end_digits_strategy: "delete"
1456
+ });
1457
+ return p.include_apocrypha(true);
1458
+ });
1459
+ return it("should handle book: Mal (hr)", function() {
1460
+
1461
+ expect(p.parse("Malahija 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malahija 1:1'")
1462
+ expect(p.parse("Mal 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Mal 1:1'")
1463
+ p.include_apocrypha(false)
1464
+ expect(p.parse("MALAHIJA 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALAHIJA 1:1'")
1465
+ expect(p.parse("MAL 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MAL 1:1'")
1466
+ ;
1467
+ return true;
1468
+ });
1469
+ });
1470
+
1471
+ describe("Localized book Matt (hr)", function() {
1472
+ var p;
1473
+ p = {};
1474
+ beforeEach(function() {
1475
+ p = new bcv_parser();
1476
+ p.set_options({
1477
+ book_alone_strategy: "ignore",
1478
+ book_sequence_strategy: "ignore",
1479
+ osis_compaction_strategy: "bc",
1480
+ captive_end_digits_strategy: "delete"
1481
+ });
1482
+ return p.include_apocrypha(true);
1483
+ });
1484
+ return it("should handle book: Matt (hr)", function() {
1485
+
1486
+ expect(p.parse("Jevanđelje po Mateju 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Jevanđelje po Mateju 1:1'")
1487
+ expect(p.parse("Evanðelje po Mateju 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Evanðelje po Mateju 1:1'")
1488
+ expect(p.parse("Evanđelje po Mateju 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Evanđelje po Mateju 1:1'")
1489
+ expect(p.parse("Matej 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matej 1:1'")
1490
+ expect(p.parse("Matt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matt 1:1'")
1491
+ expect(p.parse("Mt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Mt 1:1'")
1492
+ p.include_apocrypha(false)
1493
+ expect(p.parse("JEVANĐELJE PO MATEJU 1:1").osis()).toEqual("Matt.1.1", "parsing: 'JEVANĐELJE PO MATEJU 1:1'")
1494
+ expect(p.parse("EVANÐELJE PO MATEJU 1:1").osis()).toEqual("Matt.1.1", "parsing: 'EVANÐELJE PO MATEJU 1:1'")
1495
+ expect(p.parse("EVANĐELJE PO MATEJU 1:1").osis()).toEqual("Matt.1.1", "parsing: 'EVANĐELJE PO MATEJU 1:1'")
1496
+ expect(p.parse("MATEJ 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATEJ 1:1'")
1497
+ expect(p.parse("MATT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATT 1:1'")
1498
+ expect(p.parse("MT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MT 1:1'")
1499
+ ;
1500
+ return true;
1501
+ });
1502
+ });
1503
+
1504
+ describe("Localized book Mark (hr)", function() {
1505
+ var p;
1506
+ p = {};
1507
+ beforeEach(function() {
1508
+ p = new bcv_parser();
1509
+ p.set_options({
1510
+ book_alone_strategy: "ignore",
1511
+ book_sequence_strategy: "ignore",
1512
+ osis_compaction_strategy: "bc",
1513
+ captive_end_digits_strategy: "delete"
1514
+ });
1515
+ return p.include_apocrypha(true);
1516
+ });
1517
+ return it("should handle book: Mark (hr)", function() {
1518
+
1519
+ expect(p.parse("Jevanđelje po Marku 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Jevanđelje po Marku 1:1'")
1520
+ expect(p.parse("Evanðelje po Marku 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Evanðelje po Marku 1:1'")
1521
+ expect(p.parse("Evanđelje po Marku 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Evanđelje po Marku 1:1'")
1522
+ expect(p.parse("Marko 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Marko 1:1'")
1523
+ expect(p.parse("Mark 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mark 1:1'")
1524
+ expect(p.parse("Mk 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mk 1:1'")
1525
+ p.include_apocrypha(false)
1526
+ expect(p.parse("JEVANĐELJE PO MARKU 1:1").osis()).toEqual("Mark.1.1", "parsing: 'JEVANĐELJE PO MARKU 1:1'")
1527
+ expect(p.parse("EVANÐELJE PO MARKU 1:1").osis()).toEqual("Mark.1.1", "parsing: 'EVANÐELJE PO MARKU 1:1'")
1528
+ expect(p.parse("EVANĐELJE PO MARKU 1:1").osis()).toEqual("Mark.1.1", "parsing: 'EVANĐELJE PO MARKU 1:1'")
1529
+ expect(p.parse("MARKO 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARKO 1:1'")
1530
+ expect(p.parse("MARK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARK 1:1'")
1531
+ expect(p.parse("MK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MK 1:1'")
1532
+ ;
1533
+ return true;
1534
+ });
1535
+ });
1536
+
1537
+ describe("Localized book Luke (hr)", function() {
1538
+ var p;
1539
+ p = {};
1540
+ beforeEach(function() {
1541
+ p = new bcv_parser();
1542
+ p.set_options({
1543
+ book_alone_strategy: "ignore",
1544
+ book_sequence_strategy: "ignore",
1545
+ osis_compaction_strategy: "bc",
1546
+ captive_end_digits_strategy: "delete"
1547
+ });
1548
+ return p.include_apocrypha(true);
1549
+ });
1550
+ return it("should handle book: Luke (hr)", function() {
1551
+
1552
+ expect(p.parse("Jevanđelje po Luki 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Jevanđelje po Luki 1:1'")
1553
+ expect(p.parse("Evanðelje po Luki 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Evanðelje po Luki 1:1'")
1554
+ expect(p.parse("Evanđelje po Luki 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Evanđelje po Luki 1:1'")
1555
+ expect(p.parse("Luka 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luka 1:1'")
1556
+ expect(p.parse("Luke 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luke 1:1'")
1557
+ expect(p.parse("Lk 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Lk 1:1'")
1558
+ p.include_apocrypha(false)
1559
+ expect(p.parse("JEVANĐELJE PO LUKI 1:1").osis()).toEqual("Luke.1.1", "parsing: 'JEVANĐELJE PO LUKI 1:1'")
1560
+ expect(p.parse("EVANÐELJE PO LUKI 1:1").osis()).toEqual("Luke.1.1", "parsing: 'EVANÐELJE PO LUKI 1:1'")
1561
+ expect(p.parse("EVANĐELJE PO LUKI 1:1").osis()).toEqual("Luke.1.1", "parsing: 'EVANĐELJE PO LUKI 1:1'")
1562
+ expect(p.parse("LUKA 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKA 1:1'")
1563
+ expect(p.parse("LUKE 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKE 1:1'")
1564
+ expect(p.parse("LK 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LK 1:1'")
1565
+ ;
1566
+ return true;
1567
+ });
1568
+ });
1569
+
1570
+ describe("Localized book 1John (hr)", function() {
1571
+ var p;
1572
+ p = {};
1573
+ beforeEach(function() {
1574
+ p = new bcv_parser();
1575
+ p.set_options({
1576
+ book_alone_strategy: "ignore",
1577
+ book_sequence_strategy: "ignore",
1578
+ osis_compaction_strategy: "bc",
1579
+ captive_end_digits_strategy: "delete"
1580
+ });
1581
+ return p.include_apocrypha(true);
1582
+ });
1583
+ return it("should handle book: 1John (hr)", function() {
1584
+
1585
+ expect(p.parse("Prva Ivanova Poslanica 1:1").osis()).toEqual("1John.1.1", "parsing: 'Prva Ivanova Poslanica 1:1'")
1586
+ expect(p.parse("Prva Ivanova poslanica 1:1").osis()).toEqual("1John.1.1", "parsing: 'Prva Ivanova poslanica 1:1'")
1587
+ expect(p.parse("1.. Ivanova Poslanica 1:1").osis()).toEqual("1John.1.1", "parsing: '1.. Ivanova Poslanica 1:1'")
1588
+ expect(p.parse("1. Ivanova Poslanica 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Ivanova Poslanica 1:1'")
1589
+ expect(p.parse("I. Ivanova Poslanica 1:1").osis()).toEqual("1John.1.1", "parsing: 'I. Ivanova Poslanica 1:1'")
1590
+ expect(p.parse("1 Ivanova Poslanica 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Ivanova Poslanica 1:1'")
1591
+ expect(p.parse("I Ivanova Poslanica 1:1").osis()).toEqual("1John.1.1", "parsing: 'I Ivanova Poslanica 1:1'")
1592
+ expect(p.parse("Prva Ivanova 1:1").osis()).toEqual("1John.1.1", "parsing: 'Prva Ivanova 1:1'")
1593
+ expect(p.parse("1.. Ivanova 1:1").osis()).toEqual("1John.1.1", "parsing: '1.. Ivanova 1:1'")
1594
+ expect(p.parse("1. Ivanova 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Ivanova 1:1'")
1595
+ expect(p.parse("I. Ivanova 1:1").osis()).toEqual("1John.1.1", "parsing: 'I. Ivanova 1:1'")
1596
+ expect(p.parse("1 Ivanova 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Ivanova 1:1'")
1597
+ expect(p.parse("I Ivanova 1:1").osis()).toEqual("1John.1.1", "parsing: 'I Ivanova 1:1'")
1598
+ expect(p.parse("1John 1:1").osis()).toEqual("1John.1.1", "parsing: '1John 1:1'")
1599
+ expect(p.parse("1 Iv 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Iv 1:1'")
1600
+ p.include_apocrypha(false)
1601
+ expect(p.parse("PRVA IVANOVA POSLANICA 1:1").osis()).toEqual("1John.1.1", "parsing: 'PRVA IVANOVA POSLANICA 1:1'")
1602
+ expect(p.parse("PRVA IVANOVA POSLANICA 1:1").osis()).toEqual("1John.1.1", "parsing: 'PRVA IVANOVA POSLANICA 1:1'")
1603
+ expect(p.parse("1.. IVANOVA POSLANICA 1:1").osis()).toEqual("1John.1.1", "parsing: '1.. IVANOVA POSLANICA 1:1'")
1604
+ expect(p.parse("1. IVANOVA POSLANICA 1:1").osis()).toEqual("1John.1.1", "parsing: '1. IVANOVA POSLANICA 1:1'")
1605
+ expect(p.parse("I. IVANOVA POSLANICA 1:1").osis()).toEqual("1John.1.1", "parsing: 'I. IVANOVA POSLANICA 1:1'")
1606
+ expect(p.parse("1 IVANOVA POSLANICA 1:1").osis()).toEqual("1John.1.1", "parsing: '1 IVANOVA POSLANICA 1:1'")
1607
+ expect(p.parse("I IVANOVA POSLANICA 1:1").osis()).toEqual("1John.1.1", "parsing: 'I IVANOVA POSLANICA 1:1'")
1608
+ expect(p.parse("PRVA IVANOVA 1:1").osis()).toEqual("1John.1.1", "parsing: 'PRVA IVANOVA 1:1'")
1609
+ expect(p.parse("1.. IVANOVA 1:1").osis()).toEqual("1John.1.1", "parsing: '1.. IVANOVA 1:1'")
1610
+ expect(p.parse("1. IVANOVA 1:1").osis()).toEqual("1John.1.1", "parsing: '1. IVANOVA 1:1'")
1611
+ expect(p.parse("I. IVANOVA 1:1").osis()).toEqual("1John.1.1", "parsing: 'I. IVANOVA 1:1'")
1612
+ expect(p.parse("1 IVANOVA 1:1").osis()).toEqual("1John.1.1", "parsing: '1 IVANOVA 1:1'")
1613
+ expect(p.parse("I IVANOVA 1:1").osis()).toEqual("1John.1.1", "parsing: 'I IVANOVA 1:1'")
1614
+ expect(p.parse("1JOHN 1:1").osis()).toEqual("1John.1.1", "parsing: '1JOHN 1:1'")
1615
+ expect(p.parse("1 IV 1:1").osis()).toEqual("1John.1.1", "parsing: '1 IV 1:1'")
1616
+ ;
1617
+ return true;
1618
+ });
1619
+ });
1620
+
1621
+ describe("Localized book 2John (hr)", function() {
1622
+ var p;
1623
+ p = {};
1624
+ beforeEach(function() {
1625
+ p = new bcv_parser();
1626
+ p.set_options({
1627
+ book_alone_strategy: "ignore",
1628
+ book_sequence_strategy: "ignore",
1629
+ osis_compaction_strategy: "bc",
1630
+ captive_end_digits_strategy: "delete"
1631
+ });
1632
+ return p.include_apocrypha(true);
1633
+ });
1634
+ return it("should handle book: 2John (hr)", function() {
1635
+
1636
+ expect(p.parse("Druga Ivanova Poslanica 1:1").osis()).toEqual("2John.1.1", "parsing: 'Druga Ivanova Poslanica 1:1'")
1637
+ expect(p.parse("Druga Ivanova poslanica 1:1").osis()).toEqual("2John.1.1", "parsing: 'Druga Ivanova poslanica 1:1'")
1638
+ expect(p.parse("2.. Ivanova Poslanica 1:1").osis()).toEqual("2John.1.1", "parsing: '2.. Ivanova Poslanica 1:1'")
1639
+ expect(p.parse("II. Ivanova Poslanica 1:1").osis()).toEqual("2John.1.1", "parsing: 'II. Ivanova Poslanica 1:1'")
1640
+ expect(p.parse("2. Ivanova Poslanica 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Ivanova Poslanica 1:1'")
1641
+ expect(p.parse("II Ivanova Poslanica 1:1").osis()).toEqual("2John.1.1", "parsing: 'II Ivanova Poslanica 1:1'")
1642
+ expect(p.parse("2 Ivanova Poslanica 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Ivanova Poslanica 1:1'")
1643
+ expect(p.parse("Druga Ivanova 1:1").osis()).toEqual("2John.1.1", "parsing: 'Druga Ivanova 1:1'")
1644
+ expect(p.parse("2.. Ivanova 1:1").osis()).toEqual("2John.1.1", "parsing: '2.. Ivanova 1:1'")
1645
+ expect(p.parse("II. Ivanova 1:1").osis()).toEqual("2John.1.1", "parsing: 'II. Ivanova 1:1'")
1646
+ expect(p.parse("2. Ivanova 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Ivanova 1:1'")
1647
+ expect(p.parse("II Ivanova 1:1").osis()).toEqual("2John.1.1", "parsing: 'II Ivanova 1:1'")
1648
+ expect(p.parse("2 Ivanova 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Ivanova 1:1'")
1649
+ expect(p.parse("2John 1:1").osis()).toEqual("2John.1.1", "parsing: '2John 1:1'")
1650
+ expect(p.parse("2 Iv 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Iv 1:1'")
1651
+ p.include_apocrypha(false)
1652
+ expect(p.parse("DRUGA IVANOVA POSLANICA 1:1").osis()).toEqual("2John.1.1", "parsing: 'DRUGA IVANOVA POSLANICA 1:1'")
1653
+ expect(p.parse("DRUGA IVANOVA POSLANICA 1:1").osis()).toEqual("2John.1.1", "parsing: 'DRUGA IVANOVA POSLANICA 1:1'")
1654
+ expect(p.parse("2.. IVANOVA POSLANICA 1:1").osis()).toEqual("2John.1.1", "parsing: '2.. IVANOVA POSLANICA 1:1'")
1655
+ expect(p.parse("II. IVANOVA POSLANICA 1:1").osis()).toEqual("2John.1.1", "parsing: 'II. IVANOVA POSLANICA 1:1'")
1656
+ expect(p.parse("2. IVANOVA POSLANICA 1:1").osis()).toEqual("2John.1.1", "parsing: '2. IVANOVA POSLANICA 1:1'")
1657
+ expect(p.parse("II IVANOVA POSLANICA 1:1").osis()).toEqual("2John.1.1", "parsing: 'II IVANOVA POSLANICA 1:1'")
1658
+ expect(p.parse("2 IVANOVA POSLANICA 1:1").osis()).toEqual("2John.1.1", "parsing: '2 IVANOVA POSLANICA 1:1'")
1659
+ expect(p.parse("DRUGA IVANOVA 1:1").osis()).toEqual("2John.1.1", "parsing: 'DRUGA IVANOVA 1:1'")
1660
+ expect(p.parse("2.. IVANOVA 1:1").osis()).toEqual("2John.1.1", "parsing: '2.. IVANOVA 1:1'")
1661
+ expect(p.parse("II. IVANOVA 1:1").osis()).toEqual("2John.1.1", "parsing: 'II. IVANOVA 1:1'")
1662
+ expect(p.parse("2. IVANOVA 1:1").osis()).toEqual("2John.1.1", "parsing: '2. IVANOVA 1:1'")
1663
+ expect(p.parse("II IVANOVA 1:1").osis()).toEqual("2John.1.1", "parsing: 'II IVANOVA 1:1'")
1664
+ expect(p.parse("2 IVANOVA 1:1").osis()).toEqual("2John.1.1", "parsing: '2 IVANOVA 1:1'")
1665
+ expect(p.parse("2JOHN 1:1").osis()).toEqual("2John.1.1", "parsing: '2JOHN 1:1'")
1666
+ expect(p.parse("2 IV 1:1").osis()).toEqual("2John.1.1", "parsing: '2 IV 1:1'")
1667
+ ;
1668
+ return true;
1669
+ });
1670
+ });
1671
+
1672
+ describe("Localized book 3John (hr)", function() {
1673
+ var p;
1674
+ p = {};
1675
+ beforeEach(function() {
1676
+ p = new bcv_parser();
1677
+ p.set_options({
1678
+ book_alone_strategy: "ignore",
1679
+ book_sequence_strategy: "ignore",
1680
+ osis_compaction_strategy: "bc",
1681
+ captive_end_digits_strategy: "delete"
1682
+ });
1683
+ return p.include_apocrypha(true);
1684
+ });
1685
+ return it("should handle book: 3John (hr)", function() {
1686
+
1687
+ expect(p.parse("Treca Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treca Ivanova Poslanica 1:1'")
1688
+ expect(p.parse("Treca Ivanova poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treca Ivanova poslanica 1:1'")
1689
+ expect(p.parse("Treæa Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treæa Ivanova Poslanica 1:1'")
1690
+ expect(p.parse("Treæa Ivanova poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treæa Ivanova poslanica 1:1'")
1691
+ expect(p.parse("Treća Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treća Ivanova Poslanica 1:1'")
1692
+ expect(p.parse("Treća Ivanova poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treća Ivanova poslanica 1:1'")
1693
+ expect(p.parse("III. Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'III. Ivanova Poslanica 1:1'")
1694
+ expect(p.parse("3.. Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: '3.. Ivanova Poslanica 1:1'")
1695
+ expect(p.parse("III Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: 'III Ivanova Poslanica 1:1'")
1696
+ expect(p.parse("3. Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Ivanova Poslanica 1:1'")
1697
+ expect(p.parse("3 Ivanova Poslanica 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Ivanova Poslanica 1:1'")
1698
+ expect(p.parse("Treca Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treca Ivanova 1:1'")
1699
+ expect(p.parse("Treæa Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treæa Ivanova 1:1'")
1700
+ expect(p.parse("Treća Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: 'Treća Ivanova 1:1'")
1701
+ expect(p.parse("III. Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: 'III. Ivanova 1:1'")
1702
+ expect(p.parse("3.. Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: '3.. Ivanova 1:1'")
1703
+ expect(p.parse("III Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: 'III Ivanova 1:1'")
1704
+ expect(p.parse("3. Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Ivanova 1:1'")
1705
+ expect(p.parse("3 Ivanova 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Ivanova 1:1'")
1706
+ expect(p.parse("3John 1:1").osis()).toEqual("3John.1.1", "parsing: '3John 1:1'")
1707
+ expect(p.parse("3 Iv 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Iv 1:1'")
1708
+ p.include_apocrypha(false)
1709
+ expect(p.parse("TRECA IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TRECA IVANOVA POSLANICA 1:1'")
1710
+ expect(p.parse("TRECA IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TRECA IVANOVA POSLANICA 1:1'")
1711
+ expect(p.parse("TREÆA IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TREÆA IVANOVA POSLANICA 1:1'")
1712
+ expect(p.parse("TREÆA IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TREÆA IVANOVA POSLANICA 1:1'")
1713
+ expect(p.parse("TREĆA IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TREĆA IVANOVA POSLANICA 1:1'")
1714
+ expect(p.parse("TREĆA IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TREĆA IVANOVA POSLANICA 1:1'")
1715
+ expect(p.parse("III. IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'III. IVANOVA POSLANICA 1:1'")
1716
+ expect(p.parse("3.. IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: '3.. IVANOVA POSLANICA 1:1'")
1717
+ expect(p.parse("III IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: 'III IVANOVA POSLANICA 1:1'")
1718
+ expect(p.parse("3. IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: '3. IVANOVA POSLANICA 1:1'")
1719
+ expect(p.parse("3 IVANOVA POSLANICA 1:1").osis()).toEqual("3John.1.1", "parsing: '3 IVANOVA POSLANICA 1:1'")
1720
+ expect(p.parse("TRECA IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TRECA IVANOVA 1:1'")
1721
+ expect(p.parse("TREÆA IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TREÆA IVANOVA 1:1'")
1722
+ expect(p.parse("TREĆA IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: 'TREĆA IVANOVA 1:1'")
1723
+ expect(p.parse("III. IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: 'III. IVANOVA 1:1'")
1724
+ expect(p.parse("3.. IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: '3.. IVANOVA 1:1'")
1725
+ expect(p.parse("III IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: 'III IVANOVA 1:1'")
1726
+ expect(p.parse("3. IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: '3. IVANOVA 1:1'")
1727
+ expect(p.parse("3 IVANOVA 1:1").osis()).toEqual("3John.1.1", "parsing: '3 IVANOVA 1:1'")
1728
+ expect(p.parse("3JOHN 1:1").osis()).toEqual("3John.1.1", "parsing: '3JOHN 1:1'")
1729
+ expect(p.parse("3 IV 1:1").osis()).toEqual("3John.1.1", "parsing: '3 IV 1:1'")
1730
+ ;
1731
+ return true;
1732
+ });
1733
+ });
1734
+
1735
+ describe("Localized book John (hr)", function() {
1736
+ var p;
1737
+ p = {};
1738
+ beforeEach(function() {
1739
+ p = new bcv_parser();
1740
+ p.set_options({
1741
+ book_alone_strategy: "ignore",
1742
+ book_sequence_strategy: "ignore",
1743
+ osis_compaction_strategy: "bc",
1744
+ captive_end_digits_strategy: "delete"
1745
+ });
1746
+ return p.include_apocrypha(true);
1747
+ });
1748
+ return it("should handle book: John (hr)", function() {
1749
+
1750
+ expect(p.parse("Jevanđelje po Ivanu 1:1").osis()).toEqual("John.1.1", "parsing: 'Jevanđelje po Ivanu 1:1'")
1751
+ expect(p.parse("Evanðelje po Ivanu 1:1").osis()).toEqual("John.1.1", "parsing: 'Evanðelje po Ivanu 1:1'")
1752
+ expect(p.parse("Evanđelje po Ivanu 1:1").osis()).toEqual("John.1.1", "parsing: 'Evanđelje po Ivanu 1:1'")
1753
+ expect(p.parse("Ivan 1:1").osis()).toEqual("John.1.1", "parsing: 'Ivan 1:1'")
1754
+ expect(p.parse("John 1:1").osis()).toEqual("John.1.1", "parsing: 'John 1:1'")
1755
+ expect(p.parse("Iv 1:1").osis()).toEqual("John.1.1", "parsing: 'Iv 1:1'")
1756
+ p.include_apocrypha(false)
1757
+ expect(p.parse("JEVANĐELJE PO IVANU 1:1").osis()).toEqual("John.1.1", "parsing: 'JEVANĐELJE PO IVANU 1:1'")
1758
+ expect(p.parse("EVANÐELJE PO IVANU 1:1").osis()).toEqual("John.1.1", "parsing: 'EVANÐELJE PO IVANU 1:1'")
1759
+ expect(p.parse("EVANĐELJE PO IVANU 1:1").osis()).toEqual("John.1.1", "parsing: 'EVANĐELJE PO IVANU 1:1'")
1760
+ expect(p.parse("IVAN 1:1").osis()).toEqual("John.1.1", "parsing: 'IVAN 1:1'")
1761
+ expect(p.parse("JOHN 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHN 1:1'")
1762
+ expect(p.parse("IV 1:1").osis()).toEqual("John.1.1", "parsing: 'IV 1:1'")
1763
+ ;
1764
+ return true;
1765
+ });
1766
+ });
1767
+
1768
+ describe("Localized book Acts (hr)", function() {
1769
+ var p;
1770
+ p = {};
1771
+ beforeEach(function() {
1772
+ p = new bcv_parser();
1773
+ p.set_options({
1774
+ book_alone_strategy: "ignore",
1775
+ book_sequence_strategy: "ignore",
1776
+ osis_compaction_strategy: "bc",
1777
+ captive_end_digits_strategy: "delete"
1778
+ });
1779
+ return p.include_apocrypha(true);
1780
+ });
1781
+ return it("should handle book: Acts (hr)", function() {
1782
+
1783
+ expect(p.parse("Djela apostolska 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Djela apostolska 1:1'")
1784
+ expect(p.parse("Djela 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Djela 1:1'")
1785
+ expect(p.parse("Acts 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Acts 1:1'")
1786
+ expect(p.parse("Dj 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Dj 1:1'")
1787
+ p.include_apocrypha(false)
1788
+ expect(p.parse("DJELA APOSTOLSKA 1:1").osis()).toEqual("Acts.1.1", "parsing: 'DJELA APOSTOLSKA 1:1'")
1789
+ expect(p.parse("DJELA 1:1").osis()).toEqual("Acts.1.1", "parsing: 'DJELA 1:1'")
1790
+ expect(p.parse("ACTS 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTS 1:1'")
1791
+ expect(p.parse("DJ 1:1").osis()).toEqual("Acts.1.1", "parsing: 'DJ 1:1'")
1792
+ ;
1793
+ return true;
1794
+ });
1795
+ });
1796
+
1797
+ describe("Localized book Rom (hr)", function() {
1798
+ var p;
1799
+ p = {};
1800
+ beforeEach(function() {
1801
+ p = new bcv_parser();
1802
+ p.set_options({
1803
+ book_alone_strategy: "ignore",
1804
+ book_sequence_strategy: "ignore",
1805
+ osis_compaction_strategy: "bc",
1806
+ captive_end_digits_strategy: "delete"
1807
+ });
1808
+ return p.include_apocrypha(true);
1809
+ });
1810
+ return it("should handle book: Rom (hr)", function() {
1811
+
1812
+ expect(p.parse("Pavlova poslanica Rimljanima 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Pavlova poslanica Rimljanima 1:1'")
1813
+ expect(p.parse("Poslanica Rimljanima 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Poslanica Rimljanima 1:1'")
1814
+ expect(p.parse("Rimljanima 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rimljanima 1:1'")
1815
+ expect(p.parse("Rim 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rim 1:1'")
1816
+ expect(p.parse("Rom 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rom 1:1'")
1817
+ p.include_apocrypha(false)
1818
+ expect(p.parse("PAVLOVA POSLANICA RIMLJANIMA 1:1").osis()).toEqual("Rom.1.1", "parsing: 'PAVLOVA POSLANICA RIMLJANIMA 1:1'")
1819
+ expect(p.parse("POSLANICA RIMLJANIMA 1:1").osis()).toEqual("Rom.1.1", "parsing: 'POSLANICA RIMLJANIMA 1:1'")
1820
+ expect(p.parse("RIMLJANIMA 1:1").osis()).toEqual("Rom.1.1", "parsing: 'RIMLJANIMA 1:1'")
1821
+ expect(p.parse("RIM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'RIM 1:1'")
1822
+ expect(p.parse("ROM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROM 1:1'")
1823
+ ;
1824
+ return true;
1825
+ });
1826
+ });
1827
+
1828
+ describe("Localized book 2Cor (hr)", function() {
1829
+ var p;
1830
+ p = {};
1831
+ beforeEach(function() {
1832
+ p = new bcv_parser();
1833
+ p.set_options({
1834
+ book_alone_strategy: "ignore",
1835
+ book_sequence_strategy: "ignore",
1836
+ osis_compaction_strategy: "bc",
1837
+ captive_end_digits_strategy: "delete"
1838
+ });
1839
+ return p.include_apocrypha(true);
1840
+ });
1841
+ return it("should handle book: 2Cor (hr)", function() {
1842
+
1843
+ expect(p.parse("Pavlova druga poslanica Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Pavlova druga poslanica Korincanima 1:1'")
1844
+ expect(p.parse("Pavlova druga poslanica Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Pavlova druga poslanica Korinćanima 1:1'")
1845
+ expect(p.parse("Druga Korincanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Druga Korincanima Poslanica 1:1'")
1846
+ expect(p.parse("Druga Korinćanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Druga Korinćanima Poslanica 1:1'")
1847
+ expect(p.parse("Druga poslanica Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Druga poslanica Korincanima 1:1'")
1848
+ expect(p.parse("Druga poslanica Korinæanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Druga poslanica Korinæanima 1:1'")
1849
+ expect(p.parse("Druga poslanica Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Druga poslanica Korinćanima 1:1'")
1850
+ expect(p.parse("2.. Korincanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. Korincanima Poslanica 1:1'")
1851
+ expect(p.parse("2.. Korinćanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. Korinćanima Poslanica 1:1'")
1852
+ expect(p.parse("II. Korincanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. Korincanima Poslanica 1:1'")
1853
+ expect(p.parse("II. Korinćanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. Korinćanima Poslanica 1:1'")
1854
+ expect(p.parse("2. Korincanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Korincanima Poslanica 1:1'")
1855
+ expect(p.parse("2. Korinćanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Korinćanima Poslanica 1:1'")
1856
+ expect(p.parse("II Korincanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II Korincanima Poslanica 1:1'")
1857
+ expect(p.parse("II Korinćanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II Korinćanima Poslanica 1:1'")
1858
+ expect(p.parse("2 Korincanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Korincanima Poslanica 1:1'")
1859
+ expect(p.parse("2 Korinćanima Poslanica 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Korinćanima Poslanica 1:1'")
1860
+ expect(p.parse("Druga Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Druga Korincanima 1:1'")
1861
+ expect(p.parse("Druga Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Druga Korinćanima 1:1'")
1862
+ expect(p.parse("2.. Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. Korincanima 1:1'")
1863
+ expect(p.parse("2.. Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. Korinćanima 1:1'")
1864
+ expect(p.parse("II. Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. Korincanima 1:1'")
1865
+ expect(p.parse("II. Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. Korinćanima 1:1'")
1866
+ expect(p.parse("2. Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Korincanima 1:1'")
1867
+ expect(p.parse("2. Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Korinćanima 1:1'")
1868
+ expect(p.parse("II Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II Korincanima 1:1'")
1869
+ expect(p.parse("II Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II Korinćanima 1:1'")
1870
+ expect(p.parse("2 Korincanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Korincanima 1:1'")
1871
+ expect(p.parse("2 Korinćanima 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Korinćanima 1:1'")
1872
+ expect(p.parse("2 Kor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Kor 1:1'")
1873
+ expect(p.parse("2Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2Cor 1:1'")
1874
+ p.include_apocrypha(false)
1875
+ expect(p.parse("PAVLOVA DRUGA POSLANICA KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'PAVLOVA DRUGA POSLANICA KORINCANIMA 1:1'")
1876
+ expect(p.parse("PAVLOVA DRUGA POSLANICA KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'PAVLOVA DRUGA POSLANICA KORINĆANIMA 1:1'")
1877
+ expect(p.parse("DRUGA KORINCANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DRUGA KORINCANIMA POSLANICA 1:1'")
1878
+ expect(p.parse("DRUGA KORINĆANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DRUGA KORINĆANIMA POSLANICA 1:1'")
1879
+ expect(p.parse("DRUGA POSLANICA KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DRUGA POSLANICA KORINCANIMA 1:1'")
1880
+ expect(p.parse("DRUGA POSLANICA KORINÆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DRUGA POSLANICA KORINÆANIMA 1:1'")
1881
+ expect(p.parse("DRUGA POSLANICA KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DRUGA POSLANICA KORINĆANIMA 1:1'")
1882
+ expect(p.parse("2.. KORINCANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. KORINCANIMA POSLANICA 1:1'")
1883
+ expect(p.parse("2.. KORINĆANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. KORINĆANIMA POSLANICA 1:1'")
1884
+ expect(p.parse("II. KORINCANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. KORINCANIMA POSLANICA 1:1'")
1885
+ expect(p.parse("II. KORINĆANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. KORINĆANIMA POSLANICA 1:1'")
1886
+ expect(p.parse("2. KORINCANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KORINCANIMA POSLANICA 1:1'")
1887
+ expect(p.parse("2. KORINĆANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KORINĆANIMA POSLANICA 1:1'")
1888
+ expect(p.parse("II KORINCANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II KORINCANIMA POSLANICA 1:1'")
1889
+ expect(p.parse("II KORINĆANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II KORINĆANIMA POSLANICA 1:1'")
1890
+ expect(p.parse("2 KORINCANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KORINCANIMA POSLANICA 1:1'")
1891
+ expect(p.parse("2 KORINĆANIMA POSLANICA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KORINĆANIMA POSLANICA 1:1'")
1892
+ expect(p.parse("DRUGA KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DRUGA KORINCANIMA 1:1'")
1893
+ expect(p.parse("DRUGA KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DRUGA KORINĆANIMA 1:1'")
1894
+ expect(p.parse("2.. KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. KORINCANIMA 1:1'")
1895
+ expect(p.parse("2.. KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2.. KORINĆANIMA 1:1'")
1896
+ expect(p.parse("II. KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. KORINCANIMA 1:1'")
1897
+ expect(p.parse("II. KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. KORINĆANIMA 1:1'")
1898
+ expect(p.parse("2. KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KORINCANIMA 1:1'")
1899
+ expect(p.parse("2. KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KORINĆANIMA 1:1'")
1900
+ expect(p.parse("II KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II KORINCANIMA 1:1'")
1901
+ expect(p.parse("II KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II KORINĆANIMA 1:1'")
1902
+ expect(p.parse("2 KORINCANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KORINCANIMA 1:1'")
1903
+ expect(p.parse("2 KORINĆANIMA 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KORINĆANIMA 1:1'")
1904
+ expect(p.parse("2 KOR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KOR 1:1'")
1905
+ expect(p.parse("2COR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2COR 1:1'")
1906
+ ;
1907
+ return true;
1908
+ });
1909
+ });
1910
+
1911
+ describe("Localized book 1Cor (hr)", function() {
1912
+ var p;
1913
+ p = {};
1914
+ beforeEach(function() {
1915
+ p = new bcv_parser();
1916
+ p.set_options({
1917
+ book_alone_strategy: "ignore",
1918
+ book_sequence_strategy: "ignore",
1919
+ osis_compaction_strategy: "bc",
1920
+ captive_end_digits_strategy: "delete"
1921
+ });
1922
+ return p.include_apocrypha(true);
1923
+ });
1924
+ return it("should handle book: 1Cor (hr)", function() {
1925
+
1926
+ expect(p.parse("Pavlova prva poslanica Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Pavlova prva poslanica Korincanima 1:1'")
1927
+ expect(p.parse("Pavlova prva poslanica Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Pavlova prva poslanica Korinćanima 1:1'")
1928
+ expect(p.parse("Prva Korincanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Prva Korincanima Poslanica 1:1'")
1929
+ expect(p.parse("Prva Korinćanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Prva Korinćanima Poslanica 1:1'")
1930
+ expect(p.parse("Prva poslanica Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Prva poslanica Korincanima 1:1'")
1931
+ expect(p.parse("Prva poslanica Korinæanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Prva poslanica Korinæanima 1:1'")
1932
+ expect(p.parse("Prva poslanica Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Prva poslanica Korinćanima 1:1'")
1933
+ expect(p.parse("1.. Korincanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. Korincanima Poslanica 1:1'")
1934
+ expect(p.parse("1.. Korinćanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. Korinćanima Poslanica 1:1'")
1935
+ expect(p.parse("1. Korincanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Korincanima Poslanica 1:1'")
1936
+ expect(p.parse("1. Korinćanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Korinćanima Poslanica 1:1'")
1937
+ expect(p.parse("I. Korincanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. Korincanima Poslanica 1:1'")
1938
+ expect(p.parse("I. Korinćanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. Korinćanima Poslanica 1:1'")
1939
+ expect(p.parse("1 Korincanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Korincanima Poslanica 1:1'")
1940
+ expect(p.parse("1 Korinćanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Korinćanima Poslanica 1:1'")
1941
+ expect(p.parse("I Korincanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I Korincanima Poslanica 1:1'")
1942
+ expect(p.parse("I Korinćanima Poslanica 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I Korinćanima Poslanica 1:1'")
1943
+ expect(p.parse("Prva Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Prva Korincanima 1:1'")
1944
+ expect(p.parse("Prva Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Prva Korinćanima 1:1'")
1945
+ expect(p.parse("1.. Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. Korincanima 1:1'")
1946
+ expect(p.parse("1.. Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. Korinćanima 1:1'")
1947
+ expect(p.parse("1. Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Korincanima 1:1'")
1948
+ expect(p.parse("1. Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Korinćanima 1:1'")
1949
+ expect(p.parse("I. Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. Korincanima 1:1'")
1950
+ expect(p.parse("I. Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. Korinćanima 1:1'")
1951
+ expect(p.parse("1 Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Korincanima 1:1'")
1952
+ expect(p.parse("1 Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Korinćanima 1:1'")
1953
+ expect(p.parse("I Korincanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I Korincanima 1:1'")
1954
+ expect(p.parse("I Korinćanima 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I Korinćanima 1:1'")
1955
+ expect(p.parse("1 Kor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Kor 1:1'")
1956
+ expect(p.parse("1Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1Cor 1:1'")
1957
+ p.include_apocrypha(false)
1958
+ expect(p.parse("PAVLOVA PRVA POSLANICA KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PAVLOVA PRVA POSLANICA KORINCANIMA 1:1'")
1959
+ expect(p.parse("PAVLOVA PRVA POSLANICA KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PAVLOVA PRVA POSLANICA KORINĆANIMA 1:1'")
1960
+ expect(p.parse("PRVA KORINCANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PRVA KORINCANIMA POSLANICA 1:1'")
1961
+ expect(p.parse("PRVA KORINĆANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PRVA KORINĆANIMA POSLANICA 1:1'")
1962
+ expect(p.parse("PRVA POSLANICA KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PRVA POSLANICA KORINCANIMA 1:1'")
1963
+ expect(p.parse("PRVA POSLANICA KORINÆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PRVA POSLANICA KORINÆANIMA 1:1'")
1964
+ expect(p.parse("PRVA POSLANICA KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PRVA POSLANICA KORINĆANIMA 1:1'")
1965
+ expect(p.parse("1.. KORINCANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. KORINCANIMA POSLANICA 1:1'")
1966
+ expect(p.parse("1.. KORINĆANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. KORINĆANIMA POSLANICA 1:1'")
1967
+ expect(p.parse("1. KORINCANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KORINCANIMA POSLANICA 1:1'")
1968
+ expect(p.parse("1. KORINĆANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KORINĆANIMA POSLANICA 1:1'")
1969
+ expect(p.parse("I. KORINCANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. KORINCANIMA POSLANICA 1:1'")
1970
+ expect(p.parse("I. KORINĆANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. KORINĆANIMA POSLANICA 1:1'")
1971
+ expect(p.parse("1 KORINCANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KORINCANIMA POSLANICA 1:1'")
1972
+ expect(p.parse("1 KORINĆANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KORINĆANIMA POSLANICA 1:1'")
1973
+ expect(p.parse("I KORINCANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I KORINCANIMA POSLANICA 1:1'")
1974
+ expect(p.parse("I KORINĆANIMA POSLANICA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I KORINĆANIMA POSLANICA 1:1'")
1975
+ expect(p.parse("PRVA KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PRVA KORINCANIMA 1:1'")
1976
+ expect(p.parse("PRVA KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PRVA KORINĆANIMA 1:1'")
1977
+ expect(p.parse("1.. KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. KORINCANIMA 1:1'")
1978
+ expect(p.parse("1.. KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1.. KORINĆANIMA 1:1'")
1979
+ expect(p.parse("1. KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KORINCANIMA 1:1'")
1980
+ expect(p.parse("1. KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KORINĆANIMA 1:1'")
1981
+ expect(p.parse("I. KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. KORINCANIMA 1:1'")
1982
+ expect(p.parse("I. KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. KORINĆANIMA 1:1'")
1983
+ expect(p.parse("1 KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KORINCANIMA 1:1'")
1984
+ expect(p.parse("1 KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KORINĆANIMA 1:1'")
1985
+ expect(p.parse("I KORINCANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I KORINCANIMA 1:1'")
1986
+ expect(p.parse("I KORINĆANIMA 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I KORINĆANIMA 1:1'")
1987
+ expect(p.parse("1 KOR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KOR 1:1'")
1988
+ expect(p.parse("1COR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1COR 1:1'")
1989
+ ;
1990
+ return true;
1991
+ });
1992
+ });
1993
+
1994
+ describe("Localized book Gal (hr)", function() {
1995
+ var p;
1996
+ p = {};
1997
+ beforeEach(function() {
1998
+ p = new bcv_parser();
1999
+ p.set_options({
2000
+ book_alone_strategy: "ignore",
2001
+ book_sequence_strategy: "ignore",
2002
+ osis_compaction_strategy: "bc",
2003
+ captive_end_digits_strategy: "delete"
2004
+ });
2005
+ return p.include_apocrypha(true);
2006
+ });
2007
+ return it("should handle book: Gal (hr)", function() {
2008
+
2009
+ expect(p.parse("Pavlova poslanica Galacanima 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Pavlova poslanica Galacanima 1:1'")
2010
+ expect(p.parse("Pavlova poslanica Galaćanima 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Pavlova poslanica Galaćanima 1:1'")
2011
+ expect(p.parse("Poslanica Galacanima 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Poslanica Galacanima 1:1'")
2012
+ expect(p.parse("Poslanica Galaæanima 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Poslanica Galaæanima 1:1'")
2013
+ expect(p.parse("Poslanica Galaćanima 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Poslanica Galaćanima 1:1'")
2014
+ expect(p.parse("Galacanima 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Galacanima 1:1'")
2015
+ expect(p.parse("Galaćanima 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Galaćanima 1:1'")
2016
+ expect(p.parse("Gal 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Gal 1:1'")
2017
+ p.include_apocrypha(false)
2018
+ expect(p.parse("PAVLOVA POSLANICA GALACANIMA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'PAVLOVA POSLANICA GALACANIMA 1:1'")
2019
+ expect(p.parse("PAVLOVA POSLANICA GALAĆANIMA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'PAVLOVA POSLANICA GALAĆANIMA 1:1'")
2020
+ expect(p.parse("POSLANICA GALACANIMA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'POSLANICA GALACANIMA 1:1'")
2021
+ expect(p.parse("POSLANICA GALAÆANIMA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'POSLANICA GALAÆANIMA 1:1'")
2022
+ expect(p.parse("POSLANICA GALAĆANIMA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'POSLANICA GALAĆANIMA 1:1'")
2023
+ expect(p.parse("GALACANIMA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GALACANIMA 1:1'")
2024
+ expect(p.parse("GALAĆANIMA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GALAĆANIMA 1:1'")
2025
+ expect(p.parse("GAL 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GAL 1:1'")
2026
+ ;
2027
+ return true;
2028
+ });
2029
+ });
2030
+
2031
+ describe("Localized book Eph (hr)", function() {
2032
+ var p;
2033
+ p = {};
2034
+ beforeEach(function() {
2035
+ p = new bcv_parser();
2036
+ p.set_options({
2037
+ book_alone_strategy: "ignore",
2038
+ book_sequence_strategy: "ignore",
2039
+ osis_compaction_strategy: "bc",
2040
+ captive_end_digits_strategy: "delete"
2041
+ });
2042
+ return p.include_apocrypha(true);
2043
+ });
2044
+ return it("should handle book: Eph (hr)", function() {
2045
+
2046
+ expect(p.parse("Pavlova poslanica Efezanima 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Pavlova poslanica Efezanima 1:1'")
2047
+ expect(p.parse("Pavlova poslanica Efežanima 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Pavlova poslanica Efežanima 1:1'")
2048
+ expect(p.parse("Poslanica Efezanima 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Poslanica Efezanima 1:1'")
2049
+ expect(p.parse("Poslanica Efežanima 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Poslanica Efežanima 1:1'")
2050
+ expect(p.parse("Efezanima 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Efezanima 1:1'")
2051
+ expect(p.parse("Efežanima 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Efežanima 1:1'")
2052
+ expect(p.parse("Eph 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Eph 1:1'")
2053
+ expect(p.parse("Ef 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ef 1:1'")
2054
+ p.include_apocrypha(false)
2055
+ expect(p.parse("PAVLOVA POSLANICA EFEZANIMA 1:1").osis()).toEqual("Eph.1.1", "parsing: 'PAVLOVA POSLANICA EFEZANIMA 1:1'")
2056
+ expect(p.parse("PAVLOVA POSLANICA EFEŽANIMA 1:1").osis()).toEqual("Eph.1.1", "parsing: 'PAVLOVA POSLANICA EFEŽANIMA 1:1'")
2057
+ expect(p.parse("POSLANICA EFEZANIMA 1:1").osis()).toEqual("Eph.1.1", "parsing: 'POSLANICA EFEZANIMA 1:1'")
2058
+ expect(p.parse("POSLANICA EFEŽANIMA 1:1").osis()).toEqual("Eph.1.1", "parsing: 'POSLANICA EFEŽANIMA 1:1'")
2059
+ expect(p.parse("EFEZANIMA 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EFEZANIMA 1:1'")
2060
+ expect(p.parse("EFEŽANIMA 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EFEŽANIMA 1:1'")
2061
+ expect(p.parse("EPH 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPH 1:1'")
2062
+ expect(p.parse("EF 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EF 1:1'")
2063
+ ;
2064
+ return true;
2065
+ });
2066
+ });
2067
+
2068
+ describe("Localized book Phil (hr)", function() {
2069
+ var p;
2070
+ p = {};
2071
+ beforeEach(function() {
2072
+ p = new bcv_parser();
2073
+ p.set_options({
2074
+ book_alone_strategy: "ignore",
2075
+ book_sequence_strategy: "ignore",
2076
+ osis_compaction_strategy: "bc",
2077
+ captive_end_digits_strategy: "delete"
2078
+ });
2079
+ return p.include_apocrypha(true);
2080
+ });
2081
+ return it("should handle book: Phil (hr)", function() {
2082
+
2083
+ expect(p.parse("Pavlova poslanica Filipljanima 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Pavlova poslanica Filipljanima 1:1'")
2084
+ expect(p.parse("Poslanica Filipljanima 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Poslanica Filipljanima 1:1'")
2085
+ expect(p.parse("Filipljanima 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Filipljanima 1:1'")
2086
+ expect(p.parse("Phil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Phil 1:1'")
2087
+ expect(p.parse("Fil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Fil 1:1'")
2088
+ p.include_apocrypha(false)
2089
+ expect(p.parse("PAVLOVA POSLANICA FILIPLJANIMA 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PAVLOVA POSLANICA FILIPLJANIMA 1:1'")
2090
+ expect(p.parse("POSLANICA FILIPLJANIMA 1:1").osis()).toEqual("Phil.1.1", "parsing: 'POSLANICA FILIPLJANIMA 1:1'")
2091
+ expect(p.parse("FILIPLJANIMA 1:1").osis()).toEqual("Phil.1.1", "parsing: 'FILIPLJANIMA 1:1'")
2092
+ expect(p.parse("PHIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHIL 1:1'")
2093
+ expect(p.parse("FIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'FIL 1:1'")
2094
+ ;
2095
+ return true;
2096
+ });
2097
+ });
2098
+
2099
+ describe("Localized book Col (hr)", function() {
2100
+ var p;
2101
+ p = {};
2102
+ beforeEach(function() {
2103
+ p = new bcv_parser();
2104
+ p.set_options({
2105
+ book_alone_strategy: "ignore",
2106
+ book_sequence_strategy: "ignore",
2107
+ osis_compaction_strategy: "bc",
2108
+ captive_end_digits_strategy: "delete"
2109
+ });
2110
+ return p.include_apocrypha(true);
2111
+ });
2112
+ return it("should handle book: Col (hr)", function() {
2113
+
2114
+ expect(p.parse("Pavlova poslanica Kolosanima 1:1").osis()).toEqual("Col.1.1", "parsing: 'Pavlova poslanica Kolosanima 1:1'")
2115
+ expect(p.parse("Pavlova poslanica Kološanima 1:1").osis()).toEqual("Col.1.1", "parsing: 'Pavlova poslanica Kološanima 1:1'")
2116
+ expect(p.parse("Poslanica Kolosanima 1:1").osis()).toEqual("Col.1.1", "parsing: 'Poslanica Kolosanima 1:1'")
2117
+ expect(p.parse("Poslanica Kološanima 1:1").osis()).toEqual("Col.1.1", "parsing: 'Poslanica Kološanima 1:1'")
2118
+ expect(p.parse("Kolosanima 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kolosanima 1:1'")
2119
+ expect(p.parse("Kološanima 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kološanima 1:1'")
2120
+ expect(p.parse("Col 1:1").osis()).toEqual("Col.1.1", "parsing: 'Col 1:1'")
2121
+ expect(p.parse("Kol 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kol 1:1'")
2122
+ p.include_apocrypha(false)
2123
+ expect(p.parse("PAVLOVA POSLANICA KOLOSANIMA 1:1").osis()).toEqual("Col.1.1", "parsing: 'PAVLOVA POSLANICA KOLOSANIMA 1:1'")
2124
+ expect(p.parse("PAVLOVA POSLANICA KOLOŠANIMA 1:1").osis()).toEqual("Col.1.1", "parsing: 'PAVLOVA POSLANICA KOLOŠANIMA 1:1'")
2125
+ expect(p.parse("POSLANICA KOLOSANIMA 1:1").osis()).toEqual("Col.1.1", "parsing: 'POSLANICA KOLOSANIMA 1:1'")
2126
+ expect(p.parse("POSLANICA KOLOŠANIMA 1:1").osis()).toEqual("Col.1.1", "parsing: 'POSLANICA KOLOŠANIMA 1:1'")
2127
+ expect(p.parse("KOLOSANIMA 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOLOSANIMA 1:1'")
2128
+ expect(p.parse("KOLOŠANIMA 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOLOŠANIMA 1:1'")
2129
+ expect(p.parse("COL 1:1").osis()).toEqual("Col.1.1", "parsing: 'COL 1:1'")
2130
+ expect(p.parse("KOL 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOL 1:1'")
2131
+ ;
2132
+ return true;
2133
+ });
2134
+ });
2135
+
2136
+ describe("Localized book 2Thess (hr)", function() {
2137
+ var p;
2138
+ p = {};
2139
+ beforeEach(function() {
2140
+ p = new bcv_parser();
2141
+ p.set_options({
2142
+ book_alone_strategy: "ignore",
2143
+ book_sequence_strategy: "ignore",
2144
+ osis_compaction_strategy: "bc",
2145
+ captive_end_digits_strategy: "delete"
2146
+ });
2147
+ return p.include_apocrypha(true);
2148
+ });
2149
+ return it("should handle book: 2Thess (hr)", function() {
2150
+
2151
+ expect(p.parse("Pavlova druga poslanica Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Pavlova druga poslanica Solunjanima 1:1'")
2152
+ expect(p.parse("Druga Solunjanima Poslanica 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Druga Solunjanima Poslanica 1:1'")
2153
+ expect(p.parse("Druga poslanica Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Druga poslanica Solunjanima 1:1'")
2154
+ expect(p.parse("2.. Solunjanima Poslanica 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2.. Solunjanima Poslanica 1:1'")
2155
+ expect(p.parse("II. Solunjanima Poslanica 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. Solunjanima Poslanica 1:1'")
2156
+ expect(p.parse("2. Solunjanima Poslanica 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Solunjanima Poslanica 1:1'")
2157
+ expect(p.parse("II Solunjanima Poslanica 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II Solunjanima Poslanica 1:1'")
2158
+ expect(p.parse("2 Solunjanima Poslanica 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Solunjanima Poslanica 1:1'")
2159
+ expect(p.parse("Druga Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Druga Solunjanima 1:1'")
2160
+ expect(p.parse("2.. Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2.. Solunjanima 1:1'")
2161
+ expect(p.parse("II. Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. Solunjanima 1:1'")
2162
+ expect(p.parse("2. Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Solunjanima 1:1'")
2163
+ expect(p.parse("II Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II Solunjanima 1:1'")
2164
+ expect(p.parse("2 Solunjanima 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Solunjanima 1:1'")
2165
+ expect(p.parse("2Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2Thess 1:1'")
2166
+ expect(p.parse("2 Sol 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Sol 1:1'")
2167
+ p.include_apocrypha(false)
2168
+ expect(p.parse("PAVLOVA DRUGA POSLANICA SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'PAVLOVA DRUGA POSLANICA SOLUNJANIMA 1:1'")
2169
+ expect(p.parse("DRUGA SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DRUGA SOLUNJANIMA POSLANICA 1:1'")
2170
+ expect(p.parse("DRUGA POSLANICA SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DRUGA POSLANICA SOLUNJANIMA 1:1'")
2171
+ expect(p.parse("2.. SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2.. SOLUNJANIMA POSLANICA 1:1'")
2172
+ expect(p.parse("II. SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. SOLUNJANIMA POSLANICA 1:1'")
2173
+ expect(p.parse("2. SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. SOLUNJANIMA POSLANICA 1:1'")
2174
+ expect(p.parse("II SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II SOLUNJANIMA POSLANICA 1:1'")
2175
+ expect(p.parse("2 SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 SOLUNJANIMA POSLANICA 1:1'")
2176
+ expect(p.parse("DRUGA SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DRUGA SOLUNJANIMA 1:1'")
2177
+ expect(p.parse("2.. SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2.. SOLUNJANIMA 1:1'")
2178
+ expect(p.parse("II. SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. SOLUNJANIMA 1:1'")
2179
+ expect(p.parse("2. SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. SOLUNJANIMA 1:1'")
2180
+ expect(p.parse("II SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II SOLUNJANIMA 1:1'")
2181
+ expect(p.parse("2 SOLUNJANIMA 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 SOLUNJANIMA 1:1'")
2182
+ expect(p.parse("2THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2THESS 1:1'")
2183
+ expect(p.parse("2 SOL 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 SOL 1:1'")
2184
+ ;
2185
+ return true;
2186
+ });
2187
+ });
2188
+
2189
+ describe("Localized book 1Thess (hr)", function() {
2190
+ var p;
2191
+ p = {};
2192
+ beforeEach(function() {
2193
+ p = new bcv_parser();
2194
+ p.set_options({
2195
+ book_alone_strategy: "ignore",
2196
+ book_sequence_strategy: "ignore",
2197
+ osis_compaction_strategy: "bc",
2198
+ captive_end_digits_strategy: "delete"
2199
+ });
2200
+ return p.include_apocrypha(true);
2201
+ });
2202
+ return it("should handle book: 1Thess (hr)", function() {
2203
+
2204
+ expect(p.parse("Pavlova prva poslanica Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Pavlova prva poslanica Solunjanima 1:1'")
2205
+ expect(p.parse("Prva Solunjanima Poslanica 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Prva Solunjanima Poslanica 1:1'")
2206
+ expect(p.parse("Prva poslanica Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Prva poslanica Solunjanima 1:1'")
2207
+ expect(p.parse("1.. Solunjanima Poslanica 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1.. Solunjanima Poslanica 1:1'")
2208
+ expect(p.parse("1. Solunjanima Poslanica 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Solunjanima Poslanica 1:1'")
2209
+ expect(p.parse("I. Solunjanima Poslanica 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. Solunjanima Poslanica 1:1'")
2210
+ expect(p.parse("1 Solunjanima Poslanica 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Solunjanima Poslanica 1:1'")
2211
+ expect(p.parse("I Solunjanima Poslanica 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I Solunjanima Poslanica 1:1'")
2212
+ expect(p.parse("Prva Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Prva Solunjanima 1:1'")
2213
+ expect(p.parse("1.. Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1.. Solunjanima 1:1'")
2214
+ expect(p.parse("1. Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Solunjanima 1:1'")
2215
+ expect(p.parse("I. Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. Solunjanima 1:1'")
2216
+ expect(p.parse("1 Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Solunjanima 1:1'")
2217
+ expect(p.parse("I Solunjanima 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I Solunjanima 1:1'")
2218
+ expect(p.parse("1Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1Thess 1:1'")
2219
+ expect(p.parse("1 Sol 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Sol 1:1'")
2220
+ p.include_apocrypha(false)
2221
+ expect(p.parse("PAVLOVA PRVA POSLANICA SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PAVLOVA PRVA POSLANICA SOLUNJANIMA 1:1'")
2222
+ expect(p.parse("PRVA SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PRVA SOLUNJANIMA POSLANICA 1:1'")
2223
+ expect(p.parse("PRVA POSLANICA SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PRVA POSLANICA SOLUNJANIMA 1:1'")
2224
+ expect(p.parse("1.. SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1.. SOLUNJANIMA POSLANICA 1:1'")
2225
+ expect(p.parse("1. SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. SOLUNJANIMA POSLANICA 1:1'")
2226
+ expect(p.parse("I. SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. SOLUNJANIMA POSLANICA 1:1'")
2227
+ expect(p.parse("1 SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 SOLUNJANIMA POSLANICA 1:1'")
2228
+ expect(p.parse("I SOLUNJANIMA POSLANICA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I SOLUNJANIMA POSLANICA 1:1'")
2229
+ expect(p.parse("PRVA SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PRVA SOLUNJANIMA 1:1'")
2230
+ expect(p.parse("1.. SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1.. SOLUNJANIMA 1:1'")
2231
+ expect(p.parse("1. SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. SOLUNJANIMA 1:1'")
2232
+ expect(p.parse("I. SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. SOLUNJANIMA 1:1'")
2233
+ expect(p.parse("1 SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 SOLUNJANIMA 1:1'")
2234
+ expect(p.parse("I SOLUNJANIMA 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I SOLUNJANIMA 1:1'")
2235
+ expect(p.parse("1THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1THESS 1:1'")
2236
+ expect(p.parse("1 SOL 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 SOL 1:1'")
2237
+ ;
2238
+ return true;
2239
+ });
2240
+ });
2241
+
2242
+ describe("Localized book 2Tim (hr)", function() {
2243
+ var p;
2244
+ p = {};
2245
+ beforeEach(function() {
2246
+ p = new bcv_parser();
2247
+ p.set_options({
2248
+ book_alone_strategy: "ignore",
2249
+ book_sequence_strategy: "ignore",
2250
+ osis_compaction_strategy: "bc",
2251
+ captive_end_digits_strategy: "delete"
2252
+ });
2253
+ return p.include_apocrypha(true);
2254
+ });
2255
+ return it("should handle book: 2Tim (hr)", function() {
2256
+
2257
+ expect(p.parse("Pavlova druga poslanica Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Pavlova druga poslanica Timoteju 1:1'")
2258
+ expect(p.parse("Druga Timoteju Poslanica 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Druga Timoteju Poslanica 1:1'")
2259
+ expect(p.parse("Druga poslanica Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Druga poslanica Timoteju 1:1'")
2260
+ expect(p.parse("2.. Timoteju Poslanica 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2.. Timoteju Poslanica 1:1'")
2261
+ expect(p.parse("II. Timoteju Poslanica 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. Timoteju Poslanica 1:1'")
2262
+ expect(p.parse("2. Timoteju Poslanica 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Timoteju Poslanica 1:1'")
2263
+ expect(p.parse("II Timoteju Poslanica 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II Timoteju Poslanica 1:1'")
2264
+ expect(p.parse("2 Timoteju Poslanica 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Timoteju Poslanica 1:1'")
2265
+ expect(p.parse("Druga Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Druga Timoteju 1:1'")
2266
+ expect(p.parse("2.. Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2.. Timoteju 1:1'")
2267
+ expect(p.parse("II. Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. Timoteju 1:1'")
2268
+ expect(p.parse("2. Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Timoteju 1:1'")
2269
+ expect(p.parse("II Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II Timoteju 1:1'")
2270
+ expect(p.parse("2 Timoteju 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Timoteju 1:1'")
2271
+ expect(p.parse("2 Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Tim 1:1'")
2272
+ expect(p.parse("2Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2Tim 1:1'")
2273
+ p.include_apocrypha(false)
2274
+ expect(p.parse("PAVLOVA DRUGA POSLANICA TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'PAVLOVA DRUGA POSLANICA TIMOTEJU 1:1'")
2275
+ expect(p.parse("DRUGA TIMOTEJU POSLANICA 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DRUGA TIMOTEJU POSLANICA 1:1'")
2276
+ expect(p.parse("DRUGA POSLANICA TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DRUGA POSLANICA TIMOTEJU 1:1'")
2277
+ expect(p.parse("2.. TIMOTEJU POSLANICA 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2.. TIMOTEJU POSLANICA 1:1'")
2278
+ expect(p.parse("II. TIMOTEJU POSLANICA 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. TIMOTEJU POSLANICA 1:1'")
2279
+ expect(p.parse("2. TIMOTEJU POSLANICA 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIMOTEJU POSLANICA 1:1'")
2280
+ expect(p.parse("II TIMOTEJU POSLANICA 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II TIMOTEJU POSLANICA 1:1'")
2281
+ expect(p.parse("2 TIMOTEJU POSLANICA 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIMOTEJU POSLANICA 1:1'")
2282
+ expect(p.parse("DRUGA TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DRUGA TIMOTEJU 1:1'")
2283
+ expect(p.parse("2.. TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2.. TIMOTEJU 1:1'")
2284
+ expect(p.parse("II. TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. TIMOTEJU 1:1'")
2285
+ expect(p.parse("2. TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIMOTEJU 1:1'")
2286
+ expect(p.parse("II TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II TIMOTEJU 1:1'")
2287
+ expect(p.parse("2 TIMOTEJU 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIMOTEJU 1:1'")
2288
+ expect(p.parse("2 TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIM 1:1'")
2289
+ expect(p.parse("2TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2TIM 1:1'")
2290
+ ;
2291
+ return true;
2292
+ });
2293
+ });
2294
+
2295
+ describe("Localized book 1Tim (hr)", function() {
2296
+ var p;
2297
+ p = {};
2298
+ beforeEach(function() {
2299
+ p = new bcv_parser();
2300
+ p.set_options({
2301
+ book_alone_strategy: "ignore",
2302
+ book_sequence_strategy: "ignore",
2303
+ osis_compaction_strategy: "bc",
2304
+ captive_end_digits_strategy: "delete"
2305
+ });
2306
+ return p.include_apocrypha(true);
2307
+ });
2308
+ return it("should handle book: 1Tim (hr)", function() {
2309
+
2310
+ expect(p.parse("Pavlova prva poslanica Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Pavlova prva poslanica Timoteju 1:1'")
2311
+ expect(p.parse("Prva Timoteju Poslanica 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Prva Timoteju Poslanica 1:1'")
2312
+ expect(p.parse("Prva poslanica Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Prva poslanica Timoteju 1:1'")
2313
+ expect(p.parse("1.. Timoteju Poslanica 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1.. Timoteju Poslanica 1:1'")
2314
+ expect(p.parse("1. Timoteju Poslanica 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Timoteju Poslanica 1:1'")
2315
+ expect(p.parse("I. Timoteju Poslanica 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. Timoteju Poslanica 1:1'")
2316
+ expect(p.parse("1 Timoteju Poslanica 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Timoteju Poslanica 1:1'")
2317
+ expect(p.parse("I Timoteju Poslanica 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I Timoteju Poslanica 1:1'")
2318
+ expect(p.parse("Prva Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Prva Timoteju 1:1'")
2319
+ expect(p.parse("1.. Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1.. Timoteju 1:1'")
2320
+ expect(p.parse("1. Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Timoteju 1:1'")
2321
+ expect(p.parse("I. Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. Timoteju 1:1'")
2322
+ expect(p.parse("1 Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Timoteju 1:1'")
2323
+ expect(p.parse("I Timoteju 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I Timoteju 1:1'")
2324
+ expect(p.parse("1 Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Tim 1:1'")
2325
+ expect(p.parse("1Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1Tim 1:1'")
2326
+ p.include_apocrypha(false)
2327
+ expect(p.parse("PAVLOVA PRVA POSLANICA TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PAVLOVA PRVA POSLANICA TIMOTEJU 1:1'")
2328
+ expect(p.parse("PRVA TIMOTEJU POSLANICA 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PRVA TIMOTEJU POSLANICA 1:1'")
2329
+ expect(p.parse("PRVA POSLANICA TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PRVA POSLANICA TIMOTEJU 1:1'")
2330
+ expect(p.parse("1.. TIMOTEJU POSLANICA 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1.. TIMOTEJU POSLANICA 1:1'")
2331
+ expect(p.parse("1. TIMOTEJU POSLANICA 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TIMOTEJU POSLANICA 1:1'")
2332
+ expect(p.parse("I. TIMOTEJU POSLANICA 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. TIMOTEJU POSLANICA 1:1'")
2333
+ expect(p.parse("1 TIMOTEJU POSLANICA 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIMOTEJU POSLANICA 1:1'")
2334
+ expect(p.parse("I TIMOTEJU POSLANICA 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I TIMOTEJU POSLANICA 1:1'")
2335
+ expect(p.parse("PRVA TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PRVA TIMOTEJU 1:1'")
2336
+ expect(p.parse("1.. TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1.. TIMOTEJU 1:1'")
2337
+ expect(p.parse("1. TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TIMOTEJU 1:1'")
2338
+ expect(p.parse("I. TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. TIMOTEJU 1:1'")
2339
+ expect(p.parse("1 TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIMOTEJU 1:1'")
2340
+ expect(p.parse("I TIMOTEJU 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I TIMOTEJU 1:1'")
2341
+ expect(p.parse("1 TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIM 1:1'")
2342
+ expect(p.parse("1TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1TIM 1:1'")
2343
+ ;
2344
+ return true;
2345
+ });
2346
+ });
2347
+
2348
+ describe("Localized book Titus (hr)", function() {
2349
+ var p;
2350
+ p = {};
2351
+ beforeEach(function() {
2352
+ p = new bcv_parser();
2353
+ p.set_options({
2354
+ book_alone_strategy: "ignore",
2355
+ book_sequence_strategy: "ignore",
2356
+ osis_compaction_strategy: "bc",
2357
+ captive_end_digits_strategy: "delete"
2358
+ });
2359
+ return p.include_apocrypha(true);
2360
+ });
2361
+ return it("should handle book: Titus (hr)", function() {
2362
+
2363
+ expect(p.parse("Pavlova poslanica Titu 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Pavlova poslanica Titu 1:1'")
2364
+ expect(p.parse("Poslanica Titu 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Poslanica Titu 1:1'")
2365
+ expect(p.parse("Titus 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titus 1:1'")
2366
+ expect(p.parse("Titu 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titu 1:1'")
2367
+ expect(p.parse("Tit 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tit 1:1'")
2368
+ p.include_apocrypha(false)
2369
+ expect(p.parse("PAVLOVA POSLANICA TITU 1:1").osis()).toEqual("Titus.1.1", "parsing: 'PAVLOVA POSLANICA TITU 1:1'")
2370
+ expect(p.parse("POSLANICA TITU 1:1").osis()).toEqual("Titus.1.1", "parsing: 'POSLANICA TITU 1:1'")
2371
+ expect(p.parse("TITUS 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITUS 1:1'")
2372
+ expect(p.parse("TITU 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITU 1:1'")
2373
+ expect(p.parse("TIT 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TIT 1:1'")
2374
+ ;
2375
+ return true;
2376
+ });
2377
+ });
2378
+
2379
+ describe("Localized book Phlm (hr)", function() {
2380
+ var p;
2381
+ p = {};
2382
+ beforeEach(function() {
2383
+ p = new bcv_parser();
2384
+ p.set_options({
2385
+ book_alone_strategy: "ignore",
2386
+ book_sequence_strategy: "ignore",
2387
+ osis_compaction_strategy: "bc",
2388
+ captive_end_digits_strategy: "delete"
2389
+ });
2390
+ return p.include_apocrypha(true);
2391
+ });
2392
+ return it("should handle book: Phlm (hr)", function() {
2393
+
2394
+ expect(p.parse("Pavlova poslanica Filemonu 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Pavlova poslanica Filemonu 1:1'")
2395
+ expect(p.parse("Poslanica Filemonu 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Poslanica Filemonu 1:1'")
2396
+ expect(p.parse("Filemonu 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Filemonu 1:1'")
2397
+ expect(p.parse("Phlm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phlm 1:1'")
2398
+ expect(p.parse("Flm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Flm 1:1'")
2399
+ p.include_apocrypha(false)
2400
+ expect(p.parse("PAVLOVA POSLANICA FILEMONU 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PAVLOVA POSLANICA FILEMONU 1:1'")
2401
+ expect(p.parse("POSLANICA FILEMONU 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'POSLANICA FILEMONU 1:1'")
2402
+ expect(p.parse("FILEMONU 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'FILEMONU 1:1'")
2403
+ expect(p.parse("PHLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHLM 1:1'")
2404
+ expect(p.parse("FLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'FLM 1:1'")
2405
+ ;
2406
+ return true;
2407
+ });
2408
+ });
2409
+
2410
+ describe("Localized book Heb (hr)", function() {
2411
+ var p;
2412
+ p = {};
2413
+ beforeEach(function() {
2414
+ p = new bcv_parser();
2415
+ p.set_options({
2416
+ book_alone_strategy: "ignore",
2417
+ book_sequence_strategy: "ignore",
2418
+ osis_compaction_strategy: "bc",
2419
+ captive_end_digits_strategy: "delete"
2420
+ });
2421
+ return p.include_apocrypha(true);
2422
+ });
2423
+ return it("should handle book: Heb (hr)", function() {
2424
+
2425
+ expect(p.parse("Pavlova poslanica Hebrejima 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Pavlova poslanica Hebrejima 1:1'")
2426
+ expect(p.parse("Poslanica Hebrejima 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Poslanica Hebrejima 1:1'")
2427
+ expect(p.parse("Hebrejima 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hebrejima 1:1'")
2428
+ expect(p.parse("Heb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Heb 1:1'")
2429
+ p.include_apocrypha(false)
2430
+ expect(p.parse("PAVLOVA POSLANICA HEBREJIMA 1:1").osis()).toEqual("Heb.1.1", "parsing: 'PAVLOVA POSLANICA HEBREJIMA 1:1'")
2431
+ expect(p.parse("POSLANICA HEBREJIMA 1:1").osis()).toEqual("Heb.1.1", "parsing: 'POSLANICA HEBREJIMA 1:1'")
2432
+ expect(p.parse("HEBREJIMA 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEBREJIMA 1:1'")
2433
+ expect(p.parse("HEB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEB 1:1'")
2434
+ ;
2435
+ return true;
2436
+ });
2437
+ });
2438
+
2439
+ describe("Localized book Jas (hr)", function() {
2440
+ var p;
2441
+ p = {};
2442
+ beforeEach(function() {
2443
+ p = new bcv_parser();
2444
+ p.set_options({
2445
+ book_alone_strategy: "ignore",
2446
+ book_sequence_strategy: "ignore",
2447
+ osis_compaction_strategy: "bc",
2448
+ captive_end_digits_strategy: "delete"
2449
+ });
2450
+ return p.include_apocrypha(true);
2451
+ });
2452
+ return it("should handle book: Jas (hr)", function() {
2453
+
2454
+ expect(p.parse("Jakovljeva poslanica 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jakovljeva poslanica 1:1'")
2455
+ expect(p.parse("Jakovljeva 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jakovljeva 1:1'")
2456
+ expect(p.parse("Jakov 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jakov 1:1'")
2457
+ expect(p.parse("Jak 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jak 1:1'")
2458
+ expect(p.parse("Jas 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jas 1:1'")
2459
+ p.include_apocrypha(false)
2460
+ expect(p.parse("JAKOVLJEVA POSLANICA 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAKOVLJEVA POSLANICA 1:1'")
2461
+ expect(p.parse("JAKOVLJEVA 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAKOVLJEVA 1:1'")
2462
+ expect(p.parse("JAKOV 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAKOV 1:1'")
2463
+ expect(p.parse("JAK 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAK 1:1'")
2464
+ expect(p.parse("JAS 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAS 1:1'")
2465
+ ;
2466
+ return true;
2467
+ });
2468
+ });
2469
+
2470
+ describe("Localized book 2Pet (hr)", function() {
2471
+ var p;
2472
+ p = {};
2473
+ beforeEach(function() {
2474
+ p = new bcv_parser();
2475
+ p.set_options({
2476
+ book_alone_strategy: "ignore",
2477
+ book_sequence_strategy: "ignore",
2478
+ osis_compaction_strategy: "bc",
2479
+ captive_end_digits_strategy: "delete"
2480
+ });
2481
+ return p.include_apocrypha(true);
2482
+ });
2483
+ return it("should handle book: 2Pet (hr)", function() {
2484
+
2485
+ expect(p.parse("Druga Petrova Poslanica 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Druga Petrova Poslanica 1:1'")
2486
+ expect(p.parse("Druga Petrova poslanica 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Druga Petrova poslanica 1:1'")
2487
+ expect(p.parse("2.. Petrova Poslanica 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2.. Petrova Poslanica 1:1'")
2488
+ expect(p.parse("II. Petrova Poslanica 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II. Petrova Poslanica 1:1'")
2489
+ expect(p.parse("2. Petrova Poslanica 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Petrova Poslanica 1:1'")
2490
+ expect(p.parse("II Petrova Poslanica 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II Petrova Poslanica 1:1'")
2491
+ expect(p.parse("2 Petrova Poslanica 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Petrova Poslanica 1:1'")
2492
+ expect(p.parse("Druga Petrova 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Druga Petrova 1:1'")
2493
+ expect(p.parse("2.. Petrova 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2.. Petrova 1:1'")
2494
+ expect(p.parse("II. Petrova 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II. Petrova 1:1'")
2495
+ expect(p.parse("2. Petrova 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Petrova 1:1'")
2496
+ expect(p.parse("II Petrova 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II Petrova 1:1'")
2497
+ expect(p.parse("2 Petrova 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Petrova 1:1'")
2498
+ expect(p.parse("2 Pt 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Pt 1:1'")
2499
+ expect(p.parse("2Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2Pet 1:1'")
2500
+ p.include_apocrypha(false)
2501
+ expect(p.parse("DRUGA PETROVA POSLANICA 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'DRUGA PETROVA POSLANICA 1:1'")
2502
+ expect(p.parse("DRUGA PETROVA POSLANICA 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'DRUGA PETROVA POSLANICA 1:1'")
2503
+ expect(p.parse("2.. PETROVA POSLANICA 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2.. PETROVA POSLANICA 1:1'")
2504
+ expect(p.parse("II. PETROVA POSLANICA 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II. PETROVA POSLANICA 1:1'")
2505
+ expect(p.parse("2. PETROVA POSLANICA 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PETROVA POSLANICA 1:1'")
2506
+ expect(p.parse("II PETROVA POSLANICA 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II PETROVA POSLANICA 1:1'")
2507
+ expect(p.parse("2 PETROVA POSLANICA 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PETROVA POSLANICA 1:1'")
2508
+ expect(p.parse("DRUGA PETROVA 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'DRUGA PETROVA 1:1'")
2509
+ expect(p.parse("2.. PETROVA 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2.. PETROVA 1:1'")
2510
+ expect(p.parse("II. PETROVA 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II. PETROVA 1:1'")
2511
+ expect(p.parse("2. PETROVA 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PETROVA 1:1'")
2512
+ expect(p.parse("II PETROVA 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II PETROVA 1:1'")
2513
+ expect(p.parse("2 PETROVA 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PETROVA 1:1'")
2514
+ expect(p.parse("2 PT 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PT 1:1'")
2515
+ expect(p.parse("2PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2PET 1:1'")
2516
+ ;
2517
+ return true;
2518
+ });
2519
+ });
2520
+
2521
+ describe("Localized book 1Pet (hr)", function() {
2522
+ var p;
2523
+ p = {};
2524
+ beforeEach(function() {
2525
+ p = new bcv_parser();
2526
+ p.set_options({
2527
+ book_alone_strategy: "ignore",
2528
+ book_sequence_strategy: "ignore",
2529
+ osis_compaction_strategy: "bc",
2530
+ captive_end_digits_strategy: "delete"
2531
+ });
2532
+ return p.include_apocrypha(true);
2533
+ });
2534
+ return it("should handle book: 1Pet (hr)", function() {
2535
+
2536
+ expect(p.parse("Prva Petrova Poslanica 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Prva Petrova Poslanica 1:1'")
2537
+ expect(p.parse("Prva Petrova poslanica 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Prva Petrova poslanica 1:1'")
2538
+ expect(p.parse("1.. Petrova Poslanica 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1.. Petrova Poslanica 1:1'")
2539
+ expect(p.parse("1. Petrova Poslanica 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Petrova Poslanica 1:1'")
2540
+ expect(p.parse("I. Petrova Poslanica 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I. Petrova Poslanica 1:1'")
2541
+ expect(p.parse("1 Petrova Poslanica 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Petrova Poslanica 1:1'")
2542
+ expect(p.parse("I Petrova Poslanica 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I Petrova Poslanica 1:1'")
2543
+ expect(p.parse("Prva Petrova 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Prva Petrova 1:1'")
2544
+ expect(p.parse("1.. Petrova 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1.. Petrova 1:1'")
2545
+ expect(p.parse("1. Petrova 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Petrova 1:1'")
2546
+ expect(p.parse("I. Petrova 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I. Petrova 1:1'")
2547
+ expect(p.parse("1 Petrova 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Petrova 1:1'")
2548
+ expect(p.parse("I Petrova 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I Petrova 1:1'")
2549
+ expect(p.parse("1 Pt 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Pt 1:1'")
2550
+ expect(p.parse("1Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1Pet 1:1'")
2551
+ p.include_apocrypha(false)
2552
+ expect(p.parse("PRVA PETROVA POSLANICA 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PRVA PETROVA POSLANICA 1:1'")
2553
+ expect(p.parse("PRVA PETROVA POSLANICA 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PRVA PETROVA POSLANICA 1:1'")
2554
+ expect(p.parse("1.. PETROVA POSLANICA 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1.. PETROVA POSLANICA 1:1'")
2555
+ expect(p.parse("1. PETROVA POSLANICA 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PETROVA POSLANICA 1:1'")
2556
+ expect(p.parse("I. PETROVA POSLANICA 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I. PETROVA POSLANICA 1:1'")
2557
+ expect(p.parse("1 PETROVA POSLANICA 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PETROVA POSLANICA 1:1'")
2558
+ expect(p.parse("I PETROVA POSLANICA 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I PETROVA POSLANICA 1:1'")
2559
+ expect(p.parse("PRVA PETROVA 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PRVA PETROVA 1:1'")
2560
+ expect(p.parse("1.. PETROVA 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1.. PETROVA 1:1'")
2561
+ expect(p.parse("1. PETROVA 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PETROVA 1:1'")
2562
+ expect(p.parse("I. PETROVA 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I. PETROVA 1:1'")
2563
+ expect(p.parse("1 PETROVA 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PETROVA 1:1'")
2564
+ expect(p.parse("I PETROVA 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I PETROVA 1:1'")
2565
+ expect(p.parse("1 PT 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PT 1:1'")
2566
+ expect(p.parse("1PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1PET 1:1'")
2567
+ ;
2568
+ return true;
2569
+ });
2570
+ });
2571
+
2572
+ describe("Localized book Jude (hr)", function() {
2573
+ var p;
2574
+ p = {};
2575
+ beforeEach(function() {
2576
+ p = new bcv_parser();
2577
+ p.set_options({
2578
+ book_alone_strategy: "ignore",
2579
+ book_sequence_strategy: "ignore",
2580
+ osis_compaction_strategy: "bc",
2581
+ captive_end_digits_strategy: "delete"
2582
+ });
2583
+ return p.include_apocrypha(true);
2584
+ });
2585
+ return it("should handle book: Jude (hr)", function() {
2586
+
2587
+ expect(p.parse("Poslanica Jude apostola 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Poslanica Jude apostola 1:1'")
2588
+ expect(p.parse("Judina poslanica 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Judina poslanica 1:1'")
2589
+ expect(p.parse("Judina 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Judina 1:1'")
2590
+ expect(p.parse("Juda 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Juda 1:1'")
2591
+ expect(p.parse("Jude 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jude 1:1'")
2592
+ expect(p.parse("Jd 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jd 1:1'")
2593
+ p.include_apocrypha(false)
2594
+ expect(p.parse("POSLANICA JUDE APOSTOLA 1:1").osis()).toEqual("Jude.1.1", "parsing: 'POSLANICA JUDE APOSTOLA 1:1'")
2595
+ expect(p.parse("JUDINA POSLANICA 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDINA POSLANICA 1:1'")
2596
+ expect(p.parse("JUDINA 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDINA 1:1'")
2597
+ expect(p.parse("JUDA 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDA 1:1'")
2598
+ expect(p.parse("JUDE 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDE 1:1'")
2599
+ expect(p.parse("JD 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JD 1:1'")
2600
+ ;
2601
+ return true;
2602
+ });
2603
+ });
2604
+
2605
+ describe("Localized book Tob (hr)", function() {
2606
+ var p;
2607
+ p = {};
2608
+ beforeEach(function() {
2609
+ p = new bcv_parser();
2610
+ p.set_options({
2611
+ book_alone_strategy: "ignore",
2612
+ book_sequence_strategy: "ignore",
2613
+ osis_compaction_strategy: "bc",
2614
+ captive_end_digits_strategy: "delete"
2615
+ });
2616
+ return p.include_apocrypha(true);
2617
+ });
2618
+ return it("should handle book: Tob (hr)", function() {
2619
+
2620
+ expect(p.parse("Tobija 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tobija 1:1'")
2621
+ expect(p.parse("Tob 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tob 1:1'")
2622
+ ;
2623
+ return true;
2624
+ });
2625
+ });
2626
+
2627
+ describe("Localized book Jdt (hr)", function() {
2628
+ var p;
2629
+ p = {};
2630
+ beforeEach(function() {
2631
+ p = new bcv_parser();
2632
+ p.set_options({
2633
+ book_alone_strategy: "ignore",
2634
+ book_sequence_strategy: "ignore",
2635
+ osis_compaction_strategy: "bc",
2636
+ captive_end_digits_strategy: "delete"
2637
+ });
2638
+ return p.include_apocrypha(true);
2639
+ });
2640
+ return it("should handle book: Jdt (hr)", function() {
2641
+
2642
+ expect(p.parse("Judita 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Judita 1:1'")
2643
+ expect(p.parse("Jdt 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Jdt 1:1'")
2644
+ ;
2645
+ return true;
2646
+ });
2647
+ });
2648
+
2649
+ describe("Localized book Bar (hr)", function() {
2650
+ var p;
2651
+ p = {};
2652
+ beforeEach(function() {
2653
+ p = new bcv_parser();
2654
+ p.set_options({
2655
+ book_alone_strategy: "ignore",
2656
+ book_sequence_strategy: "ignore",
2657
+ osis_compaction_strategy: "bc",
2658
+ captive_end_digits_strategy: "delete"
2659
+ });
2660
+ return p.include_apocrypha(true);
2661
+ });
2662
+ return it("should handle book: Bar (hr)", function() {
2663
+
2664
+ expect(p.parse("Baruh 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Baruh 1:1'")
2665
+ expect(p.parse("Bar 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Bar 1:1'")
2666
+ ;
2667
+ return true;
2668
+ });
2669
+ });
2670
+
2671
+ describe("Localized book Sus (hr)", function() {
2672
+ var p;
2673
+ p = {};
2674
+ beforeEach(function() {
2675
+ p = new bcv_parser();
2676
+ p.set_options({
2677
+ book_alone_strategy: "ignore",
2678
+ book_sequence_strategy: "ignore",
2679
+ osis_compaction_strategy: "bc",
2680
+ captive_end_digits_strategy: "delete"
2681
+ });
2682
+ return p.include_apocrypha(true);
2683
+ });
2684
+ return it("should handle book: Sus (hr)", function() {
2685
+
2686
+ expect(p.parse("Suzana 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Suzana 1:1'")
2687
+ expect(p.parse("Sus 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Sus 1:1'")
2688
+ expect(p.parse("Suz 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Suz 1:1'")
2689
+ ;
2690
+ return true;
2691
+ });
2692
+ });
2693
+
2694
+ describe("Localized book 2Macc (hr)", function() {
2695
+ var p;
2696
+ p = {};
2697
+ beforeEach(function() {
2698
+ p = new bcv_parser();
2699
+ p.set_options({
2700
+ book_alone_strategy: "ignore",
2701
+ book_sequence_strategy: "ignore",
2702
+ osis_compaction_strategy: "bc",
2703
+ captive_end_digits_strategy: "delete"
2704
+ });
2705
+ return p.include_apocrypha(true);
2706
+ });
2707
+ return it("should handle book: 2Macc (hr)", function() {
2708
+
2709
+ expect(p.parse("Druga knjiga o Makabejcima 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Druga knjiga o Makabejcima 1:1'")
2710
+ expect(p.parse("2 Mak 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Mak 1:1'")
2711
+ expect(p.parse("2Macc 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2Macc 1:1'")
2712
+ ;
2713
+ return true;
2714
+ });
2715
+ });
2716
+
2717
+ describe("Localized book 3Macc (hr)", function() {
2718
+ var p;
2719
+ p = {};
2720
+ beforeEach(function() {
2721
+ p = new bcv_parser();
2722
+ p.set_options({
2723
+ book_alone_strategy: "ignore",
2724
+ book_sequence_strategy: "ignore",
2725
+ osis_compaction_strategy: "bc",
2726
+ captive_end_digits_strategy: "delete"
2727
+ });
2728
+ return p.include_apocrypha(true);
2729
+ });
2730
+ return it("should handle book: 3Macc (hr)", function() {
2731
+
2732
+ expect(p.parse("Treca knjiga o Makabejcima 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Treca knjiga o Makabejcima 1:1'")
2733
+ expect(p.parse("Treća knjiga o Makabejcima 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Treća knjiga o Makabejcima 1:1'")
2734
+ expect(p.parse("3 Mak 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Mak 1:1'")
2735
+ expect(p.parse("3Macc 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3Macc 1:1'")
2736
+ ;
2737
+ return true;
2738
+ });
2739
+ });
2740
+
2741
+ describe("Localized book 4Macc (hr)", function() {
2742
+ var p;
2743
+ p = {};
2744
+ beforeEach(function() {
2745
+ p = new bcv_parser();
2746
+ p.set_options({
2747
+ book_alone_strategy: "ignore",
2748
+ book_sequence_strategy: "ignore",
2749
+ osis_compaction_strategy: "bc",
2750
+ captive_end_digits_strategy: "delete"
2751
+ });
2752
+ return p.include_apocrypha(true);
2753
+ });
2754
+ return it("should handle book: 4Macc (hr)", function() {
2755
+
2756
+ expect(p.parse("4 Mak 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Mak 1:1'")
2757
+ expect(p.parse("4Macc 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4Macc 1:1'")
2758
+ ;
2759
+ return true;
2760
+ });
2761
+ });
2762
+
2763
+ describe("Localized book 1Macc (hr)", function() {
2764
+ var p;
2765
+ p = {};
2766
+ beforeEach(function() {
2767
+ p = new bcv_parser();
2768
+ p.set_options({
2769
+ book_alone_strategy: "ignore",
2770
+ book_sequence_strategy: "ignore",
2771
+ osis_compaction_strategy: "bc",
2772
+ captive_end_digits_strategy: "delete"
2773
+ });
2774
+ return p.include_apocrypha(true);
2775
+ });
2776
+ return it("should handle book: 1Macc (hr)", function() {
2777
+
2778
+ expect(p.parse("Prva knjiga o Makabejcima 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Prva knjiga o Makabejcima 1:1'")
2779
+ expect(p.parse("1 Mak 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Mak 1:1'")
2780
+ expect(p.parse("1Macc 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1Macc 1:1'")
2781
+ ;
2782
+ return true;
2783
+ });
2784
+ });
2785
+
2786
+ describe("Miscellaneous tests", function() {
2787
+ var p;
2788
+ p = {};
2789
+ beforeEach(function() {
2790
+ p = new bcv_parser();
2791
+ p.set_options({
2792
+ book_alone_strategy: "ignore",
2793
+ book_sequence_strategy: "ignore",
2794
+ osis_compaction_strategy: "bc",
2795
+ captive_end_digits_strategy: "delete"
2796
+ });
2797
+ return p.include_apocrypha(true);
2798
+ });
2799
+ it("should return the expected language", function() {
2800
+ return expect(p.languages).toEqual(["hr"]);
2801
+ });
2802
+ it("should handle ranges (hr)", function() {
2803
+ expect(p.parse("Titus 1:1 - 2").osis()).toEqual("Titus.1.1-Titus.1.2", "parsing: 'Titus 1:1 - 2'");
2804
+ expect(p.parse("Matt 1-2").osis()).toEqual("Matt.1-Matt.2", "parsing: 'Matt 1-2'");
2805
+ return expect(p.parse("Phlm 2 - 3").osis()).toEqual("Phlm.1.2-Phlm.1.3", "parsing: 'Phlm 2 - 3'");
2806
+ });
2807
+ it("should handle chapters (hr)", function() {
2808
+ expect(p.parse("Titus 1:1, poglavlja 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, poglavlja 2'");
2809
+ expect(p.parse("Matt 3:4 POGLAVLJA 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 POGLAVLJA 6'");
2810
+ expect(p.parse("Titus 1:1, poglavlje 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, poglavlje 2'");
2811
+ expect(p.parse("Matt 3:4 POGLAVLJE 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 POGLAVLJE 6'");
2812
+ expect(p.parse("Titus 1:1, glava 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, glava 2'");
2813
+ return expect(p.parse("Matt 3:4 GLAVA 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 GLAVA 6'");
2814
+ });
2815
+ it("should handle verses (hr)", function() {
2816
+ expect(p.parse("Exod 1:1 verse 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 verse 3'");
2817
+ return expect(p.parse("Phlm VERSE 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERSE 6'");
2818
+ });
2819
+ it("should handle 'and' (hr)", function() {
2820
+ expect(p.parse("Exod 1:1 i 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 i 3'");
2821
+ return expect(p.parse("Phlm 2 I 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 I 6'");
2822
+ });
2823
+ it("should handle titles (hr)", function() {
2824
+ expect(p.parse("Ps 3 title, 4:2, 5:title").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'Ps 3 title, 4:2, 5:title'");
2825
+ return expect(p.parse("PS 3 TITLE, 4:2, 5:TITLE").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'PS 3 TITLE, 4:2, 5:TITLE'");
2826
+ });
2827
+ it("should handle 'ff' (hr)", function() {
2828
+ expect(p.parse("Rev 3ff, 4:2ff").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'Rev 3ff, 4:2ff'");
2829
+ return 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'");
2830
+ });
2831
+ it("should handle translations (hr)", function() {
2832
+ expect(p.parse("Lev 1 (CKK)").osis_and_translations()).toEqual([["Lev.1", "CKK"]]);
2833
+ return expect(p.parse("lev 1 ckk").osis_and_translations()).toEqual([["Lev.1", "CKK"]]);
2834
+ });
2835
+ it("should handle book ranges (hr)", function() {
2836
+ p.set_options({
2837
+ book_alone_strategy: "full",
2838
+ book_range_strategy: "include"
2839
+ });
2840
+ return expect(p.parse("Prva - Treæa Ivanova").osis()).toEqual("1John.1-3John.1", "parsing: 'Prva - Treæa Ivanova'");
2841
+ });
2842
+ return it("should handle boundaries (hr)", function() {
2843
+ p.set_options({
2844
+ book_alone_strategy: "full"
2845
+ });
2846
+ expect(p.parse("\u2014Matt\u2014").osis()).toEqual("Matt.1-Matt.28", "parsing: '\u2014Matt\u2014'");
2847
+ return expect(p.parse("\u201cMatt 1:1\u201d").osis()).toEqual("Matt.1.1", "parsing: '\u201cMatt 1:1\u201d'");
2848
+ });
2849
+ });
2850
+
2851
+ }).call(this);