bible-ref-parse 3.0.0 → 3.0.2

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 (99) hide show
  1. package/Readme.md +6 -6
  2. package/dist/ar-bcv-parser.js +7480 -0
  3. package/dist/bg-bcv-parser.js +7568 -0
  4. package/dist/ceb-bcv-parser.js +7498 -0
  5. package/dist/cs-bcv-parser.js +7613 -0
  6. package/dist/da-bcv-parser.js +7560 -0
  7. package/dist/de-bcv-parser.js +8406 -0
  8. package/dist/el-bcv-parser.js +7929 -0
  9. package/dist/en-bcv-parser.js +8404 -0
  10. package/dist/es-bcv-parser.js +8164 -0
  11. package/dist/fa-bcv-parser.js +7603 -0
  12. package/dist/fi-bcv-parser.js +7630 -0
  13. package/dist/fr-bcv-parser.js +7867 -0
  14. package/dist/he-bcv-parser.js +7504 -0
  15. package/dist/hi-bcv-parser.js +7480 -0
  16. package/dist/hr-bcv-parser.js +7500 -0
  17. package/dist/ht-bcv-parser.js +7526 -0
  18. package/dist/hu-bcv-parser.js +7785 -0
  19. package/dist/is-bcv-parser.js +7553 -0
  20. package/dist/it-bcv-parser.js +7875 -0
  21. package/dist/ja-bcv-parser.js +7528 -0
  22. package/dist/jv-bcv-parser.js +7489 -0
  23. package/dist/ko-bcv-parser.js +7528 -0
  24. package/dist/la-bcv-parser.js +7736 -0
  25. package/dist/mk-bcv-parser.js +7507 -0
  26. package/dist/mr-bcv-parser.js +7480 -0
  27. package/dist/ne-bcv-parser.js +7478 -0
  28. package/dist/nl-bcv-parser.js +7750 -0
  29. package/dist/no-bcv-parser.js +7633 -0
  30. package/dist/or-bcv-parser.js +7480 -0
  31. package/dist/pa-bcv-parser.js +7478 -0
  32. package/dist/pl-bcv-parser.js +7910 -0
  33. package/dist/pt-bcv-parser.js +8001 -0
  34. package/dist/ro-bcv-parser.js +7772 -0
  35. package/dist/ru-bcv-parser.js +7602 -0
  36. package/dist/sk-bcv-parser.js +7713 -0
  37. package/dist/so-bcv-parser.js +7490 -0
  38. package/dist/sq-bcv-parser.js +7478 -0
  39. package/dist/sr-bcv-parser.js +7510 -0
  40. package/dist/sr-bcv-parser.min.js +1 -0
  41. package/dist/sv-bcv-parser.js +7695 -0
  42. package/dist/sw-bcv-parser.js +7540 -0
  43. package/dist/ta-bcv-parser.js +7514 -0
  44. package/dist/test/ar.spec.js +2634 -0
  45. package/dist/test/bg.spec.js +3849 -0
  46. package/dist/test/ceb.spec.js +2533 -0
  47. package/dist/test/cs.spec.js +6593 -0
  48. package/dist/test/da.spec.js +2976 -0
  49. package/dist/test/de.spec.js +3114 -0
  50. package/dist/test/el.spec.js +4287 -0
  51. package/dist/test/en.spec.js +13196 -0
  52. package/dist/test/es.spec.js +5634 -0
  53. package/dist/test/fa.spec.js +16707 -0
  54. package/dist/test/fi.spec.js +3001 -0
  55. package/dist/test/fr.spec.js +3712 -0
  56. package/dist/test/he.spec.js +2411 -0
  57. package/dist/test/hi.spec.js +2754 -0
  58. package/dist/test/hr.spec.js +2851 -0
  59. package/dist/test/ht.spec.js +2749 -0
  60. package/dist/test/hu.spec.js +3951 -0
  61. package/dist/test/is.spec.js +3753 -0
  62. package/dist/test/it.spec.js +2917 -0
  63. package/dist/test/ja.spec.js +3079 -0
  64. package/dist/test/jv.spec.js +2470 -0
  65. package/dist/test/ko.spec.js +2682 -0
  66. package/dist/test/la.spec.js +2915 -0
  67. package/dist/test/mk.spec.js +3064 -0
  68. package/dist/test/mr.spec.js +3664 -0
  69. package/dist/test/ne.spec.js +4300 -0
  70. package/dist/test/nl.spec.js +3849 -0
  71. package/dist/test/no.spec.js +2867 -0
  72. package/dist/test/or.spec.js +2411 -0
  73. package/dist/test/pa.spec.js +2460 -0
  74. package/dist/test/pl.spec.js +7682 -0
  75. package/dist/test/pt.spec.js +3318 -0
  76. package/dist/test/ro.spec.js +3065 -0
  77. package/dist/test/ru.spec.js +3796 -0
  78. package/dist/test/sk.spec.js +5611 -0
  79. package/dist/test/so.spec.js +2613 -0
  80. package/dist/test/sq.spec.js +2643 -0
  81. package/dist/test/sr.spec.js +3300 -0
  82. package/dist/test/sv.spec.js +2785 -0
  83. package/dist/test/sw.spec.js +2994 -0
  84. package/dist/test/ta.spec.js +4859 -0
  85. package/dist/test/th.spec.js +2403 -0
  86. package/dist/test/tl.spec.js +3728 -0
  87. package/dist/test/tr.spec.js +19459 -0
  88. package/dist/test/uk.spec.js +6852 -0
  89. package/dist/test/ur.spec.js +3536 -0
  90. package/dist/test/vi.spec.js +2897 -0
  91. package/dist/test/zh.spec.js +4744 -0
  92. package/dist/th-bcv-parser.js +7478 -0
  93. package/dist/tl-bcv-parser.js +7555 -0
  94. package/dist/tr-bcv-parser.js +7673 -0
  95. package/dist/uk-bcv-parser.js +7541 -0
  96. package/dist/ur-bcv-parser.js +7564 -0
  97. package/dist/vi-bcv-parser.js +7480 -0
  98. package/dist/zh-bcv-parser.js +7588 -0
  99. package/package.json +6 -4
@@ -0,0 +1,3712 @@
1
+ (function() {
2
+ var bcv_parser;
3
+
4
+ bcv_parser = require("../../dist/fr-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 (fr)", 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 (fr)", function() {
86
+
87
+ expect(p.parse("Genese 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Genese 1:1'")
88
+ expect(p.parse("Genèse 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Genèse 1:1'")
89
+ expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'")
90
+ expect(p.parse("Ge 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ge 1:1'")
91
+ expect(p.parse("Gn 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gn 1:1'")
92
+ p.include_apocrypha(false)
93
+ expect(p.parse("GENESE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GENESE 1:1'")
94
+ expect(p.parse("GENÈSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GENÈSE 1:1'")
95
+ expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'")
96
+ expect(p.parse("GE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GE 1:1'")
97
+ expect(p.parse("GN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GN 1:1'")
98
+ ;
99
+ return true;
100
+ });
101
+ });
102
+
103
+ describe("Localized book Exod (fr)", function() {
104
+ var p;
105
+ p = {};
106
+ beforeEach(function() {
107
+ p = new bcv_parser();
108
+ p.set_options({
109
+ book_alone_strategy: "ignore",
110
+ book_sequence_strategy: "ignore",
111
+ osis_compaction_strategy: "bc",
112
+ captive_end_digits_strategy: "delete"
113
+ });
114
+ return p.include_apocrypha(true);
115
+ });
116
+ return it("should handle book: Exod (fr)", function() {
117
+
118
+ expect(p.parse("Exode 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exode 1:1'")
119
+ expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'")
120
+ expect(p.parse("Exo 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exo 1:1'")
121
+ expect(p.parse("Ex 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Ex 1:1'")
122
+ p.include_apocrypha(false)
123
+ expect(p.parse("EXODE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXODE 1:1'")
124
+ expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'")
125
+ expect(p.parse("EXO 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXO 1:1'")
126
+ expect(p.parse("EX 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EX 1:1'")
127
+ ;
128
+ return true;
129
+ });
130
+ });
131
+
132
+ describe("Localized book Bel (fr)", 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 (fr)", function() {
146
+
147
+ expect(p.parse("Bel et le Serpent 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le Serpent 1:1'")
148
+ expect(p.parse("Bel et le serpent 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le serpent 1:1'")
149
+ expect(p.parse("Bel et le Dragon 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le Dragon 1:1'")
150
+ expect(p.parse("Bel et le dragon 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le dragon 1:1'")
151
+ expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'")
152
+ ;
153
+ return true;
154
+ });
155
+ });
156
+
157
+ describe("Localized book Lev (fr)", function() {
158
+ var p;
159
+ p = {};
160
+ beforeEach(function() {
161
+ p = new bcv_parser();
162
+ p.set_options({
163
+ book_alone_strategy: "ignore",
164
+ book_sequence_strategy: "ignore",
165
+ osis_compaction_strategy: "bc",
166
+ captive_end_digits_strategy: "delete"
167
+ });
168
+ return p.include_apocrypha(true);
169
+ });
170
+ return it("should handle book: Lev (fr)", function() {
171
+
172
+ expect(p.parse("Levitique 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Levitique 1:1'")
173
+ expect(p.parse("Lévitique 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lévitique 1:1'")
174
+ expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'")
175
+ expect(p.parse("Lév 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lév 1:1'")
176
+ expect(p.parse("Le 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Le 1:1'")
177
+ expect(p.parse("Lv 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lv 1:1'")
178
+ expect(p.parse("Lé 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lé 1:1'")
179
+ p.include_apocrypha(false)
180
+ expect(p.parse("LEVITIQUE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEVITIQUE 1:1'")
181
+ expect(p.parse("LÉVITIQUE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LÉVITIQUE 1:1'")
182
+ expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'")
183
+ expect(p.parse("LÉV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LÉV 1:1'")
184
+ expect(p.parse("LE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LE 1:1'")
185
+ expect(p.parse("LV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LV 1:1'")
186
+ expect(p.parse("LÉ 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LÉ 1:1'")
187
+ ;
188
+ return true;
189
+ });
190
+ });
191
+
192
+ describe("Localized book Num (fr)", function() {
193
+ var p;
194
+ p = {};
195
+ beforeEach(function() {
196
+ p = new bcv_parser();
197
+ p.set_options({
198
+ book_alone_strategy: "ignore",
199
+ book_sequence_strategy: "ignore",
200
+ osis_compaction_strategy: "bc",
201
+ captive_end_digits_strategy: "delete"
202
+ });
203
+ return p.include_apocrypha(true);
204
+ });
205
+ return it("should handle book: Num (fr)", function() {
206
+
207
+ expect(p.parse("Nombres 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nombres 1:1'")
208
+ expect(p.parse("Nomb 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nomb 1:1'")
209
+ expect(p.parse("Nom 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nom 1:1'")
210
+ expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'")
211
+ expect(p.parse("Nb 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nb 1:1'")
212
+ expect(p.parse("Nm 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nm 1:1'")
213
+ expect(p.parse("No 1:1").osis()).toEqual("Num.1.1", "parsing: 'No 1:1'")
214
+ p.include_apocrypha(false)
215
+ expect(p.parse("NOMBRES 1:1").osis()).toEqual("Num.1.1", "parsing: 'NOMBRES 1:1'")
216
+ expect(p.parse("NOMB 1:1").osis()).toEqual("Num.1.1", "parsing: 'NOMB 1:1'")
217
+ expect(p.parse("NOM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NOM 1:1'")
218
+ expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'")
219
+ expect(p.parse("NB 1:1").osis()).toEqual("Num.1.1", "parsing: 'NB 1:1'")
220
+ expect(p.parse("NM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NM 1:1'")
221
+ expect(p.parse("NO 1:1").osis()).toEqual("Num.1.1", "parsing: 'NO 1:1'")
222
+ ;
223
+ return true;
224
+ });
225
+ });
226
+
227
+ describe("Localized book Sir (fr)", function() {
228
+ var p;
229
+ p = {};
230
+ beforeEach(function() {
231
+ p = new bcv_parser();
232
+ p.set_options({
233
+ book_alone_strategy: "ignore",
234
+ book_sequence_strategy: "ignore",
235
+ osis_compaction_strategy: "bc",
236
+ captive_end_digits_strategy: "delete"
237
+ });
238
+ return p.include_apocrypha(true);
239
+ });
240
+ return it("should handle book: Sir (fr)", function() {
241
+
242
+ expect(p.parse("La Sagesse de Ben Sira 1:1").osis()).toEqual("Sir.1.1", "parsing: 'La Sagesse de Ben Sira 1:1'")
243
+ expect(p.parse("Sagesse de Ben Sira 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sagesse de Ben Sira 1:1'")
244
+ expect(p.parse("Ecclesiastique 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Ecclesiastique 1:1'")
245
+ expect(p.parse("Ecclésiastique 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Ecclésiastique 1:1'")
246
+ expect(p.parse("Siracide 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Siracide 1:1'")
247
+ expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'")
248
+ expect(p.parse("Si 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Si 1:1'")
249
+ ;
250
+ return true;
251
+ });
252
+ });
253
+
254
+ describe("Localized book Wis (fr)", function() {
255
+ var p;
256
+ p = {};
257
+ beforeEach(function() {
258
+ p = new bcv_parser();
259
+ p.set_options({
260
+ book_alone_strategy: "ignore",
261
+ book_sequence_strategy: "ignore",
262
+ osis_compaction_strategy: "bc",
263
+ captive_end_digits_strategy: "delete"
264
+ });
265
+ return p.include_apocrypha(true);
266
+ });
267
+ return it("should handle book: Wis (fr)", function() {
268
+
269
+ expect(p.parse("Sagesse de Salomon 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Sagesse de Salomon 1:1'")
270
+ expect(p.parse("Sagesse 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Sagesse 1:1'")
271
+ expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'")
272
+ expect(p.parse("Sg 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Sg 1:1'")
273
+ ;
274
+ return true;
275
+ });
276
+ });
277
+
278
+ describe("Localized book Lam (fr)", function() {
279
+ var p;
280
+ p = {};
281
+ beforeEach(function() {
282
+ p = new bcv_parser();
283
+ p.set_options({
284
+ book_alone_strategy: "ignore",
285
+ book_sequence_strategy: "ignore",
286
+ osis_compaction_strategy: "bc",
287
+ captive_end_digits_strategy: "delete"
288
+ });
289
+ return p.include_apocrypha(true);
290
+ });
291
+ return it("should handle book: Lam (fr)", function() {
292
+
293
+ expect(p.parse("Lamentations de Jeremie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jeremie 1:1'")
294
+ expect(p.parse("Lamentations de Jerémie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jerémie 1:1'")
295
+ expect(p.parse("Lamentations de Jéremie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jéremie 1:1'")
296
+ expect(p.parse("Lamentations de Jérémie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jérémie 1:1'")
297
+ expect(p.parse("Lamentations 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations 1:1'")
298
+ expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'")
299
+ expect(p.parse("La 1:1").osis()).toEqual("Lam.1.1", "parsing: 'La 1:1'")
300
+ expect(p.parse("Lm 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lm 1:1'")
301
+ p.include_apocrypha(false)
302
+ expect(p.parse("LAMENTATIONS DE JEREMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JEREMIE 1:1'")
303
+ expect(p.parse("LAMENTATIONS DE JERÉMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JERÉMIE 1:1'")
304
+ expect(p.parse("LAMENTATIONS DE JÉREMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JÉREMIE 1:1'")
305
+ expect(p.parse("LAMENTATIONS DE JÉRÉMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JÉRÉMIE 1:1'")
306
+ expect(p.parse("LAMENTATIONS 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS 1:1'")
307
+ expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'")
308
+ expect(p.parse("LA 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LA 1:1'")
309
+ expect(p.parse("LM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LM 1:1'")
310
+ ;
311
+ return true;
312
+ });
313
+ });
314
+
315
+ describe("Localized book EpJer (fr)", function() {
316
+ var p;
317
+ p = {};
318
+ beforeEach(function() {
319
+ p = new bcv_parser();
320
+ p.set_options({
321
+ book_alone_strategy: "ignore",
322
+ book_sequence_strategy: "ignore",
323
+ osis_compaction_strategy: "bc",
324
+ captive_end_digits_strategy: "delete"
325
+ });
326
+ return p.include_apocrypha(true);
327
+ });
328
+ return it("should handle book: EpJer (fr)", function() {
329
+
330
+ expect(p.parse("Epitre de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jeremie 1:1'")
331
+ expect(p.parse("Epitre de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jerémie 1:1'")
332
+ expect(p.parse("Epitre de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jéremie 1:1'")
333
+ expect(p.parse("Epitre de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jérémie 1:1'")
334
+ expect(p.parse("Epître de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jeremie 1:1'")
335
+ expect(p.parse("Epître de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jerémie 1:1'")
336
+ expect(p.parse("Epître de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jéremie 1:1'")
337
+ expect(p.parse("Epître de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jérémie 1:1'")
338
+ expect(p.parse("Épitre de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jeremie 1:1'")
339
+ expect(p.parse("Épitre de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jerémie 1:1'")
340
+ expect(p.parse("Épitre de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jéremie 1:1'")
341
+ expect(p.parse("Épitre de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jérémie 1:1'")
342
+ expect(p.parse("Épître de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jeremie 1:1'")
343
+ expect(p.parse("Épître de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jerémie 1:1'")
344
+ expect(p.parse("Épître de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jéremie 1:1'")
345
+ expect(p.parse("Épître de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jérémie 1:1'")
346
+ expect(p.parse("Ep. Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jeremie 1:1'")
347
+ expect(p.parse("Ep. Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jerémie 1:1'")
348
+ expect(p.parse("Ep. Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jéremie 1:1'")
349
+ expect(p.parse("Ep. Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jérémie 1:1'")
350
+ expect(p.parse("Ép. Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jeremie 1:1'")
351
+ expect(p.parse("Ép. Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jerémie 1:1'")
352
+ expect(p.parse("Ép. Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jéremie 1:1'")
353
+ expect(p.parse("Ép. Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jérémie 1:1'")
354
+ expect(p.parse("Ep Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jeremie 1:1'")
355
+ expect(p.parse("Ep Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jerémie 1:1'")
356
+ expect(p.parse("Ep Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jéremie 1:1'")
357
+ expect(p.parse("Ep Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jérémie 1:1'")
358
+ expect(p.parse("Ép Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jeremie 1:1'")
359
+ expect(p.parse("Ép Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jerémie 1:1'")
360
+ expect(p.parse("Ép Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jéremie 1:1'")
361
+ expect(p.parse("Ép Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jérémie 1:1'")
362
+ expect(p.parse("Ep. Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jer 1:1'")
363
+ expect(p.parse("Ep. Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jér 1:1'")
364
+ expect(p.parse("Ép. Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jer 1:1'")
365
+ expect(p.parse("Ép. Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jér 1:1'")
366
+ expect(p.parse("Ep Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jer 1:1'")
367
+ expect(p.parse("Ep Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jér 1:1'")
368
+ expect(p.parse("Ép Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jer 1:1'")
369
+ expect(p.parse("Ép Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jér 1:1'")
370
+ expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'")
371
+ ;
372
+ return true;
373
+ });
374
+ });
375
+
376
+ describe("Localized book Rev (fr)", function() {
377
+ var p;
378
+ p = {};
379
+ beforeEach(function() {
380
+ p = new bcv_parser();
381
+ p.set_options({
382
+ book_alone_strategy: "ignore",
383
+ book_sequence_strategy: "ignore",
384
+ osis_compaction_strategy: "bc",
385
+ captive_end_digits_strategy: "delete"
386
+ });
387
+ return p.include_apocrypha(true);
388
+ });
389
+ return it("should handle book: Rev (fr)", function() {
390
+
391
+ expect(p.parse("Apocalypse de Jean 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apocalypse de Jean 1:1'")
392
+ expect(p.parse("Apocalypse 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apocalypse 1:1'")
393
+ expect(p.parse("Apoc 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apoc 1:1'")
394
+ expect(p.parse("Apc 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apc 1:1'")
395
+ expect(p.parse("Apo 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apo 1:1'")
396
+ expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'")
397
+ expect(p.parse("Ap 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Ap 1:1'")
398
+ p.include_apocrypha(false)
399
+ expect(p.parse("APOCALYPSE DE JEAN 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APOCALYPSE DE JEAN 1:1'")
400
+ expect(p.parse("APOCALYPSE 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APOCALYPSE 1:1'")
401
+ expect(p.parse("APOC 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APOC 1:1'")
402
+ expect(p.parse("APC 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APC 1:1'")
403
+ expect(p.parse("APO 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APO 1:1'")
404
+ expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'")
405
+ expect(p.parse("AP 1:1").osis()).toEqual("Rev.1.1", "parsing: 'AP 1:1'")
406
+ ;
407
+ return true;
408
+ });
409
+ });
410
+
411
+ describe("Localized book PrMan (fr)", function() {
412
+ var p;
413
+ p = {};
414
+ beforeEach(function() {
415
+ p = new bcv_parser();
416
+ p.set_options({
417
+ book_alone_strategy: "ignore",
418
+ book_sequence_strategy: "ignore",
419
+ osis_compaction_strategy: "bc",
420
+ captive_end_digits_strategy: "delete"
421
+ });
422
+ return p.include_apocrypha(true);
423
+ });
424
+ return it("should handle book: PrMan (fr)", function() {
425
+
426
+ expect(p.parse("La Priere de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Priere de Manasse 1:1'")
427
+ expect(p.parse("La Priere de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Priere de Manassé 1:1'")
428
+ expect(p.parse("La Prière de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Prière de Manasse 1:1'")
429
+ expect(p.parse("La Prière de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Prière de Manassé 1:1'")
430
+ expect(p.parse("Priere de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Priere de Manasse 1:1'")
431
+ expect(p.parse("Priere de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Priere de Manassé 1:1'")
432
+ expect(p.parse("Prière de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Prière de Manasse 1:1'")
433
+ expect(p.parse("Prière de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Prière de Manassé 1:1'")
434
+ expect(p.parse("Pr. Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr. Manasse 1:1'")
435
+ expect(p.parse("Pr. Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr. Manassé 1:1'")
436
+ expect(p.parse("Pr Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr Manasse 1:1'")
437
+ expect(p.parse("Pr Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr Manassé 1:1'")
438
+ expect(p.parse("Pr. Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr. Man 1:1'")
439
+ expect(p.parse("Pr Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr Man 1:1'")
440
+ expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'")
441
+ ;
442
+ return true;
443
+ });
444
+ });
445
+
446
+ describe("Localized book Deut (fr)", function() {
447
+ var p;
448
+ p = {};
449
+ beforeEach(function() {
450
+ p = new bcv_parser();
451
+ p.set_options({
452
+ book_alone_strategy: "ignore",
453
+ book_sequence_strategy: "ignore",
454
+ osis_compaction_strategy: "bc",
455
+ captive_end_digits_strategy: "delete"
456
+ });
457
+ return p.include_apocrypha(true);
458
+ });
459
+ return it("should handle book: Deut (fr)", function() {
460
+
461
+ expect(p.parse("Deuteronome 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deuteronome 1:1'")
462
+ expect(p.parse("Deutéronome 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deutéronome 1:1'")
463
+ expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'")
464
+ expect(p.parse("Deu 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deu 1:1'")
465
+ expect(p.parse("Dt 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Dt 1:1'")
466
+ p.include_apocrypha(false)
467
+ expect(p.parse("DEUTERONOME 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUTERONOME 1:1'")
468
+ expect(p.parse("DEUTÉRONOME 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUTÉRONOME 1:1'")
469
+ expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'")
470
+ expect(p.parse("DEU 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEU 1:1'")
471
+ expect(p.parse("DT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DT 1:1'")
472
+ ;
473
+ return true;
474
+ });
475
+ });
476
+
477
+ describe("Localized book Josh (fr)", function() {
478
+ var p;
479
+ p = {};
480
+ beforeEach(function() {
481
+ p = new bcv_parser();
482
+ p.set_options({
483
+ book_alone_strategy: "ignore",
484
+ book_sequence_strategy: "ignore",
485
+ osis_compaction_strategy: "bc",
486
+ captive_end_digits_strategy: "delete"
487
+ });
488
+ return p.include_apocrypha(true);
489
+ });
490
+ return it("should handle book: Josh (fr)", function() {
491
+
492
+ expect(p.parse("Josue 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josue 1:1'")
493
+ expect(p.parse("Josué 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josué 1:1'")
494
+ expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'")
495
+ expect(p.parse("Jos 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jos 1:1'")
496
+ p.include_apocrypha(false)
497
+ expect(p.parse("JOSUE 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSUE 1:1'")
498
+ expect(p.parse("JOSUÉ 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSUÉ 1:1'")
499
+ expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'")
500
+ expect(p.parse("JOS 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOS 1:1'")
501
+ ;
502
+ return true;
503
+ });
504
+ });
505
+
506
+ describe("Localized book Judg (fr)", function() {
507
+ var p;
508
+ p = {};
509
+ beforeEach(function() {
510
+ p = new bcv_parser();
511
+ p.set_options({
512
+ book_alone_strategy: "ignore",
513
+ book_sequence_strategy: "ignore",
514
+ osis_compaction_strategy: "bc",
515
+ captive_end_digits_strategy: "delete"
516
+ });
517
+ return p.include_apocrypha(true);
518
+ });
519
+ return it("should handle book: Judg (fr)", function() {
520
+
521
+ expect(p.parse("Juges 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Juges 1:1'")
522
+ expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'")
523
+ expect(p.parse("Jug 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Jug 1:1'")
524
+ expect(p.parse("Jg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Jg 1:1'")
525
+ p.include_apocrypha(false)
526
+ expect(p.parse("JUGES 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUGES 1:1'")
527
+ expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'")
528
+ expect(p.parse("JUG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUG 1:1'")
529
+ expect(p.parse("JG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JG 1:1'")
530
+ ;
531
+ return true;
532
+ });
533
+ });
534
+
535
+ describe("Localized book Ruth (fr)", function() {
536
+ var p;
537
+ p = {};
538
+ beforeEach(function() {
539
+ p = new bcv_parser();
540
+ p.set_options({
541
+ book_alone_strategy: "ignore",
542
+ book_sequence_strategy: "ignore",
543
+ osis_compaction_strategy: "bc",
544
+ captive_end_digits_strategy: "delete"
545
+ });
546
+ return p.include_apocrypha(true);
547
+ });
548
+ return it("should handle book: Ruth (fr)", function() {
549
+
550
+ expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'")
551
+ expect(p.parse("Rut 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rut 1:1'")
552
+ expect(p.parse("Rt 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rt 1:1'")
553
+ expect(p.parse("Ru 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ru 1:1'")
554
+ p.include_apocrypha(false)
555
+ expect(p.parse("RUTH 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTH 1:1'")
556
+ expect(p.parse("RUT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUT 1:1'")
557
+ expect(p.parse("RT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RT 1:1'")
558
+ expect(p.parse("RU 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RU 1:1'")
559
+ ;
560
+ return true;
561
+ });
562
+ });
563
+
564
+ describe("Localized book 1Esd (fr)", function() {
565
+ var p;
566
+ p = {};
567
+ beforeEach(function() {
568
+ p = new bcv_parser();
569
+ p.set_options({
570
+ book_alone_strategy: "ignore",
571
+ book_sequence_strategy: "ignore",
572
+ osis_compaction_strategy: "bc",
573
+ captive_end_digits_strategy: "delete"
574
+ });
575
+ return p.include_apocrypha(true);
576
+ });
577
+ return it("should handle book: 1Esd (fr)", function() {
578
+
579
+ expect(p.parse("Premieres Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premieres Esdras 1:1'")
580
+ expect(p.parse("Premières Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premières Esdras 1:1'")
581
+ expect(p.parse("Premiere Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premiere Esdras 1:1'")
582
+ expect(p.parse("Premiers Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premiers Esdras 1:1'")
583
+ expect(p.parse("Première Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Première Esdras 1:1'")
584
+ expect(p.parse("Premier Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premier Esdras 1:1'")
585
+ expect(p.parse("1ere. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ere. Esdras 1:1'")
586
+ expect(p.parse("1ère. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ère. Esdras 1:1'")
587
+ expect(p.parse("1er. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1er. Esdras 1:1'")
588
+ expect(p.parse("1ere Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ere Esdras 1:1'")
589
+ expect(p.parse("1re. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1re. Esdras 1:1'")
590
+ expect(p.parse("1ère Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ère Esdras 1:1'")
591
+ expect(p.parse("1er Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1er Esdras 1:1'")
592
+ expect(p.parse("1re Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1re Esdras 1:1'")
593
+ expect(p.parse("1. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esdras 1:1'")
594
+ expect(p.parse("I. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'I. Esdras 1:1'")
595
+ expect(p.parse("1 Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdras 1:1'")
596
+ expect(p.parse("I Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'I Esdras 1:1'")
597
+ expect(p.parse("1 Esdr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdr 1:1'")
598
+ expect(p.parse("1 Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esd 1:1'")
599
+ expect(p.parse("1 Es 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Es 1:1'")
600
+ expect(p.parse("1Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1Esd 1:1'")
601
+ ;
602
+ return true;
603
+ });
604
+ });
605
+
606
+ describe("Localized book 2Esd (fr)", function() {
607
+ var p;
608
+ p = {};
609
+ beforeEach(function() {
610
+ p = new bcv_parser();
611
+ p.set_options({
612
+ book_alone_strategy: "ignore",
613
+ book_sequence_strategy: "ignore",
614
+ osis_compaction_strategy: "bc",
615
+ captive_end_digits_strategy: "delete"
616
+ });
617
+ return p.include_apocrypha(true);
618
+ });
619
+ return it("should handle book: 2Esd (fr)", function() {
620
+
621
+ expect(p.parse("Deuxiemes Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxiemes Esdras 1:1'")
622
+ expect(p.parse("Deuxièmes Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxièmes Esdras 1:1'")
623
+ expect(p.parse("Deuxieme Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxieme Esdras 1:1'")
624
+ expect(p.parse("Deuxième Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxième Esdras 1:1'")
625
+ expect(p.parse("2eme. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2eme. Esdras 1:1'")
626
+ expect(p.parse("2ème. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2ème. Esdras 1:1'")
627
+ expect(p.parse("2de. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2de. Esdras 1:1'")
628
+ expect(p.parse("2eme Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2eme Esdras 1:1'")
629
+ expect(p.parse("2ème Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2ème Esdras 1:1'")
630
+ expect(p.parse("2d. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2d. Esdras 1:1'")
631
+ expect(p.parse("2de Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2de Esdras 1:1'")
632
+ expect(p.parse("2e. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2e. Esdras 1:1'")
633
+ expect(p.parse("II. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'II. Esdras 1:1'")
634
+ expect(p.parse("2. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esdras 1:1'")
635
+ expect(p.parse("2d Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2d Esdras 1:1'")
636
+ expect(p.parse("2e Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2e Esdras 1:1'")
637
+ expect(p.parse("II Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'II Esdras 1:1'")
638
+ expect(p.parse("2 Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdras 1:1'")
639
+ expect(p.parse("2 Esdr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdr 1:1'")
640
+ expect(p.parse("2 Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esd 1:1'")
641
+ expect(p.parse("2 Es 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Es 1:1'")
642
+ expect(p.parse("2Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2Esd 1:1'")
643
+ ;
644
+ return true;
645
+ });
646
+ });
647
+
648
+ describe("Localized book Isa (fr)", function() {
649
+ var p;
650
+ p = {};
651
+ beforeEach(function() {
652
+ p = new bcv_parser();
653
+ p.set_options({
654
+ book_alone_strategy: "ignore",
655
+ book_sequence_strategy: "ignore",
656
+ osis_compaction_strategy: "bc",
657
+ captive_end_digits_strategy: "delete"
658
+ });
659
+ return p.include_apocrypha(true);
660
+ });
661
+ return it("should handle book: Isa (fr)", function() {
662
+
663
+ expect(p.parse("Esaie 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esaie 1:1'")
664
+ expect(p.parse("Esaïe 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esaïe 1:1'")
665
+ expect(p.parse("Isaie 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isaie 1:1'")
666
+ expect(p.parse("Isaïe 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isaïe 1:1'")
667
+ expect(p.parse("Ésaie 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Ésaie 1:1'")
668
+ expect(p.parse("Ésaïe 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Ésaïe 1:1'")
669
+ expect(p.parse("Esa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esa 1:1'")
670
+ expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'")
671
+ expect(p.parse("Ésa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Ésa 1:1'")
672
+ expect(p.parse("Es 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Es 1:1'")
673
+ expect(p.parse("Is 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Is 1:1'")
674
+ expect(p.parse("És 1:1").osis()).toEqual("Isa.1.1", "parsing: 'És 1:1'")
675
+ p.include_apocrypha(false)
676
+ expect(p.parse("ESAIE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESAIE 1:1'")
677
+ expect(p.parse("ESAÏE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESAÏE 1:1'")
678
+ expect(p.parse("ISAIE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISAIE 1:1'")
679
+ expect(p.parse("ISAÏE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISAÏE 1:1'")
680
+ expect(p.parse("ÉSAIE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉSAIE 1:1'")
681
+ expect(p.parse("ÉSAÏE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉSAÏE 1:1'")
682
+ expect(p.parse("ESA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESA 1:1'")
683
+ expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'")
684
+ expect(p.parse("ÉSA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉSA 1:1'")
685
+ expect(p.parse("ES 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ES 1:1'")
686
+ expect(p.parse("IS 1:1").osis()).toEqual("Isa.1.1", "parsing: 'IS 1:1'")
687
+ expect(p.parse("ÉS 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉS 1:1'")
688
+ ;
689
+ return true;
690
+ });
691
+ });
692
+
693
+ describe("Localized book 2Sam (fr)", function() {
694
+ var p;
695
+ p = {};
696
+ beforeEach(function() {
697
+ p = new bcv_parser();
698
+ p.set_options({
699
+ book_alone_strategy: "ignore",
700
+ book_sequence_strategy: "ignore",
701
+ osis_compaction_strategy: "bc",
702
+ captive_end_digits_strategy: "delete"
703
+ });
704
+ return p.include_apocrypha(true);
705
+ });
706
+ return it("should handle book: 2Sam (fr)", function() {
707
+
708
+ expect(p.parse("Deuxiemes Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxiemes Samuel 1:1'")
709
+ expect(p.parse("Deuxièmes Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxièmes Samuel 1:1'")
710
+ expect(p.parse("Deuxieme Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxieme Samuel 1:1'")
711
+ expect(p.parse("Deuxième Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxième Samuel 1:1'")
712
+ expect(p.parse("2eme. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2eme. Samuel 1:1'")
713
+ expect(p.parse("2ème. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ème. Samuel 1:1'")
714
+ expect(p.parse("2de. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2de. Samuel 1:1'")
715
+ expect(p.parse("2eme Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2eme Samuel 1:1'")
716
+ expect(p.parse("2ème Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ème Samuel 1:1'")
717
+ expect(p.parse("2d. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2d. Samuel 1:1'")
718
+ expect(p.parse("2de Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2de Samuel 1:1'")
719
+ expect(p.parse("2e. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2e. Samuel 1:1'")
720
+ expect(p.parse("II. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II. Samuel 1:1'")
721
+ expect(p.parse("2. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Samuel 1:1'")
722
+ expect(p.parse("2d Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2d Samuel 1:1'")
723
+ expect(p.parse("2e Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2e Samuel 1:1'")
724
+ expect(p.parse("II Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II Samuel 1:1'")
725
+ expect(p.parse("2 Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Samuel 1:1'")
726
+ expect(p.parse("2 Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Sam 1:1'")
727
+ expect(p.parse("2 Sa 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Sa 1:1'")
728
+ expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'")
729
+ expect(p.parse("2 S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 S 1:1'")
730
+ p.include_apocrypha(false)
731
+ expect(p.parse("DEUXIEMES SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIEMES SAMUEL 1:1'")
732
+ expect(p.parse("DEUXIÈMES SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIÈMES SAMUEL 1:1'")
733
+ expect(p.parse("DEUXIEME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIEME SAMUEL 1:1'")
734
+ expect(p.parse("DEUXIÈME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIÈME SAMUEL 1:1'")
735
+ expect(p.parse("2EME. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2EME. SAMUEL 1:1'")
736
+ expect(p.parse("2ÈME. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ÈME. SAMUEL 1:1'")
737
+ expect(p.parse("2DE. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2DE. SAMUEL 1:1'")
738
+ expect(p.parse("2EME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2EME SAMUEL 1:1'")
739
+ expect(p.parse("2ÈME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ÈME SAMUEL 1:1'")
740
+ expect(p.parse("2D. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2D. SAMUEL 1:1'")
741
+ expect(p.parse("2DE SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2DE SAMUEL 1:1'")
742
+ expect(p.parse("2E. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2E. SAMUEL 1:1'")
743
+ expect(p.parse("II. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II. SAMUEL 1:1'")
744
+ expect(p.parse("2. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAMUEL 1:1'")
745
+ expect(p.parse("2D SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2D SAMUEL 1:1'")
746
+ expect(p.parse("2E SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2E SAMUEL 1:1'")
747
+ expect(p.parse("II SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II SAMUEL 1:1'")
748
+ expect(p.parse("2 SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAMUEL 1:1'")
749
+ expect(p.parse("2 SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAM 1:1'")
750
+ expect(p.parse("2 SA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SA 1:1'")
751
+ expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'")
752
+ expect(p.parse("2 S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 S 1:1'")
753
+ ;
754
+ return true;
755
+ });
756
+ });
757
+
758
+ describe("Localized book 1Sam (fr)", function() {
759
+ var p;
760
+ p = {};
761
+ beforeEach(function() {
762
+ p = new bcv_parser();
763
+ p.set_options({
764
+ book_alone_strategy: "ignore",
765
+ book_sequence_strategy: "ignore",
766
+ osis_compaction_strategy: "bc",
767
+ captive_end_digits_strategy: "delete"
768
+ });
769
+ return p.include_apocrypha(true);
770
+ });
771
+ return it("should handle book: 1Sam (fr)", function() {
772
+
773
+ expect(p.parse("Premieres Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premieres Samuel 1:1'")
774
+ expect(p.parse("Premières Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premières Samuel 1:1'")
775
+ expect(p.parse("Premiere Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premiere Samuel 1:1'")
776
+ expect(p.parse("Premiers Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premiers Samuel 1:1'")
777
+ expect(p.parse("Première Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Première Samuel 1:1'")
778
+ expect(p.parse("Premier Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premier Samuel 1:1'")
779
+ expect(p.parse("1ere. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ere. Samuel 1:1'")
780
+ expect(p.parse("1ère. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ère. Samuel 1:1'")
781
+ expect(p.parse("1er. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1er. Samuel 1:1'")
782
+ expect(p.parse("1ere Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ere Samuel 1:1'")
783
+ expect(p.parse("1re. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1re. Samuel 1:1'")
784
+ expect(p.parse("1ère Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ère Samuel 1:1'")
785
+ expect(p.parse("1er Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1er Samuel 1:1'")
786
+ expect(p.parse("1re Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1re Samuel 1:1'")
787
+ expect(p.parse("1. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Samuel 1:1'")
788
+ expect(p.parse("I. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I. Samuel 1:1'")
789
+ expect(p.parse("1 Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Samuel 1:1'")
790
+ expect(p.parse("I Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I Samuel 1:1'")
791
+ expect(p.parse("1 Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sam 1:1'")
792
+ expect(p.parse("1 Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sa 1:1'")
793
+ expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'")
794
+ expect(p.parse("1 S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 S 1:1'")
795
+ p.include_apocrypha(false)
796
+ expect(p.parse("PREMIERES SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIERES SAMUEL 1:1'")
797
+ expect(p.parse("PREMIÈRES SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIÈRES SAMUEL 1:1'")
798
+ expect(p.parse("PREMIERE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIERE SAMUEL 1:1'")
799
+ expect(p.parse("PREMIERS SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIERS SAMUEL 1:1'")
800
+ expect(p.parse("PREMIÈRE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIÈRE SAMUEL 1:1'")
801
+ expect(p.parse("PREMIER SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIER SAMUEL 1:1'")
802
+ expect(p.parse("1ERE. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ERE. SAMUEL 1:1'")
803
+ expect(p.parse("1ÈRE. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ÈRE. SAMUEL 1:1'")
804
+ expect(p.parse("1ER. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ER. SAMUEL 1:1'")
805
+ expect(p.parse("1ERE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ERE SAMUEL 1:1'")
806
+ expect(p.parse("1RE. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1RE. SAMUEL 1:1'")
807
+ expect(p.parse("1ÈRE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ÈRE SAMUEL 1:1'")
808
+ expect(p.parse("1ER SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ER SAMUEL 1:1'")
809
+ expect(p.parse("1RE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1RE SAMUEL 1:1'")
810
+ expect(p.parse("1. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAMUEL 1:1'")
811
+ expect(p.parse("I. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I. SAMUEL 1:1'")
812
+ expect(p.parse("1 SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAMUEL 1:1'")
813
+ expect(p.parse("I SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I SAMUEL 1:1'")
814
+ expect(p.parse("1 SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAM 1:1'")
815
+ expect(p.parse("1 SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SA 1:1'")
816
+ expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'")
817
+ expect(p.parse("1 S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 S 1:1'")
818
+ ;
819
+ return true;
820
+ });
821
+ });
822
+
823
+ describe("Localized book 2Kgs (fr)", function() {
824
+ var p;
825
+ p = {};
826
+ beforeEach(function() {
827
+ p = new bcv_parser();
828
+ p.set_options({
829
+ book_alone_strategy: "ignore",
830
+ book_sequence_strategy: "ignore",
831
+ osis_compaction_strategy: "bc",
832
+ captive_end_digits_strategy: "delete"
833
+ });
834
+ return p.include_apocrypha(true);
835
+ });
836
+ return it("should handle book: 2Kgs (fr)", function() {
837
+
838
+ expect(p.parse("Deuxiemes Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxiemes Rois 1:1'")
839
+ expect(p.parse("Deuxièmes Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxièmes Rois 1:1'")
840
+ expect(p.parse("Deuxieme Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxieme Rois 1:1'")
841
+ expect(p.parse("Deuxième Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxième Rois 1:1'")
842
+ expect(p.parse("2eme. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2eme. Rois 1:1'")
843
+ expect(p.parse("2ème. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ème. Rois 1:1'")
844
+ expect(p.parse("2de. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2de. Rois 1:1'")
845
+ expect(p.parse("2eme Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2eme Rois 1:1'")
846
+ expect(p.parse("2ème Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ème Rois 1:1'")
847
+ expect(p.parse("2d. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2d. Rois 1:1'")
848
+ expect(p.parse("2de Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2de Rois 1:1'")
849
+ expect(p.parse("2e. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2e. Rois 1:1'")
850
+ expect(p.parse("II. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II. Rois 1:1'")
851
+ expect(p.parse("2. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Rois 1:1'")
852
+ expect(p.parse("2d Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2d Rois 1:1'")
853
+ expect(p.parse("2e Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2e Rois 1:1'")
854
+ expect(p.parse("II Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II Rois 1:1'")
855
+ expect(p.parse("2 Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Rois 1:1'")
856
+ expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'")
857
+ expect(p.parse("2 R 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 R 1:1'")
858
+ p.include_apocrypha(false)
859
+ expect(p.parse("DEUXIEMES ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIEMES ROIS 1:1'")
860
+ expect(p.parse("DEUXIÈMES ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIÈMES ROIS 1:1'")
861
+ expect(p.parse("DEUXIEME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIEME ROIS 1:1'")
862
+ expect(p.parse("DEUXIÈME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIÈME ROIS 1:1'")
863
+ expect(p.parse("2EME. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2EME. ROIS 1:1'")
864
+ expect(p.parse("2ÈME. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ÈME. ROIS 1:1'")
865
+ expect(p.parse("2DE. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2DE. ROIS 1:1'")
866
+ expect(p.parse("2EME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2EME ROIS 1:1'")
867
+ expect(p.parse("2ÈME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ÈME ROIS 1:1'")
868
+ expect(p.parse("2D. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2D. ROIS 1:1'")
869
+ expect(p.parse("2DE ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2DE ROIS 1:1'")
870
+ expect(p.parse("2E. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2E. ROIS 1:1'")
871
+ expect(p.parse("II. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II. ROIS 1:1'")
872
+ expect(p.parse("2. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. ROIS 1:1'")
873
+ expect(p.parse("2D ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2D ROIS 1:1'")
874
+ expect(p.parse("2E ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2E ROIS 1:1'")
875
+ expect(p.parse("II ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II ROIS 1:1'")
876
+ expect(p.parse("2 ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 ROIS 1:1'")
877
+ expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'")
878
+ expect(p.parse("2 R 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 R 1:1'")
879
+ ;
880
+ return true;
881
+ });
882
+ });
883
+
884
+ describe("Localized book 1Kgs (fr)", function() {
885
+ var p;
886
+ p = {};
887
+ beforeEach(function() {
888
+ p = new bcv_parser();
889
+ p.set_options({
890
+ book_alone_strategy: "ignore",
891
+ book_sequence_strategy: "ignore",
892
+ osis_compaction_strategy: "bc",
893
+ captive_end_digits_strategy: "delete"
894
+ });
895
+ return p.include_apocrypha(true);
896
+ });
897
+ return it("should handle book: 1Kgs (fr)", function() {
898
+
899
+ expect(p.parse("Premieres Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premieres Rois 1:1'")
900
+ expect(p.parse("Premières Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premières Rois 1:1'")
901
+ expect(p.parse("Premiere Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premiere Rois 1:1'")
902
+ expect(p.parse("Premiers Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premiers Rois 1:1'")
903
+ expect(p.parse("Première Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Première Rois 1:1'")
904
+ expect(p.parse("Premier Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premier Rois 1:1'")
905
+ expect(p.parse("1ere. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ere. Rois 1:1'")
906
+ expect(p.parse("1ère. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ère. Rois 1:1'")
907
+ expect(p.parse("1er. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1er. Rois 1:1'")
908
+ expect(p.parse("1ere Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ere Rois 1:1'")
909
+ expect(p.parse("1re. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1re. Rois 1:1'")
910
+ expect(p.parse("1ère Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ère Rois 1:1'")
911
+ expect(p.parse("1er Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1er Rois 1:1'")
912
+ expect(p.parse("1re Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1re Rois 1:1'")
913
+ expect(p.parse("1. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Rois 1:1'")
914
+ expect(p.parse("I. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I. Rois 1:1'")
915
+ expect(p.parse("1 Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Rois 1:1'")
916
+ expect(p.parse("I Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I Rois 1:1'")
917
+ expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'")
918
+ expect(p.parse("1 R 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 R 1:1'")
919
+ p.include_apocrypha(false)
920
+ expect(p.parse("PREMIERES ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIERES ROIS 1:1'")
921
+ expect(p.parse("PREMIÈRES ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIÈRES ROIS 1:1'")
922
+ expect(p.parse("PREMIERE ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIERE ROIS 1:1'")
923
+ expect(p.parse("PREMIERS ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIERS ROIS 1:1'")
924
+ expect(p.parse("PREMIÈRE ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIÈRE ROIS 1:1'")
925
+ expect(p.parse("PREMIER ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIER ROIS 1:1'")
926
+ expect(p.parse("1ERE. ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ERE. ROIS 1:1'")
927
+ expect(p.parse("1ÈRE. ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ÈRE. ROIS 1:1'")
928
+ expect(p.parse("1ER. ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ER. ROIS 1:1'")
929
+ expect(p.parse("1ERE ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ERE ROIS 1:1'")
930
+ expect(p.parse("1RE. ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1RE. ROIS 1:1'")
931
+ expect(p.parse("1ÈRE ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ÈRE ROIS 1:1'")
932
+ expect(p.parse("1ER ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ER ROIS 1:1'")
933
+ expect(p.parse("1RE ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1RE ROIS 1:1'")
934
+ expect(p.parse("1. ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. ROIS 1:1'")
935
+ expect(p.parse("I. ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I. ROIS 1:1'")
936
+ expect(p.parse("1 ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 ROIS 1:1'")
937
+ expect(p.parse("I ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I ROIS 1:1'")
938
+ expect(p.parse("1KGS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1KGS 1:1'")
939
+ expect(p.parse("1 R 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 R 1:1'")
940
+ ;
941
+ return true;
942
+ });
943
+ });
944
+
945
+ describe("Localized book 2Chr (fr)", function() {
946
+ var p;
947
+ p = {};
948
+ beforeEach(function() {
949
+ p = new bcv_parser();
950
+ p.set_options({
951
+ book_alone_strategy: "ignore",
952
+ book_sequence_strategy: "ignore",
953
+ osis_compaction_strategy: "bc",
954
+ captive_end_digits_strategy: "delete"
955
+ });
956
+ return p.include_apocrypha(true);
957
+ });
958
+ return it("should handle book: 2Chr (fr)", function() {
959
+
960
+ expect(p.parse("Deuxiemes Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Deuxiemes Chroniques 1:1'")
961
+ expect(p.parse("Deuxièmes Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Deuxièmes Chroniques 1:1'")
962
+ expect(p.parse("Deuxieme Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Deuxieme Chroniques 1:1'")
963
+ expect(p.parse("Deuxième Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Deuxième Chroniques 1:1'")
964
+ expect(p.parse("2eme. Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2eme. Chroniques 1:1'")
965
+ expect(p.parse("2ème. Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2ème. Chroniques 1:1'")
966
+ expect(p.parse("2de. Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2de. Chroniques 1:1'")
967
+ expect(p.parse("2eme Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2eme Chroniques 1:1'")
968
+ expect(p.parse("2ème Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2ème Chroniques 1:1'")
969
+ expect(p.parse("2d. Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2d. Chroniques 1:1'")
970
+ expect(p.parse("2de Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2de Chroniques 1:1'")
971
+ expect(p.parse("2e. Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2e. Chroniques 1:1'")
972
+ expect(p.parse("II. Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II. Chroniques 1:1'")
973
+ expect(p.parse("2. Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Chroniques 1:1'")
974
+ expect(p.parse("2d Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2d Chroniques 1:1'")
975
+ expect(p.parse("2e Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2e Chroniques 1:1'")
976
+ expect(p.parse("II Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II Chroniques 1:1'")
977
+ expect(p.parse("2 Chroniques 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Chroniques 1:1'")
978
+ expect(p.parse("2 Chron 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Chron 1:1'")
979
+ expect(p.parse("2 Chro 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Chro 1:1'")
980
+ expect(p.parse("2 Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Chr 1:1'")
981
+ expect(p.parse("2 Ch 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Ch 1:1'")
982
+ expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'")
983
+ p.include_apocrypha(false)
984
+ expect(p.parse("DEUXIEMES CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'DEUXIEMES CHRONIQUES 1:1'")
985
+ expect(p.parse("DEUXIÈMES CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'DEUXIÈMES CHRONIQUES 1:1'")
986
+ expect(p.parse("DEUXIEME CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'DEUXIEME CHRONIQUES 1:1'")
987
+ expect(p.parse("DEUXIÈME CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'DEUXIÈME CHRONIQUES 1:1'")
988
+ expect(p.parse("2EME. CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2EME. CHRONIQUES 1:1'")
989
+ expect(p.parse("2ÈME. CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2ÈME. CHRONIQUES 1:1'")
990
+ expect(p.parse("2DE. CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2DE. CHRONIQUES 1:1'")
991
+ expect(p.parse("2EME CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2EME CHRONIQUES 1:1'")
992
+ expect(p.parse("2ÈME CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2ÈME CHRONIQUES 1:1'")
993
+ expect(p.parse("2D. CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2D. CHRONIQUES 1:1'")
994
+ expect(p.parse("2DE CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2DE CHRONIQUES 1:1'")
995
+ expect(p.parse("2E. CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2E. CHRONIQUES 1:1'")
996
+ expect(p.parse("II. CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II. CHRONIQUES 1:1'")
997
+ expect(p.parse("2. CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. CHRONIQUES 1:1'")
998
+ expect(p.parse("2D CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2D CHRONIQUES 1:1'")
999
+ expect(p.parse("2E CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2E CHRONIQUES 1:1'")
1000
+ expect(p.parse("II CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'II CHRONIQUES 1:1'")
1001
+ expect(p.parse("2 CHRONIQUES 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CHRONIQUES 1:1'")
1002
+ expect(p.parse("2 CHRON 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CHRON 1:1'")
1003
+ expect(p.parse("2 CHRO 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CHRO 1:1'")
1004
+ expect(p.parse("2 CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CHR 1:1'")
1005
+ expect(p.parse("2 CH 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CH 1:1'")
1006
+ expect(p.parse("2CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2CHR 1:1'")
1007
+ ;
1008
+ return true;
1009
+ });
1010
+ });
1011
+
1012
+ describe("Localized book 1Chr (fr)", function() {
1013
+ var p;
1014
+ p = {};
1015
+ beforeEach(function() {
1016
+ p = new bcv_parser();
1017
+ p.set_options({
1018
+ book_alone_strategy: "ignore",
1019
+ book_sequence_strategy: "ignore",
1020
+ osis_compaction_strategy: "bc",
1021
+ captive_end_digits_strategy: "delete"
1022
+ });
1023
+ return p.include_apocrypha(true);
1024
+ });
1025
+ return it("should handle book: 1Chr (fr)", function() {
1026
+
1027
+ expect(p.parse("Premieres Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Premieres Chroniques 1:1'")
1028
+ expect(p.parse("Premières Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Premières Chroniques 1:1'")
1029
+ expect(p.parse("Premiere Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Premiere Chroniques 1:1'")
1030
+ expect(p.parse("Premiers Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Premiers Chroniques 1:1'")
1031
+ expect(p.parse("Première Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Première Chroniques 1:1'")
1032
+ expect(p.parse("Premier Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Premier Chroniques 1:1'")
1033
+ expect(p.parse("1ere. Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ere. Chroniques 1:1'")
1034
+ expect(p.parse("1ère. Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ère. Chroniques 1:1'")
1035
+ expect(p.parse("1er. Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1er. Chroniques 1:1'")
1036
+ expect(p.parse("1ere Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ere Chroniques 1:1'")
1037
+ expect(p.parse("1re. Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1re. Chroniques 1:1'")
1038
+ expect(p.parse("1ère Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ère Chroniques 1:1'")
1039
+ expect(p.parse("1er Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1er Chroniques 1:1'")
1040
+ expect(p.parse("1re Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1re Chroniques 1:1'")
1041
+ expect(p.parse("1. Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Chroniques 1:1'")
1042
+ expect(p.parse("I. Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I. Chroniques 1:1'")
1043
+ expect(p.parse("1 Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Chroniques 1:1'")
1044
+ expect(p.parse("I Chroniques 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I Chroniques 1:1'")
1045
+ expect(p.parse("1 Chron 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Chron 1:1'")
1046
+ expect(p.parse("1 Chro 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Chro 1:1'")
1047
+ expect(p.parse("1 Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Chr 1:1'")
1048
+ expect(p.parse("1 Ch 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Ch 1:1'")
1049
+ expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'")
1050
+ p.include_apocrypha(false)
1051
+ expect(p.parse("PREMIERES CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PREMIERES CHRONIQUES 1:1'")
1052
+ expect(p.parse("PREMIÈRES CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PREMIÈRES CHRONIQUES 1:1'")
1053
+ expect(p.parse("PREMIERE CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PREMIERE CHRONIQUES 1:1'")
1054
+ expect(p.parse("PREMIERS CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PREMIERS CHRONIQUES 1:1'")
1055
+ expect(p.parse("PREMIÈRE CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PREMIÈRE CHRONIQUES 1:1'")
1056
+ expect(p.parse("PREMIER CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'PREMIER CHRONIQUES 1:1'")
1057
+ expect(p.parse("1ERE. CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ERE. CHRONIQUES 1:1'")
1058
+ expect(p.parse("1ÈRE. CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ÈRE. CHRONIQUES 1:1'")
1059
+ expect(p.parse("1ER. CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ER. CHRONIQUES 1:1'")
1060
+ expect(p.parse("1ERE CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ERE CHRONIQUES 1:1'")
1061
+ expect(p.parse("1RE. CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1RE. CHRONIQUES 1:1'")
1062
+ expect(p.parse("1ÈRE CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ÈRE CHRONIQUES 1:1'")
1063
+ expect(p.parse("1ER CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1ER CHRONIQUES 1:1'")
1064
+ expect(p.parse("1RE CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1RE CHRONIQUES 1:1'")
1065
+ expect(p.parse("1. CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. CHRONIQUES 1:1'")
1066
+ expect(p.parse("I. CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I. CHRONIQUES 1:1'")
1067
+ expect(p.parse("1 CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CHRONIQUES 1:1'")
1068
+ expect(p.parse("I CHRONIQUES 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'I CHRONIQUES 1:1'")
1069
+ expect(p.parse("1 CHRON 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CHRON 1:1'")
1070
+ expect(p.parse("1 CHRO 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CHRO 1:1'")
1071
+ expect(p.parse("1 CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CHR 1:1'")
1072
+ expect(p.parse("1 CH 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CH 1:1'")
1073
+ expect(p.parse("1CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1CHR 1:1'")
1074
+ ;
1075
+ return true;
1076
+ });
1077
+ });
1078
+
1079
+ describe("Localized book Ezra (fr)", function() {
1080
+ var p;
1081
+ p = {};
1082
+ beforeEach(function() {
1083
+ p = new bcv_parser();
1084
+ p.set_options({
1085
+ book_alone_strategy: "ignore",
1086
+ book_sequence_strategy: "ignore",
1087
+ osis_compaction_strategy: "bc",
1088
+ captive_end_digits_strategy: "delete"
1089
+ });
1090
+ return p.include_apocrypha(true);
1091
+ });
1092
+ return it("should handle book: Ezra (fr)", function() {
1093
+
1094
+ expect(p.parse("Esdras 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Esdras 1:1'")
1095
+ expect(p.parse("Esdr 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Esdr 1:1'")
1096
+ expect(p.parse("Ezra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezra 1:1'")
1097
+ expect(p.parse("Esd 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Esd 1:1'")
1098
+ p.include_apocrypha(false)
1099
+ expect(p.parse("ESDRAS 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'ESDRAS 1:1'")
1100
+ expect(p.parse("ESDR 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'ESDR 1:1'")
1101
+ expect(p.parse("EZRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZRA 1:1'")
1102
+ expect(p.parse("ESD 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'ESD 1:1'")
1103
+ ;
1104
+ return true;
1105
+ });
1106
+ });
1107
+
1108
+ describe("Localized book Neh (fr)", function() {
1109
+ var p;
1110
+ p = {};
1111
+ beforeEach(function() {
1112
+ p = new bcv_parser();
1113
+ p.set_options({
1114
+ book_alone_strategy: "ignore",
1115
+ book_sequence_strategy: "ignore",
1116
+ osis_compaction_strategy: "bc",
1117
+ captive_end_digits_strategy: "delete"
1118
+ });
1119
+ return p.include_apocrypha(true);
1120
+ });
1121
+ return it("should handle book: Neh (fr)", function() {
1122
+
1123
+ expect(p.parse("Nehemie 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Nehemie 1:1'")
1124
+ expect(p.parse("Nehémie 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Nehémie 1:1'")
1125
+ expect(p.parse("Néhemie 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Néhemie 1:1'")
1126
+ expect(p.parse("Néhémie 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Néhémie 1:1'")
1127
+ expect(p.parse("Neh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Neh 1:1'")
1128
+ expect(p.parse("Néh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Néh 1:1'")
1129
+ expect(p.parse("Ne 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Ne 1:1'")
1130
+ expect(p.parse("Né 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Né 1:1'")
1131
+ p.include_apocrypha(false)
1132
+ expect(p.parse("NEHEMIE 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEHEMIE 1:1'")
1133
+ expect(p.parse("NEHÉMIE 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEHÉMIE 1:1'")
1134
+ expect(p.parse("NÉHEMIE 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NÉHEMIE 1:1'")
1135
+ expect(p.parse("NÉHÉMIE 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NÉHÉMIE 1:1'")
1136
+ expect(p.parse("NEH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEH 1:1'")
1137
+ expect(p.parse("NÉH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NÉH 1:1'")
1138
+ expect(p.parse("NE 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NE 1:1'")
1139
+ expect(p.parse("NÉ 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NÉ 1:1'")
1140
+ ;
1141
+ return true;
1142
+ });
1143
+ });
1144
+
1145
+ describe("Localized book GkEsth (fr)", function() {
1146
+ var p;
1147
+ p = {};
1148
+ beforeEach(function() {
1149
+ p = new bcv_parser();
1150
+ p.set_options({
1151
+ book_alone_strategy: "ignore",
1152
+ book_sequence_strategy: "ignore",
1153
+ osis_compaction_strategy: "bc",
1154
+ captive_end_digits_strategy: "delete"
1155
+ });
1156
+ return p.include_apocrypha(true);
1157
+ });
1158
+ return it("should handle book: GkEsth (fr)", function() {
1159
+
1160
+ expect(p.parse("Esther (Grec) 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esther (Grec) 1:1'")
1161
+ expect(p.parse("Esther (grec) 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esther (grec) 1:1'")
1162
+ expect(p.parse("Esther Grec 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esther Grec 1:1'")
1163
+ expect(p.parse("Esther grec 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esther grec 1:1'")
1164
+ expect(p.parse("Esther Gr 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esther Gr 1:1'")
1165
+ expect(p.parse("Esther gr 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esther gr 1:1'")
1166
+ expect(p.parse("Esth Gr 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esth Gr 1:1'")
1167
+ expect(p.parse("Esth gr 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Esth gr 1:1'")
1168
+ expect(p.parse("GkEsth 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'GkEsth 1:1'")
1169
+ ;
1170
+ return true;
1171
+ });
1172
+ });
1173
+
1174
+ describe("Localized book Esth (fr)", function() {
1175
+ var p;
1176
+ p = {};
1177
+ beforeEach(function() {
1178
+ p = new bcv_parser();
1179
+ p.set_options({
1180
+ book_alone_strategy: "ignore",
1181
+ book_sequence_strategy: "ignore",
1182
+ osis_compaction_strategy: "bc",
1183
+ captive_end_digits_strategy: "delete"
1184
+ });
1185
+ return p.include_apocrypha(true);
1186
+ });
1187
+ return it("should handle book: Esth (fr)", function() {
1188
+
1189
+ expect(p.parse("Esther 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esther 1:1'")
1190
+ expect(p.parse("Esth 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esth 1:1'")
1191
+ expect(p.parse("Est 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Est 1:1'")
1192
+ p.include_apocrypha(false)
1193
+ expect(p.parse("ESTHER 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTHER 1:1'")
1194
+ expect(p.parse("ESTH 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTH 1:1'")
1195
+ expect(p.parse("EST 1:1").osis()).toEqual("Esth.1.1", "parsing: 'EST 1:1'")
1196
+ ;
1197
+ return true;
1198
+ });
1199
+ });
1200
+
1201
+ describe("Localized book Job (fr)", function() {
1202
+ var p;
1203
+ p = {};
1204
+ beforeEach(function() {
1205
+ p = new bcv_parser();
1206
+ p.set_options({
1207
+ book_alone_strategy: "ignore",
1208
+ book_sequence_strategy: "ignore",
1209
+ osis_compaction_strategy: "bc",
1210
+ captive_end_digits_strategy: "delete"
1211
+ });
1212
+ return p.include_apocrypha(true);
1213
+ });
1214
+ return it("should handle book: Job (fr)", function() {
1215
+
1216
+ expect(p.parse("Job 1:1").osis()).toEqual("Job.1.1", "parsing: 'Job 1:1'")
1217
+ expect(p.parse("Jb 1:1").osis()).toEqual("Job.1.1", "parsing: 'Jb 1:1'")
1218
+ p.include_apocrypha(false)
1219
+ expect(p.parse("JOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JOB 1:1'")
1220
+ expect(p.parse("JB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JB 1:1'")
1221
+ ;
1222
+ return true;
1223
+ });
1224
+ });
1225
+
1226
+ describe("Localized book Ps (fr)", function() {
1227
+ var p;
1228
+ p = {};
1229
+ beforeEach(function() {
1230
+ p = new bcv_parser();
1231
+ p.set_options({
1232
+ book_alone_strategy: "ignore",
1233
+ book_sequence_strategy: "ignore",
1234
+ osis_compaction_strategy: "bc",
1235
+ captive_end_digits_strategy: "delete"
1236
+ });
1237
+ return p.include_apocrypha(true);
1238
+ });
1239
+ return it("should handle book: Ps (fr)", function() {
1240
+
1241
+ expect(p.parse("Psaumes 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psaumes 1:1'")
1242
+ expect(p.parse("Psaume 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psaume 1:1'")
1243
+ expect(p.parse("Psau 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psau 1:1'")
1244
+ expect(p.parse("Psa 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psa 1:1'")
1245
+ expect(p.parse("Ps 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Ps 1:1'")
1246
+ p.include_apocrypha(false)
1247
+ expect(p.parse("PSAUMES 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSAUMES 1:1'")
1248
+ expect(p.parse("PSAUME 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSAUME 1:1'")
1249
+ expect(p.parse("PSAU 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSAU 1:1'")
1250
+ expect(p.parse("PSA 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSA 1:1'")
1251
+ expect(p.parse("PS 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PS 1:1'")
1252
+ ;
1253
+ return true;
1254
+ });
1255
+ });
1256
+
1257
+ describe("Localized book PrAzar (fr)", 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: PrAzar (fr)", function() {
1271
+
1272
+ expect(p.parse("La Priere d'Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Priere d'Azariah 1:1'")
1273
+ expect(p.parse("La Priere d'Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Priere d'Azarias 1:1'")
1274
+ expect(p.parse("La Priere d’Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Priere d’Azariah 1:1'")
1275
+ expect(p.parse("La Priere d’Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Priere d’Azarias 1:1'")
1276
+ expect(p.parse("La Prière d'Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Prière d'Azariah 1:1'")
1277
+ expect(p.parse("La Prière d'Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Prière d'Azarias 1:1'")
1278
+ expect(p.parse("La Prière d’Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Prière d’Azariah 1:1'")
1279
+ expect(p.parse("La Prière d’Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'La Prière d’Azarias 1:1'")
1280
+ expect(p.parse("Priere d'Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Priere d'Azariah 1:1'")
1281
+ expect(p.parse("Priere d'Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Priere d'Azarias 1:1'")
1282
+ expect(p.parse("Priere d’Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Priere d’Azariah 1:1'")
1283
+ expect(p.parse("Priere d’Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Priere d’Azarias 1:1'")
1284
+ expect(p.parse("Prière d'Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Prière d'Azariah 1:1'")
1285
+ expect(p.parse("Prière d'Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Prière d'Azarias 1:1'")
1286
+ expect(p.parse("Prière d’Azariah 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Prière d’Azariah 1:1'")
1287
+ expect(p.parse("Prière d’Azarias 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Prière d’Azarias 1:1'")
1288
+ expect(p.parse("Pr. Azar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Pr. Azar 1:1'")
1289
+ expect(p.parse("Pr Azar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Pr Azar 1:1'")
1290
+ expect(p.parse("PrAzar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'PrAzar 1:1'")
1291
+ ;
1292
+ return true;
1293
+ });
1294
+ });
1295
+
1296
+ describe("Localized book Prov (fr)", function() {
1297
+ var p;
1298
+ p = {};
1299
+ beforeEach(function() {
1300
+ p = new bcv_parser();
1301
+ p.set_options({
1302
+ book_alone_strategy: "ignore",
1303
+ book_sequence_strategy: "ignore",
1304
+ osis_compaction_strategy: "bc",
1305
+ captive_end_digits_strategy: "delete"
1306
+ });
1307
+ return p.include_apocrypha(true);
1308
+ });
1309
+ return it("should handle book: Prov (fr)", function() {
1310
+
1311
+ expect(p.parse("Proverbes 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Proverbes 1:1'")
1312
+ expect(p.parse("Prov 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prov 1:1'")
1313
+ expect(p.parse("Pro 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Pro 1:1'")
1314
+ expect(p.parse("Prv 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prv 1:1'")
1315
+ expect(p.parse("Pr 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Pr 1:1'")
1316
+ p.include_apocrypha(false)
1317
+ expect(p.parse("PROVERBES 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROVERBES 1:1'")
1318
+ expect(p.parse("PROV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROV 1:1'")
1319
+ expect(p.parse("PRO 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PRO 1:1'")
1320
+ expect(p.parse("PRV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PRV 1:1'")
1321
+ expect(p.parse("PR 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PR 1:1'")
1322
+ ;
1323
+ return true;
1324
+ });
1325
+ });
1326
+
1327
+ describe("Localized book Eccl (fr)", function() {
1328
+ var p;
1329
+ p = {};
1330
+ beforeEach(function() {
1331
+ p = new bcv_parser();
1332
+ p.set_options({
1333
+ book_alone_strategy: "ignore",
1334
+ book_sequence_strategy: "ignore",
1335
+ osis_compaction_strategy: "bc",
1336
+ captive_end_digits_strategy: "delete"
1337
+ });
1338
+ return p.include_apocrypha(true);
1339
+ });
1340
+ return it("should handle book: Eccl (fr)", function() {
1341
+
1342
+ expect(p.parse("Ecclesiaste 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Ecclesiaste 1:1'")
1343
+ expect(p.parse("Ecclésiaste 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Ecclésiaste 1:1'")
1344
+ expect(p.parse("Qoheleth 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Qoheleth 1:1'")
1345
+ expect(p.parse("Qohelet 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Qohelet 1:1'")
1346
+ expect(p.parse("Eccles 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eccles 1:1'")
1347
+ expect(p.parse("Ecclés 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Ecclés 1:1'")
1348
+ expect(p.parse("Eccl 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eccl 1:1'")
1349
+ expect(p.parse("Ec 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Ec 1:1'")
1350
+ p.include_apocrypha(false)
1351
+ expect(p.parse("ECCLESIASTE 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCLESIASTE 1:1'")
1352
+ expect(p.parse("ECCLÉSIASTE 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCLÉSIASTE 1:1'")
1353
+ expect(p.parse("QOHELETH 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'QOHELETH 1:1'")
1354
+ expect(p.parse("QOHELET 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'QOHELET 1:1'")
1355
+ expect(p.parse("ECCLES 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCLES 1:1'")
1356
+ expect(p.parse("ECCLÉS 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCLÉS 1:1'")
1357
+ expect(p.parse("ECCL 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCL 1:1'")
1358
+ expect(p.parse("EC 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'EC 1:1'")
1359
+ ;
1360
+ return true;
1361
+ });
1362
+ });
1363
+
1364
+ describe("Localized book SgThree (fr)", function() {
1365
+ var p;
1366
+ p = {};
1367
+ beforeEach(function() {
1368
+ p = new bcv_parser();
1369
+ p.set_options({
1370
+ book_alone_strategy: "ignore",
1371
+ book_sequence_strategy: "ignore",
1372
+ osis_compaction_strategy: "bc",
1373
+ captive_end_digits_strategy: "delete"
1374
+ });
1375
+ return p.include_apocrypha(true);
1376
+ });
1377
+ return it("should handle book: SgThree (fr)", function() {
1378
+
1379
+ expect(p.parse("Cantique des Trois Enfants 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Cantique des Trois Enfants 1:1'")
1380
+ expect(p.parse("Cantique des 3 Enfants 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Cantique des 3 Enfants 1:1'")
1381
+ expect(p.parse("SgThree 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'SgThree 1:1'")
1382
+ expect(p.parse("Ct 3 E 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Ct 3 E 1:1'")
1383
+ ;
1384
+ return true;
1385
+ });
1386
+ });
1387
+
1388
+ describe("Localized book Song (fr)", function() {
1389
+ var p;
1390
+ p = {};
1391
+ beforeEach(function() {
1392
+ p = new bcv_parser();
1393
+ p.set_options({
1394
+ book_alone_strategy: "ignore",
1395
+ book_sequence_strategy: "ignore",
1396
+ osis_compaction_strategy: "bc",
1397
+ captive_end_digits_strategy: "delete"
1398
+ });
1399
+ return p.include_apocrypha(true);
1400
+ });
1401
+ return it("should handle book: Song (fr)", function() {
1402
+
1403
+ expect(p.parse("Cantique des Cantiques 1:1").osis()).toEqual("Song.1.1", "parsing: 'Cantique des Cantiques 1:1'")
1404
+ expect(p.parse("Cantique des cantiques 1:1").osis()).toEqual("Song.1.1", "parsing: 'Cantique des cantiques 1:1'")
1405
+ expect(p.parse("Cantiques 1:1").osis()).toEqual("Song.1.1", "parsing: 'Cantiques 1:1'")
1406
+ expect(p.parse("Cantique 1:1").osis()).toEqual("Song.1.1", "parsing: 'Cantique 1:1'")
1407
+ expect(p.parse("Song 1:1").osis()).toEqual("Song.1.1", "parsing: 'Song 1:1'")
1408
+ expect(p.parse("Cnt 1:1").osis()).toEqual("Song.1.1", "parsing: 'Cnt 1:1'")
1409
+ expect(p.parse("Ca 1:1").osis()).toEqual("Song.1.1", "parsing: 'Ca 1:1'")
1410
+ expect(p.parse("Ct 1:1").osis()).toEqual("Song.1.1", "parsing: 'Ct 1:1'")
1411
+ p.include_apocrypha(false)
1412
+ expect(p.parse("CANTIQUE DES CANTIQUES 1:1").osis()).toEqual("Song.1.1", "parsing: 'CANTIQUE DES CANTIQUES 1:1'")
1413
+ expect(p.parse("CANTIQUE DES CANTIQUES 1:1").osis()).toEqual("Song.1.1", "parsing: 'CANTIQUE DES CANTIQUES 1:1'")
1414
+ expect(p.parse("CANTIQUES 1:1").osis()).toEqual("Song.1.1", "parsing: 'CANTIQUES 1:1'")
1415
+ expect(p.parse("CANTIQUE 1:1").osis()).toEqual("Song.1.1", "parsing: 'CANTIQUE 1:1'")
1416
+ expect(p.parse("SONG 1:1").osis()).toEqual("Song.1.1", "parsing: 'SONG 1:1'")
1417
+ expect(p.parse("CNT 1:1").osis()).toEqual("Song.1.1", "parsing: 'CNT 1:1'")
1418
+ expect(p.parse("CA 1:1").osis()).toEqual("Song.1.1", "parsing: 'CA 1:1'")
1419
+ expect(p.parse("CT 1:1").osis()).toEqual("Song.1.1", "parsing: 'CT 1:1'")
1420
+ ;
1421
+ return true;
1422
+ });
1423
+ });
1424
+
1425
+ describe("Localized book Jer (fr)", function() {
1426
+ var p;
1427
+ p = {};
1428
+ beforeEach(function() {
1429
+ p = new bcv_parser();
1430
+ p.set_options({
1431
+ book_alone_strategy: "ignore",
1432
+ book_sequence_strategy: "ignore",
1433
+ osis_compaction_strategy: "bc",
1434
+ captive_end_digits_strategy: "delete"
1435
+ });
1436
+ return p.include_apocrypha(true);
1437
+ });
1438
+ return it("should handle book: Jer (fr)", function() {
1439
+
1440
+ expect(p.parse("Jeremie 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jeremie 1:1'")
1441
+ expect(p.parse("Jerémie 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jerémie 1:1'")
1442
+ expect(p.parse("Jéremie 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jéremie 1:1'")
1443
+ expect(p.parse("Jérémie 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jérémie 1:1'")
1444
+ expect(p.parse("Jerem 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jerem 1:1'")
1445
+ expect(p.parse("Jerém 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jerém 1:1'")
1446
+ expect(p.parse("Jérem 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jérem 1:1'")
1447
+ expect(p.parse("Jérém 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jérém 1:1'")
1448
+ expect(p.parse("Jer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jer 1:1'")
1449
+ expect(p.parse("Jér 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jér 1:1'")
1450
+ expect(p.parse("Je 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Je 1:1'")
1451
+ expect(p.parse("Jr 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jr 1:1'")
1452
+ expect(p.parse("Jé 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jé 1:1'")
1453
+ p.include_apocrypha(false)
1454
+ expect(p.parse("JEREMIE 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JEREMIE 1:1'")
1455
+ expect(p.parse("JERÉMIE 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JERÉMIE 1:1'")
1456
+ expect(p.parse("JÉREMIE 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JÉREMIE 1:1'")
1457
+ expect(p.parse("JÉRÉMIE 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JÉRÉMIE 1:1'")
1458
+ expect(p.parse("JEREM 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JEREM 1:1'")
1459
+ expect(p.parse("JERÉM 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JERÉM 1:1'")
1460
+ expect(p.parse("JÉREM 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JÉREM 1:1'")
1461
+ expect(p.parse("JÉRÉM 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JÉRÉM 1:1'")
1462
+ expect(p.parse("JER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JER 1:1'")
1463
+ expect(p.parse("JÉR 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JÉR 1:1'")
1464
+ expect(p.parse("JE 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JE 1:1'")
1465
+ expect(p.parse("JR 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JR 1:1'")
1466
+ expect(p.parse("JÉ 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JÉ 1:1'")
1467
+ ;
1468
+ return true;
1469
+ });
1470
+ });
1471
+
1472
+ describe("Localized book Ezek (fr)", function() {
1473
+ var p;
1474
+ p = {};
1475
+ beforeEach(function() {
1476
+ p = new bcv_parser();
1477
+ p.set_options({
1478
+ book_alone_strategy: "ignore",
1479
+ book_sequence_strategy: "ignore",
1480
+ osis_compaction_strategy: "bc",
1481
+ captive_end_digits_strategy: "delete"
1482
+ });
1483
+ return p.include_apocrypha(true);
1484
+ });
1485
+ return it("should handle book: Ezek (fr)", function() {
1486
+
1487
+ expect(p.parse("Ezechiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezechiel 1:1'")
1488
+ expect(p.parse("Ezéchiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezéchiel 1:1'")
1489
+ expect(p.parse("Ézechiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ézechiel 1:1'")
1490
+ expect(p.parse("Ézéchiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ézéchiel 1:1'")
1491
+ expect(p.parse("Ezech 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezech 1:1'")
1492
+ expect(p.parse("Ezéch 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezéch 1:1'")
1493
+ expect(p.parse("Ézech 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ézech 1:1'")
1494
+ expect(p.parse("Ézéch 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ézéch 1:1'")
1495
+ expect(p.parse("Ezek 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezek 1:1'")
1496
+ expect(p.parse("Eze 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Eze 1:1'")
1497
+ expect(p.parse("Ezé 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezé 1:1'")
1498
+ expect(p.parse("Ez 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ez 1:1'")
1499
+ p.include_apocrypha(false)
1500
+ expect(p.parse("EZECHIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZECHIEL 1:1'")
1501
+ expect(p.parse("EZÉCHIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZÉCHIEL 1:1'")
1502
+ expect(p.parse("ÉZECHIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ÉZECHIEL 1:1'")
1503
+ expect(p.parse("ÉZÉCHIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ÉZÉCHIEL 1:1'")
1504
+ expect(p.parse("EZECH 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZECH 1:1'")
1505
+ expect(p.parse("EZÉCH 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZÉCH 1:1'")
1506
+ expect(p.parse("ÉZECH 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ÉZECH 1:1'")
1507
+ expect(p.parse("ÉZÉCH 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'ÉZÉCH 1:1'")
1508
+ expect(p.parse("EZEK 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEK 1:1'")
1509
+ expect(p.parse("EZE 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZE 1:1'")
1510
+ expect(p.parse("EZÉ 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZÉ 1:1'")
1511
+ expect(p.parse("EZ 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZ 1:1'")
1512
+ ;
1513
+ return true;
1514
+ });
1515
+ });
1516
+
1517
+ describe("Localized book Dan (fr)", function() {
1518
+ var p;
1519
+ p = {};
1520
+ beforeEach(function() {
1521
+ p = new bcv_parser();
1522
+ p.set_options({
1523
+ book_alone_strategy: "ignore",
1524
+ book_sequence_strategy: "ignore",
1525
+ osis_compaction_strategy: "bc",
1526
+ captive_end_digits_strategy: "delete"
1527
+ });
1528
+ return p.include_apocrypha(true);
1529
+ });
1530
+ return it("should handle book: Dan (fr)", function() {
1531
+
1532
+ expect(p.parse("Daniel 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Daniel 1:1'")
1533
+ expect(p.parse("Dan 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dan 1:1'")
1534
+ expect(p.parse("Da 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Da 1:1'")
1535
+ expect(p.parse("Dn 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dn 1:1'")
1536
+ p.include_apocrypha(false)
1537
+ expect(p.parse("DANIEL 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DANIEL 1:1'")
1538
+ expect(p.parse("DAN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DAN 1:1'")
1539
+ expect(p.parse("DA 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DA 1:1'")
1540
+ expect(p.parse("DN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DN 1:1'")
1541
+ ;
1542
+ return true;
1543
+ });
1544
+ });
1545
+
1546
+ describe("Localized book Hos (fr)", function() {
1547
+ var p;
1548
+ p = {};
1549
+ beforeEach(function() {
1550
+ p = new bcv_parser();
1551
+ p.set_options({
1552
+ book_alone_strategy: "ignore",
1553
+ book_sequence_strategy: "ignore",
1554
+ osis_compaction_strategy: "bc",
1555
+ captive_end_digits_strategy: "delete"
1556
+ });
1557
+ return p.include_apocrypha(true);
1558
+ });
1559
+ return it("should handle book: Hos (fr)", function() {
1560
+
1561
+ expect(p.parse("Osee 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Osee 1:1'")
1562
+ expect(p.parse("Osée 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Osée 1:1'")
1563
+ expect(p.parse("Hos 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hos 1:1'")
1564
+ expect(p.parse("Os 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Os 1:1'")
1565
+ p.include_apocrypha(false)
1566
+ expect(p.parse("OSEE 1:1").osis()).toEqual("Hos.1.1", "parsing: 'OSEE 1:1'")
1567
+ expect(p.parse("OSÉE 1:1").osis()).toEqual("Hos.1.1", "parsing: 'OSÉE 1:1'")
1568
+ expect(p.parse("HOS 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOS 1:1'")
1569
+ expect(p.parse("OS 1:1").osis()).toEqual("Hos.1.1", "parsing: 'OS 1:1'")
1570
+ ;
1571
+ return true;
1572
+ });
1573
+ });
1574
+
1575
+ describe("Localized book Joel (fr)", function() {
1576
+ var p;
1577
+ p = {};
1578
+ beforeEach(function() {
1579
+ p = new bcv_parser();
1580
+ p.set_options({
1581
+ book_alone_strategy: "ignore",
1582
+ book_sequence_strategy: "ignore",
1583
+ osis_compaction_strategy: "bc",
1584
+ captive_end_digits_strategy: "delete"
1585
+ });
1586
+ return p.include_apocrypha(true);
1587
+ });
1588
+ return it("should handle book: Joel (fr)", function() {
1589
+
1590
+ expect(p.parse("Joel 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joel 1:1'")
1591
+ expect(p.parse("Joël 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joël 1:1'")
1592
+ expect(p.parse("Joe 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joe 1:1'")
1593
+ expect(p.parse("Joë 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joë 1:1'")
1594
+ expect(p.parse("Jl 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Jl 1:1'")
1595
+ p.include_apocrypha(false)
1596
+ expect(p.parse("JOEL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOEL 1:1'")
1597
+ expect(p.parse("JOËL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOËL 1:1'")
1598
+ expect(p.parse("JOE 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOE 1:1'")
1599
+ expect(p.parse("JOË 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOË 1:1'")
1600
+ expect(p.parse("JL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JL 1:1'")
1601
+ ;
1602
+ return true;
1603
+ });
1604
+ });
1605
+
1606
+ describe("Localized book Amos (fr)", function() {
1607
+ var p;
1608
+ p = {};
1609
+ beforeEach(function() {
1610
+ p = new bcv_parser();
1611
+ p.set_options({
1612
+ book_alone_strategy: "ignore",
1613
+ book_sequence_strategy: "ignore",
1614
+ osis_compaction_strategy: "bc",
1615
+ captive_end_digits_strategy: "delete"
1616
+ });
1617
+ return p.include_apocrypha(true);
1618
+ });
1619
+ return it("should handle book: Amos (fr)", function() {
1620
+
1621
+ expect(p.parse("Amos 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amos 1:1'")
1622
+ expect(p.parse("Amo 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amo 1:1'")
1623
+ expect(p.parse("Am 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Am 1:1'")
1624
+ p.include_apocrypha(false)
1625
+ expect(p.parse("AMOS 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMOS 1:1'")
1626
+ expect(p.parse("AMO 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMO 1:1'")
1627
+ expect(p.parse("AM 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AM 1:1'")
1628
+ ;
1629
+ return true;
1630
+ });
1631
+ });
1632
+
1633
+ describe("Localized book Obad (fr)", function() {
1634
+ var p;
1635
+ p = {};
1636
+ beforeEach(function() {
1637
+ p = new bcv_parser();
1638
+ p.set_options({
1639
+ book_alone_strategy: "ignore",
1640
+ book_sequence_strategy: "ignore",
1641
+ osis_compaction_strategy: "bc",
1642
+ captive_end_digits_strategy: "delete"
1643
+ });
1644
+ return p.include_apocrypha(true);
1645
+ });
1646
+ return it("should handle book: Obad (fr)", function() {
1647
+
1648
+ expect(p.parse("Abdias 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Abdias 1:1'")
1649
+ expect(p.parse("Obad 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obad 1:1'")
1650
+ expect(p.parse("Abd 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Abd 1:1'")
1651
+ expect(p.parse("Ab 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Ab 1:1'")
1652
+ p.include_apocrypha(false)
1653
+ expect(p.parse("ABDIAS 1:1").osis()).toEqual("Obad.1.1", "parsing: 'ABDIAS 1:1'")
1654
+ expect(p.parse("OBAD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBAD 1:1'")
1655
+ expect(p.parse("ABD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'ABD 1:1'")
1656
+ expect(p.parse("AB 1:1").osis()).toEqual("Obad.1.1", "parsing: 'AB 1:1'")
1657
+ ;
1658
+ return true;
1659
+ });
1660
+ });
1661
+
1662
+ describe("Localized book Jonah (fr)", function() {
1663
+ var p;
1664
+ p = {};
1665
+ beforeEach(function() {
1666
+ p = new bcv_parser();
1667
+ p.set_options({
1668
+ book_alone_strategy: "ignore",
1669
+ book_sequence_strategy: "ignore",
1670
+ osis_compaction_strategy: "bc",
1671
+ captive_end_digits_strategy: "delete"
1672
+ });
1673
+ return p.include_apocrypha(true);
1674
+ });
1675
+ return it("should handle book: Jonah (fr)", function() {
1676
+
1677
+ expect(p.parse("Jonah 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonah 1:1'")
1678
+ expect(p.parse("Jonas 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonas 1:1'")
1679
+ expect(p.parse("Jon 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jon 1:1'")
1680
+ p.include_apocrypha(false)
1681
+ expect(p.parse("JONAH 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAH 1:1'")
1682
+ expect(p.parse("JONAS 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAS 1:1'")
1683
+ expect(p.parse("JON 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JON 1:1'")
1684
+ ;
1685
+ return true;
1686
+ });
1687
+ });
1688
+
1689
+ describe("Localized book Mic (fr)", function() {
1690
+ var p;
1691
+ p = {};
1692
+ beforeEach(function() {
1693
+ p = new bcv_parser();
1694
+ p.set_options({
1695
+ book_alone_strategy: "ignore",
1696
+ book_sequence_strategy: "ignore",
1697
+ osis_compaction_strategy: "bc",
1698
+ captive_end_digits_strategy: "delete"
1699
+ });
1700
+ return p.include_apocrypha(true);
1701
+ });
1702
+ return it("should handle book: Mic (fr)", function() {
1703
+
1704
+ expect(p.parse("Michee 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Michee 1:1'")
1705
+ expect(p.parse("Michée 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Michée 1:1'")
1706
+ expect(p.parse("Mich 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mich 1:1'")
1707
+ expect(p.parse("Mic 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mic 1:1'")
1708
+ expect(p.parse("Mi 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mi 1:1'")
1709
+ p.include_apocrypha(false)
1710
+ expect(p.parse("MICHEE 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICHEE 1:1'")
1711
+ expect(p.parse("MICHÉE 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICHÉE 1:1'")
1712
+ expect(p.parse("MICH 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICH 1:1'")
1713
+ expect(p.parse("MIC 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIC 1:1'")
1714
+ expect(p.parse("MI 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MI 1:1'")
1715
+ ;
1716
+ return true;
1717
+ });
1718
+ });
1719
+
1720
+ describe("Localized book Nah (fr)", function() {
1721
+ var p;
1722
+ p = {};
1723
+ beforeEach(function() {
1724
+ p = new bcv_parser();
1725
+ p.set_options({
1726
+ book_alone_strategy: "ignore",
1727
+ book_sequence_strategy: "ignore",
1728
+ osis_compaction_strategy: "bc",
1729
+ captive_end_digits_strategy: "delete"
1730
+ });
1731
+ return p.include_apocrypha(true);
1732
+ });
1733
+ return it("should handle book: Nah (fr)", function() {
1734
+
1735
+ expect(p.parse("Nahoum 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nahoum 1:1'")
1736
+ expect(p.parse("Nahum 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nahum 1:1'")
1737
+ expect(p.parse("Nah 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nah 1:1'")
1738
+ expect(p.parse("Na 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Na 1:1'")
1739
+ p.include_apocrypha(false)
1740
+ expect(p.parse("NAHOUM 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAHOUM 1:1'")
1741
+ expect(p.parse("NAHUM 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAHUM 1:1'")
1742
+ expect(p.parse("NAH 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAH 1:1'")
1743
+ expect(p.parse("NA 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NA 1:1'")
1744
+ ;
1745
+ return true;
1746
+ });
1747
+ });
1748
+
1749
+ describe("Localized book Hab (fr)", function() {
1750
+ var p;
1751
+ p = {};
1752
+ beforeEach(function() {
1753
+ p = new bcv_parser();
1754
+ p.set_options({
1755
+ book_alone_strategy: "ignore",
1756
+ book_sequence_strategy: "ignore",
1757
+ osis_compaction_strategy: "bc",
1758
+ captive_end_digits_strategy: "delete"
1759
+ });
1760
+ return p.include_apocrypha(true);
1761
+ });
1762
+ return it("should handle book: Hab (fr)", function() {
1763
+
1764
+ expect(p.parse("Habacuc 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habacuc 1:1'")
1765
+ expect(p.parse("Habakuk 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habakuk 1:1'")
1766
+ expect(p.parse("Habaquq 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habaquq 1:1'")
1767
+ expect(p.parse("Habac 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habac 1:1'")
1768
+ expect(p.parse("Habak 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habak 1:1'")
1769
+ expect(p.parse("Hab 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Hab 1:1'")
1770
+ expect(p.parse("Ha 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Ha 1:1'")
1771
+ p.include_apocrypha(false)
1772
+ expect(p.parse("HABACUC 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABACUC 1:1'")
1773
+ expect(p.parse("HABAKUK 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAKUK 1:1'")
1774
+ expect(p.parse("HABAQUQ 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAQUQ 1:1'")
1775
+ expect(p.parse("HABAC 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAC 1:1'")
1776
+ expect(p.parse("HABAK 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAK 1:1'")
1777
+ expect(p.parse("HAB 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HAB 1:1'")
1778
+ expect(p.parse("HA 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HA 1:1'")
1779
+ ;
1780
+ return true;
1781
+ });
1782
+ });
1783
+
1784
+ describe("Localized book Zeph (fr)", function() {
1785
+ var p;
1786
+ p = {};
1787
+ beforeEach(function() {
1788
+ p = new bcv_parser();
1789
+ p.set_options({
1790
+ book_alone_strategy: "ignore",
1791
+ book_sequence_strategy: "ignore",
1792
+ osis_compaction_strategy: "bc",
1793
+ captive_end_digits_strategy: "delete"
1794
+ });
1795
+ return p.include_apocrypha(true);
1796
+ });
1797
+ return it("should handle book: Zeph (fr)", function() {
1798
+
1799
+ expect(p.parse("Sophonie 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Sophonie 1:1'")
1800
+ expect(p.parse("Soph 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Soph 1:1'")
1801
+ expect(p.parse("Zeph 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zeph 1:1'")
1802
+ expect(p.parse("So 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'So 1:1'")
1803
+ p.include_apocrypha(false)
1804
+ expect(p.parse("SOPHONIE 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SOPHONIE 1:1'")
1805
+ expect(p.parse("SOPH 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SOPH 1:1'")
1806
+ expect(p.parse("ZEPH 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEPH 1:1'")
1807
+ expect(p.parse("SO 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'SO 1:1'")
1808
+ ;
1809
+ return true;
1810
+ });
1811
+ });
1812
+
1813
+ describe("Localized book Hag (fr)", function() {
1814
+ var p;
1815
+ p = {};
1816
+ beforeEach(function() {
1817
+ p = new bcv_parser();
1818
+ p.set_options({
1819
+ book_alone_strategy: "ignore",
1820
+ book_sequence_strategy: "ignore",
1821
+ osis_compaction_strategy: "bc",
1822
+ captive_end_digits_strategy: "delete"
1823
+ });
1824
+ return p.include_apocrypha(true);
1825
+ });
1826
+ return it("should handle book: Hag (fr)", function() {
1827
+
1828
+ expect(p.parse("Aggee 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Aggee 1:1'")
1829
+ expect(p.parse("Aggée 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Aggée 1:1'")
1830
+ expect(p.parse("Agg 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Agg 1:1'")
1831
+ expect(p.parse("Hag 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hag 1:1'")
1832
+ expect(p.parse("Ag 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Ag 1:1'")
1833
+ p.include_apocrypha(false)
1834
+ expect(p.parse("AGGEE 1:1").osis()).toEqual("Hag.1.1", "parsing: 'AGGEE 1:1'")
1835
+ expect(p.parse("AGGÉE 1:1").osis()).toEqual("Hag.1.1", "parsing: 'AGGÉE 1:1'")
1836
+ expect(p.parse("AGG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'AGG 1:1'")
1837
+ expect(p.parse("HAG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAG 1:1'")
1838
+ expect(p.parse("AG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'AG 1:1'")
1839
+ ;
1840
+ return true;
1841
+ });
1842
+ });
1843
+
1844
+ describe("Localized book Zech (fr)", function() {
1845
+ var p;
1846
+ p = {};
1847
+ beforeEach(function() {
1848
+ p = new bcv_parser();
1849
+ p.set_options({
1850
+ book_alone_strategy: "ignore",
1851
+ book_sequence_strategy: "ignore",
1852
+ osis_compaction_strategy: "bc",
1853
+ captive_end_digits_strategy: "delete"
1854
+ });
1855
+ return p.include_apocrypha(true);
1856
+ });
1857
+ return it("should handle book: Zech (fr)", function() {
1858
+
1859
+ expect(p.parse("Zaccharie 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zaccharie 1:1'")
1860
+ expect(p.parse("Zacharie 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zacharie 1:1'")
1861
+ expect(p.parse("Zacch 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zacch 1:1'")
1862
+ expect(p.parse("Zacc 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zacc 1:1'")
1863
+ expect(p.parse("Zach 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zach 1:1'")
1864
+ expect(p.parse("Zech 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zech 1:1'")
1865
+ expect(p.parse("Zac 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zac 1:1'")
1866
+ expect(p.parse("Zah 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zah 1:1'")
1867
+ expect(p.parse("Za 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Za 1:1'")
1868
+ expect(p.parse("Zc 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zc 1:1'")
1869
+ p.include_apocrypha(false)
1870
+ expect(p.parse("ZACCHARIE 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZACCHARIE 1:1'")
1871
+ expect(p.parse("ZACHARIE 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZACHARIE 1:1'")
1872
+ expect(p.parse("ZACCH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZACCH 1:1'")
1873
+ expect(p.parse("ZACC 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZACC 1:1'")
1874
+ expect(p.parse("ZACH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZACH 1:1'")
1875
+ expect(p.parse("ZECH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZECH 1:1'")
1876
+ expect(p.parse("ZAC 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZAC 1:1'")
1877
+ expect(p.parse("ZAH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZAH 1:1'")
1878
+ expect(p.parse("ZA 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZA 1:1'")
1879
+ expect(p.parse("ZC 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZC 1:1'")
1880
+ ;
1881
+ return true;
1882
+ });
1883
+ });
1884
+
1885
+ describe("Localized book Mal (fr)", function() {
1886
+ var p;
1887
+ p = {};
1888
+ beforeEach(function() {
1889
+ p = new bcv_parser();
1890
+ p.set_options({
1891
+ book_alone_strategy: "ignore",
1892
+ book_sequence_strategy: "ignore",
1893
+ osis_compaction_strategy: "bc",
1894
+ captive_end_digits_strategy: "delete"
1895
+ });
1896
+ return p.include_apocrypha(true);
1897
+ });
1898
+ return it("should handle book: Mal (fr)", function() {
1899
+
1900
+ expect(p.parse("Malachie 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malachie 1:1'")
1901
+ expect(p.parse("Malach 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malach 1:1'")
1902
+ expect(p.parse("Malac 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malac 1:1'")
1903
+ expect(p.parse("Malch 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malch 1:1'")
1904
+ expect(p.parse("Malc 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malc 1:1'")
1905
+ expect(p.parse("Mal 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Mal 1:1'")
1906
+ expect(p.parse("Ml 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Ml 1:1'")
1907
+ p.include_apocrypha(false)
1908
+ expect(p.parse("MALACHIE 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALACHIE 1:1'")
1909
+ expect(p.parse("MALACH 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALACH 1:1'")
1910
+ expect(p.parse("MALAC 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALAC 1:1'")
1911
+ expect(p.parse("MALCH 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALCH 1:1'")
1912
+ expect(p.parse("MALC 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALC 1:1'")
1913
+ expect(p.parse("MAL 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MAL 1:1'")
1914
+ expect(p.parse("ML 1:1").osis()).toEqual("Mal.1.1", "parsing: 'ML 1:1'")
1915
+ ;
1916
+ return true;
1917
+ });
1918
+ });
1919
+
1920
+ describe("Localized book Matt (fr)", function() {
1921
+ var p;
1922
+ p = {};
1923
+ beforeEach(function() {
1924
+ p = new bcv_parser();
1925
+ p.set_options({
1926
+ book_alone_strategy: "ignore",
1927
+ book_sequence_strategy: "ignore",
1928
+ osis_compaction_strategy: "bc",
1929
+ captive_end_digits_strategy: "delete"
1930
+ });
1931
+ return p.include_apocrypha(true);
1932
+ });
1933
+ return it("should handle book: Matt (fr)", function() {
1934
+
1935
+ expect(p.parse("Matthieu 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matthieu 1:1'")
1936
+ expect(p.parse("Matth 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matth 1:1'")
1937
+ expect(p.parse("Matt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matt 1:1'")
1938
+ expect(p.parse("Mat 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Mat 1:1'")
1939
+ expect(p.parse("Mt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Mt 1:1'")
1940
+ p.include_apocrypha(false)
1941
+ expect(p.parse("MATTHIEU 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTHIEU 1:1'")
1942
+ expect(p.parse("MATTH 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTH 1:1'")
1943
+ expect(p.parse("MATT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATT 1:1'")
1944
+ expect(p.parse("MAT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MAT 1:1'")
1945
+ expect(p.parse("MT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MT 1:1'")
1946
+ ;
1947
+ return true;
1948
+ });
1949
+ });
1950
+
1951
+ describe("Localized book Mark (fr)", function() {
1952
+ var p;
1953
+ p = {};
1954
+ beforeEach(function() {
1955
+ p = new bcv_parser();
1956
+ p.set_options({
1957
+ book_alone_strategy: "ignore",
1958
+ book_sequence_strategy: "ignore",
1959
+ osis_compaction_strategy: "bc",
1960
+ captive_end_digits_strategy: "delete"
1961
+ });
1962
+ return p.include_apocrypha(true);
1963
+ });
1964
+ return it("should handle book: Mark (fr)", function() {
1965
+
1966
+ expect(p.parse("Marc 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Marc 1:1'")
1967
+ expect(p.parse("Mark 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mark 1:1'")
1968
+ expect(p.parse("Mar 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mar 1:1'")
1969
+ expect(p.parse("Mc 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mc 1:1'")
1970
+ expect(p.parse("Mr 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mr 1:1'")
1971
+ p.include_apocrypha(false)
1972
+ expect(p.parse("MARC 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARC 1:1'")
1973
+ expect(p.parse("MARK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARK 1:1'")
1974
+ expect(p.parse("MAR 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MAR 1:1'")
1975
+ expect(p.parse("MC 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MC 1:1'")
1976
+ expect(p.parse("MR 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MR 1:1'")
1977
+ ;
1978
+ return true;
1979
+ });
1980
+ });
1981
+
1982
+ describe("Localized book Luke (fr)", function() {
1983
+ var p;
1984
+ p = {};
1985
+ beforeEach(function() {
1986
+ p = new bcv_parser();
1987
+ p.set_options({
1988
+ book_alone_strategy: "ignore",
1989
+ book_sequence_strategy: "ignore",
1990
+ osis_compaction_strategy: "bc",
1991
+ captive_end_digits_strategy: "delete"
1992
+ });
1993
+ return p.include_apocrypha(true);
1994
+ });
1995
+ return it("should handle book: Luke (fr)", function() {
1996
+
1997
+ expect(p.parse("Luke 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luke 1:1'")
1998
+ expect(p.parse("Luc 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luc 1:1'")
1999
+ expect(p.parse("Lc 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Lc 1:1'")
2000
+ expect(p.parse("Lu 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Lu 1:1'")
2001
+ p.include_apocrypha(false)
2002
+ expect(p.parse("LUKE 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKE 1:1'")
2003
+ expect(p.parse("LUC 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUC 1:1'")
2004
+ expect(p.parse("LC 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LC 1:1'")
2005
+ expect(p.parse("LU 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LU 1:1'")
2006
+ ;
2007
+ return true;
2008
+ });
2009
+ });
2010
+
2011
+ describe("Localized book 1John (fr)", function() {
2012
+ var p;
2013
+ p = {};
2014
+ beforeEach(function() {
2015
+ p = new bcv_parser();
2016
+ p.set_options({
2017
+ book_alone_strategy: "ignore",
2018
+ book_sequence_strategy: "ignore",
2019
+ osis_compaction_strategy: "bc",
2020
+ captive_end_digits_strategy: "delete"
2021
+ });
2022
+ return p.include_apocrypha(true);
2023
+ });
2024
+ return it("should handle book: 1John (fr)", function() {
2025
+
2026
+ expect(p.parse("Premieres Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'Premieres Jean 1:1'")
2027
+ expect(p.parse("Premières Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'Premières Jean 1:1'")
2028
+ expect(p.parse("Premiere Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'Premiere Jean 1:1'")
2029
+ expect(p.parse("Premiers Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'Premiers Jean 1:1'")
2030
+ expect(p.parse("Première Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'Première Jean 1:1'")
2031
+ expect(p.parse("Premier Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'Premier Jean 1:1'")
2032
+ expect(p.parse("1ere. Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1ere. Jean 1:1'")
2033
+ expect(p.parse("1ère. Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1ère. Jean 1:1'")
2034
+ expect(p.parse("1er. Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1er. Jean 1:1'")
2035
+ expect(p.parse("1ere Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1ere Jean 1:1'")
2036
+ expect(p.parse("1re. Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1re. Jean 1:1'")
2037
+ expect(p.parse("1ère Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1ère Jean 1:1'")
2038
+ expect(p.parse("1er Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1er Jean 1:1'")
2039
+ expect(p.parse("1re Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1re Jean 1:1'")
2040
+ expect(p.parse("1. Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Jean 1:1'")
2041
+ expect(p.parse("I. Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'I. Jean 1:1'")
2042
+ expect(p.parse("1 Jean 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Jean 1:1'")
2043
+ expect(p.parse("I Jean 1:1").osis()).toEqual("1John.1.1", "parsing: 'I Jean 1:1'")
2044
+ expect(p.parse("1John 1:1").osis()).toEqual("1John.1.1", "parsing: '1John 1:1'")
2045
+ expect(p.parse("1 Jn 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Jn 1:1'")
2046
+ p.include_apocrypha(false)
2047
+ expect(p.parse("PREMIERES JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'PREMIERES JEAN 1:1'")
2048
+ expect(p.parse("PREMIÈRES JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'PREMIÈRES JEAN 1:1'")
2049
+ expect(p.parse("PREMIERE JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'PREMIERE JEAN 1:1'")
2050
+ expect(p.parse("PREMIERS JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'PREMIERS JEAN 1:1'")
2051
+ expect(p.parse("PREMIÈRE JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'PREMIÈRE JEAN 1:1'")
2052
+ expect(p.parse("PREMIER JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'PREMIER JEAN 1:1'")
2053
+ expect(p.parse("1ERE. JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1ERE. JEAN 1:1'")
2054
+ expect(p.parse("1ÈRE. JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1ÈRE. JEAN 1:1'")
2055
+ expect(p.parse("1ER. JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1ER. JEAN 1:1'")
2056
+ expect(p.parse("1ERE JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1ERE JEAN 1:1'")
2057
+ expect(p.parse("1RE. JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1RE. JEAN 1:1'")
2058
+ expect(p.parse("1ÈRE JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1ÈRE JEAN 1:1'")
2059
+ expect(p.parse("1ER JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1ER JEAN 1:1'")
2060
+ expect(p.parse("1RE JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1RE JEAN 1:1'")
2061
+ expect(p.parse("1. JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1. JEAN 1:1'")
2062
+ expect(p.parse("I. JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'I. JEAN 1:1'")
2063
+ expect(p.parse("1 JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: '1 JEAN 1:1'")
2064
+ expect(p.parse("I JEAN 1:1").osis()).toEqual("1John.1.1", "parsing: 'I JEAN 1:1'")
2065
+ expect(p.parse("1JOHN 1:1").osis()).toEqual("1John.1.1", "parsing: '1JOHN 1:1'")
2066
+ expect(p.parse("1 JN 1:1").osis()).toEqual("1John.1.1", "parsing: '1 JN 1:1'")
2067
+ ;
2068
+ return true;
2069
+ });
2070
+ });
2071
+
2072
+ describe("Localized book 2John (fr)", function() {
2073
+ var p;
2074
+ p = {};
2075
+ beforeEach(function() {
2076
+ p = new bcv_parser();
2077
+ p.set_options({
2078
+ book_alone_strategy: "ignore",
2079
+ book_sequence_strategy: "ignore",
2080
+ osis_compaction_strategy: "bc",
2081
+ captive_end_digits_strategy: "delete"
2082
+ });
2083
+ return p.include_apocrypha(true);
2084
+ });
2085
+ return it("should handle book: 2John (fr)", function() {
2086
+
2087
+ expect(p.parse("Deuxiemes Jean 1:1").osis()).toEqual("2John.1.1", "parsing: 'Deuxiemes Jean 1:1'")
2088
+ expect(p.parse("Deuxièmes Jean 1:1").osis()).toEqual("2John.1.1", "parsing: 'Deuxièmes Jean 1:1'")
2089
+ expect(p.parse("Deuxieme Jean 1:1").osis()).toEqual("2John.1.1", "parsing: 'Deuxieme Jean 1:1'")
2090
+ expect(p.parse("Deuxième Jean 1:1").osis()).toEqual("2John.1.1", "parsing: 'Deuxième Jean 1:1'")
2091
+ expect(p.parse("2eme. Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2eme. Jean 1:1'")
2092
+ expect(p.parse("2ème. Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2ème. Jean 1:1'")
2093
+ expect(p.parse("2de. Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2de. Jean 1:1'")
2094
+ expect(p.parse("2eme Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2eme Jean 1:1'")
2095
+ expect(p.parse("2ème Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2ème Jean 1:1'")
2096
+ expect(p.parse("2d. Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2d. Jean 1:1'")
2097
+ expect(p.parse("2de Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2de Jean 1:1'")
2098
+ expect(p.parse("2e. Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2e. Jean 1:1'")
2099
+ expect(p.parse("II. Jean 1:1").osis()).toEqual("2John.1.1", "parsing: 'II. Jean 1:1'")
2100
+ expect(p.parse("2. Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Jean 1:1'")
2101
+ expect(p.parse("2d Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2d Jean 1:1'")
2102
+ expect(p.parse("2e Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2e Jean 1:1'")
2103
+ expect(p.parse("II Jean 1:1").osis()).toEqual("2John.1.1", "parsing: 'II Jean 1:1'")
2104
+ expect(p.parse("2 Jean 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Jean 1:1'")
2105
+ expect(p.parse("2John 1:1").osis()).toEqual("2John.1.1", "parsing: '2John 1:1'")
2106
+ expect(p.parse("2 Jn 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Jn 1:1'")
2107
+ p.include_apocrypha(false)
2108
+ expect(p.parse("DEUXIEMES JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: 'DEUXIEMES JEAN 1:1'")
2109
+ expect(p.parse("DEUXIÈMES JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: 'DEUXIÈMES JEAN 1:1'")
2110
+ expect(p.parse("DEUXIEME JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: 'DEUXIEME JEAN 1:1'")
2111
+ expect(p.parse("DEUXIÈME JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: 'DEUXIÈME JEAN 1:1'")
2112
+ expect(p.parse("2EME. JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2EME. JEAN 1:1'")
2113
+ expect(p.parse("2ÈME. JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2ÈME. JEAN 1:1'")
2114
+ expect(p.parse("2DE. JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2DE. JEAN 1:1'")
2115
+ expect(p.parse("2EME JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2EME JEAN 1:1'")
2116
+ expect(p.parse("2ÈME JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2ÈME JEAN 1:1'")
2117
+ expect(p.parse("2D. JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2D. JEAN 1:1'")
2118
+ expect(p.parse("2DE JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2DE JEAN 1:1'")
2119
+ expect(p.parse("2E. JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2E. JEAN 1:1'")
2120
+ expect(p.parse("II. JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: 'II. JEAN 1:1'")
2121
+ expect(p.parse("2. JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2. JEAN 1:1'")
2122
+ expect(p.parse("2D JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2D JEAN 1:1'")
2123
+ expect(p.parse("2E JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2E JEAN 1:1'")
2124
+ expect(p.parse("II JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: 'II JEAN 1:1'")
2125
+ expect(p.parse("2 JEAN 1:1").osis()).toEqual("2John.1.1", "parsing: '2 JEAN 1:1'")
2126
+ expect(p.parse("2JOHN 1:1").osis()).toEqual("2John.1.1", "parsing: '2JOHN 1:1'")
2127
+ expect(p.parse("2 JN 1:1").osis()).toEqual("2John.1.1", "parsing: '2 JN 1:1'")
2128
+ ;
2129
+ return true;
2130
+ });
2131
+ });
2132
+
2133
+ describe("Localized book 3John (fr)", function() {
2134
+ var p;
2135
+ p = {};
2136
+ beforeEach(function() {
2137
+ p = new bcv_parser();
2138
+ p.set_options({
2139
+ book_alone_strategy: "ignore",
2140
+ book_sequence_strategy: "ignore",
2141
+ osis_compaction_strategy: "bc",
2142
+ captive_end_digits_strategy: "delete"
2143
+ });
2144
+ return p.include_apocrypha(true);
2145
+ });
2146
+ return it("should handle book: 3John (fr)", function() {
2147
+
2148
+ expect(p.parse("Troisiemes Jean 1:1").osis()).toEqual("3John.1.1", "parsing: 'Troisiemes Jean 1:1'")
2149
+ expect(p.parse("Troisièmes Jean 1:1").osis()).toEqual("3John.1.1", "parsing: 'Troisièmes Jean 1:1'")
2150
+ expect(p.parse("Troisieme Jean 1:1").osis()).toEqual("3John.1.1", "parsing: 'Troisieme Jean 1:1'")
2151
+ expect(p.parse("Troisième Jean 1:1").osis()).toEqual("3John.1.1", "parsing: 'Troisième Jean 1:1'")
2152
+ expect(p.parse("3eme. Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3eme. Jean 1:1'")
2153
+ expect(p.parse("3ème. Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3ème. Jean 1:1'")
2154
+ expect(p.parse("3eme Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3eme Jean 1:1'")
2155
+ expect(p.parse("3ème Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3ème Jean 1:1'")
2156
+ expect(p.parse("III. Jean 1:1").osis()).toEqual("3John.1.1", "parsing: 'III. Jean 1:1'")
2157
+ expect(p.parse("3e. Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3e. Jean 1:1'")
2158
+ expect(p.parse("III Jean 1:1").osis()).toEqual("3John.1.1", "parsing: 'III Jean 1:1'")
2159
+ expect(p.parse("3. Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Jean 1:1'")
2160
+ expect(p.parse("3e Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3e Jean 1:1'")
2161
+ expect(p.parse("3 Jean 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Jean 1:1'")
2162
+ expect(p.parse("3John 1:1").osis()).toEqual("3John.1.1", "parsing: '3John 1:1'")
2163
+ expect(p.parse("3 Jn 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Jn 1:1'")
2164
+ p.include_apocrypha(false)
2165
+ expect(p.parse("TROISIEMES JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: 'TROISIEMES JEAN 1:1'")
2166
+ expect(p.parse("TROISIÈMES JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: 'TROISIÈMES JEAN 1:1'")
2167
+ expect(p.parse("TROISIEME JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: 'TROISIEME JEAN 1:1'")
2168
+ expect(p.parse("TROISIÈME JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: 'TROISIÈME JEAN 1:1'")
2169
+ expect(p.parse("3EME. JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3EME. JEAN 1:1'")
2170
+ expect(p.parse("3ÈME. JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3ÈME. JEAN 1:1'")
2171
+ expect(p.parse("3EME JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3EME JEAN 1:1'")
2172
+ expect(p.parse("3ÈME JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3ÈME JEAN 1:1'")
2173
+ expect(p.parse("III. JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: 'III. JEAN 1:1'")
2174
+ expect(p.parse("3E. JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3E. JEAN 1:1'")
2175
+ expect(p.parse("III JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: 'III JEAN 1:1'")
2176
+ expect(p.parse("3. JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3. JEAN 1:1'")
2177
+ expect(p.parse("3E JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3E JEAN 1:1'")
2178
+ expect(p.parse("3 JEAN 1:1").osis()).toEqual("3John.1.1", "parsing: '3 JEAN 1:1'")
2179
+ expect(p.parse("3JOHN 1:1").osis()).toEqual("3John.1.1", "parsing: '3JOHN 1:1'")
2180
+ expect(p.parse("3 JN 1:1").osis()).toEqual("3John.1.1", "parsing: '3 JN 1:1'")
2181
+ ;
2182
+ return true;
2183
+ });
2184
+ });
2185
+
2186
+ describe("Localized book John (fr)", function() {
2187
+ var p;
2188
+ p = {};
2189
+ beforeEach(function() {
2190
+ p = new bcv_parser();
2191
+ p.set_options({
2192
+ book_alone_strategy: "ignore",
2193
+ book_sequence_strategy: "ignore",
2194
+ osis_compaction_strategy: "bc",
2195
+ captive_end_digits_strategy: "delete"
2196
+ });
2197
+ return p.include_apocrypha(true);
2198
+ });
2199
+ return it("should handle book: John (fr)", function() {
2200
+
2201
+ expect(p.parse("Jean 1:1").osis()).toEqual("John.1.1", "parsing: 'Jean 1:1'")
2202
+ expect(p.parse("John 1:1").osis()).toEqual("John.1.1", "parsing: 'John 1:1'")
2203
+ expect(p.parse("Jn 1:1").osis()).toEqual("John.1.1", "parsing: 'Jn 1:1'")
2204
+ p.include_apocrypha(false)
2205
+ expect(p.parse("JEAN 1:1").osis()).toEqual("John.1.1", "parsing: 'JEAN 1:1'")
2206
+ expect(p.parse("JOHN 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHN 1:1'")
2207
+ expect(p.parse("JN 1:1").osis()).toEqual("John.1.1", "parsing: 'JN 1:1'")
2208
+ ;
2209
+ return true;
2210
+ });
2211
+ });
2212
+
2213
+ describe("Localized book Acts (fr)", function() {
2214
+ var p;
2215
+ p = {};
2216
+ beforeEach(function() {
2217
+ p = new bcv_parser();
2218
+ p.set_options({
2219
+ book_alone_strategy: "ignore",
2220
+ book_sequence_strategy: "ignore",
2221
+ osis_compaction_strategy: "bc",
2222
+ captive_end_digits_strategy: "delete"
2223
+ });
2224
+ return p.include_apocrypha(true);
2225
+ });
2226
+ return it("should handle book: Acts (fr)", function() {
2227
+
2228
+ expect(p.parse("Actes des Apotres 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Actes des Apotres 1:1'")
2229
+ expect(p.parse("Actes des Apôtres 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Actes des Apôtres 1:1'")
2230
+ expect(p.parse("Actes 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Actes 1:1'")
2231
+ expect(p.parse("Acts 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Acts 1:1'")
2232
+ expect(p.parse("Act 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Act 1:1'")
2233
+ expect(p.parse("Ac 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Ac 1:1'")
2234
+ p.include_apocrypha(false)
2235
+ expect(p.parse("ACTES DES APOTRES 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTES DES APOTRES 1:1'")
2236
+ expect(p.parse("ACTES DES APÔTRES 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTES DES APÔTRES 1:1'")
2237
+ expect(p.parse("ACTES 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTES 1:1'")
2238
+ expect(p.parse("ACTS 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTS 1:1'")
2239
+ expect(p.parse("ACT 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACT 1:1'")
2240
+ expect(p.parse("AC 1:1").osis()).toEqual("Acts.1.1", "parsing: 'AC 1:1'")
2241
+ ;
2242
+ return true;
2243
+ });
2244
+ });
2245
+
2246
+ describe("Localized book Rom (fr)", function() {
2247
+ var p;
2248
+ p = {};
2249
+ beforeEach(function() {
2250
+ p = new bcv_parser();
2251
+ p.set_options({
2252
+ book_alone_strategy: "ignore",
2253
+ book_sequence_strategy: "ignore",
2254
+ osis_compaction_strategy: "bc",
2255
+ captive_end_digits_strategy: "delete"
2256
+ });
2257
+ return p.include_apocrypha(true);
2258
+ });
2259
+ return it("should handle book: Rom (fr)", function() {
2260
+
2261
+ expect(p.parse("Romains 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Romains 1:1'")
2262
+ expect(p.parse("Rom 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rom 1:1'")
2263
+ expect(p.parse("Rm 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rm 1:1'")
2264
+ expect(p.parse("Ro 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Ro 1:1'")
2265
+ p.include_apocrypha(false)
2266
+ expect(p.parse("ROMAINS 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROMAINS 1:1'")
2267
+ expect(p.parse("ROM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROM 1:1'")
2268
+ expect(p.parse("RM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'RM 1:1'")
2269
+ expect(p.parse("RO 1:1").osis()).toEqual("Rom.1.1", "parsing: 'RO 1:1'")
2270
+ ;
2271
+ return true;
2272
+ });
2273
+ });
2274
+
2275
+ describe("Localized book 2Cor (fr)", function() {
2276
+ var p;
2277
+ p = {};
2278
+ beforeEach(function() {
2279
+ p = new bcv_parser();
2280
+ p.set_options({
2281
+ book_alone_strategy: "ignore",
2282
+ book_sequence_strategy: "ignore",
2283
+ osis_compaction_strategy: "bc",
2284
+ captive_end_digits_strategy: "delete"
2285
+ });
2286
+ return p.include_apocrypha(true);
2287
+ });
2288
+ return it("should handle book: 2Cor (fr)", function() {
2289
+
2290
+ expect(p.parse("Deuxiemes Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Deuxiemes Corinthiens 1:1'")
2291
+ expect(p.parse("Deuxièmes Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Deuxièmes Corinthiens 1:1'")
2292
+ expect(p.parse("Deuxieme Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Deuxieme Corinthiens 1:1'")
2293
+ expect(p.parse("Deuxième Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Deuxième Corinthiens 1:1'")
2294
+ expect(p.parse("2eme. Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2eme. Corinthiens 1:1'")
2295
+ expect(p.parse("2ème. Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2ème. Corinthiens 1:1'")
2296
+ expect(p.parse("2de. Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2de. Corinthiens 1:1'")
2297
+ expect(p.parse("2eme Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2eme Corinthiens 1:1'")
2298
+ expect(p.parse("2ème Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2ème Corinthiens 1:1'")
2299
+ expect(p.parse("2d. Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2d. Corinthiens 1:1'")
2300
+ expect(p.parse("2de Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2de Corinthiens 1:1'")
2301
+ expect(p.parse("2e. Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2e. Corinthiens 1:1'")
2302
+ expect(p.parse("II. Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. Corinthiens 1:1'")
2303
+ expect(p.parse("2. Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Corinthiens 1:1'")
2304
+ expect(p.parse("2d Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2d Corinthiens 1:1'")
2305
+ expect(p.parse("2e Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2e Corinthiens 1:1'")
2306
+ expect(p.parse("II Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II Corinthiens 1:1'")
2307
+ expect(p.parse("2 Corinthiens 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Corinthiens 1:1'")
2308
+ expect(p.parse("2 Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Cor 1:1'")
2309
+ expect(p.parse("2 Co 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Co 1:1'")
2310
+ expect(p.parse("2Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2Cor 1:1'")
2311
+ p.include_apocrypha(false)
2312
+ expect(p.parse("DEUXIEMES CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DEUXIEMES CORINTHIENS 1:1'")
2313
+ expect(p.parse("DEUXIÈMES CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DEUXIÈMES CORINTHIENS 1:1'")
2314
+ expect(p.parse("DEUXIEME CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DEUXIEME CORINTHIENS 1:1'")
2315
+ expect(p.parse("DEUXIÈME CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'DEUXIÈME CORINTHIENS 1:1'")
2316
+ expect(p.parse("2EME. CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2EME. CORINTHIENS 1:1'")
2317
+ expect(p.parse("2ÈME. CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2ÈME. CORINTHIENS 1:1'")
2318
+ expect(p.parse("2DE. CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2DE. CORINTHIENS 1:1'")
2319
+ expect(p.parse("2EME CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2EME CORINTHIENS 1:1'")
2320
+ expect(p.parse("2ÈME CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2ÈME CORINTHIENS 1:1'")
2321
+ expect(p.parse("2D. CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2D. CORINTHIENS 1:1'")
2322
+ expect(p.parse("2DE CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2DE CORINTHIENS 1:1'")
2323
+ expect(p.parse("2E. CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2E. CORINTHIENS 1:1'")
2324
+ expect(p.parse("II. CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II. CORINTHIENS 1:1'")
2325
+ expect(p.parse("2. CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. CORINTHIENS 1:1'")
2326
+ expect(p.parse("2D CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2D CORINTHIENS 1:1'")
2327
+ expect(p.parse("2E CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2E CORINTHIENS 1:1'")
2328
+ expect(p.parse("II CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'II CORINTHIENS 1:1'")
2329
+ expect(p.parse("2 CORINTHIENS 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 CORINTHIENS 1:1'")
2330
+ expect(p.parse("2 COR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 COR 1:1'")
2331
+ expect(p.parse("2 CO 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 CO 1:1'")
2332
+ expect(p.parse("2COR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2COR 1:1'")
2333
+ ;
2334
+ return true;
2335
+ });
2336
+ });
2337
+
2338
+ describe("Localized book 1Cor (fr)", function() {
2339
+ var p;
2340
+ p = {};
2341
+ beforeEach(function() {
2342
+ p = new bcv_parser();
2343
+ p.set_options({
2344
+ book_alone_strategy: "ignore",
2345
+ book_sequence_strategy: "ignore",
2346
+ osis_compaction_strategy: "bc",
2347
+ captive_end_digits_strategy: "delete"
2348
+ });
2349
+ return p.include_apocrypha(true);
2350
+ });
2351
+ return it("should handle book: 1Cor (fr)", function() {
2352
+
2353
+ expect(p.parse("Premieres Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Premieres Corinthiens 1:1'")
2354
+ expect(p.parse("Premières Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Premières Corinthiens 1:1'")
2355
+ expect(p.parse("Premiere Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Premiere Corinthiens 1:1'")
2356
+ expect(p.parse("Premiers Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Premiers Corinthiens 1:1'")
2357
+ expect(p.parse("Première Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Première Corinthiens 1:1'")
2358
+ expect(p.parse("Premier Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Premier Corinthiens 1:1'")
2359
+ expect(p.parse("1ere. Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ere. Corinthiens 1:1'")
2360
+ expect(p.parse("1ère. Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ère. Corinthiens 1:1'")
2361
+ expect(p.parse("1er. Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1er. Corinthiens 1:1'")
2362
+ expect(p.parse("1ere Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ere Corinthiens 1:1'")
2363
+ expect(p.parse("1re. Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1re. Corinthiens 1:1'")
2364
+ expect(p.parse("1ère Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ère Corinthiens 1:1'")
2365
+ expect(p.parse("1er Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1er Corinthiens 1:1'")
2366
+ expect(p.parse("1re Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1re Corinthiens 1:1'")
2367
+ expect(p.parse("1. Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Corinthiens 1:1'")
2368
+ expect(p.parse("I. Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. Corinthiens 1:1'")
2369
+ expect(p.parse("1 Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Corinthiens 1:1'")
2370
+ expect(p.parse("I Corinthiens 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I Corinthiens 1:1'")
2371
+ expect(p.parse("1 Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Cor 1:1'")
2372
+ expect(p.parse("1 Co 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Co 1:1'")
2373
+ expect(p.parse("1Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1Cor 1:1'")
2374
+ p.include_apocrypha(false)
2375
+ expect(p.parse("PREMIERES CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PREMIERES CORINTHIENS 1:1'")
2376
+ expect(p.parse("PREMIÈRES CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PREMIÈRES CORINTHIENS 1:1'")
2377
+ expect(p.parse("PREMIERE CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PREMIERE CORINTHIENS 1:1'")
2378
+ expect(p.parse("PREMIERS CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PREMIERS CORINTHIENS 1:1'")
2379
+ expect(p.parse("PREMIÈRE CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PREMIÈRE CORINTHIENS 1:1'")
2380
+ expect(p.parse("PREMIER CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'PREMIER CORINTHIENS 1:1'")
2381
+ expect(p.parse("1ERE. CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ERE. CORINTHIENS 1:1'")
2382
+ expect(p.parse("1ÈRE. CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ÈRE. CORINTHIENS 1:1'")
2383
+ expect(p.parse("1ER. CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ER. CORINTHIENS 1:1'")
2384
+ expect(p.parse("1ERE CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ERE CORINTHIENS 1:1'")
2385
+ expect(p.parse("1RE. CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1RE. CORINTHIENS 1:1'")
2386
+ expect(p.parse("1ÈRE CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ÈRE CORINTHIENS 1:1'")
2387
+ expect(p.parse("1ER CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1ER CORINTHIENS 1:1'")
2388
+ expect(p.parse("1RE CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1RE CORINTHIENS 1:1'")
2389
+ expect(p.parse("1. CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. CORINTHIENS 1:1'")
2390
+ expect(p.parse("I. CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I. CORINTHIENS 1:1'")
2391
+ expect(p.parse("1 CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 CORINTHIENS 1:1'")
2392
+ expect(p.parse("I CORINTHIENS 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'I CORINTHIENS 1:1'")
2393
+ expect(p.parse("1 COR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 COR 1:1'")
2394
+ expect(p.parse("1 CO 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 CO 1:1'")
2395
+ expect(p.parse("1COR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1COR 1:1'")
2396
+ ;
2397
+ return true;
2398
+ });
2399
+ });
2400
+
2401
+ describe("Localized book Gal (fr)", function() {
2402
+ var p;
2403
+ p = {};
2404
+ beforeEach(function() {
2405
+ p = new bcv_parser();
2406
+ p.set_options({
2407
+ book_alone_strategy: "ignore",
2408
+ book_sequence_strategy: "ignore",
2409
+ osis_compaction_strategy: "bc",
2410
+ captive_end_digits_strategy: "delete"
2411
+ });
2412
+ return p.include_apocrypha(true);
2413
+ });
2414
+ return it("should handle book: Gal (fr)", function() {
2415
+
2416
+ expect(p.parse("Galates 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Galates 1:1'")
2417
+ expect(p.parse("Gal 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Gal 1:1'")
2418
+ expect(p.parse("Ga 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Ga 1:1'")
2419
+ expect(p.parse("Gl 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Gl 1:1'")
2420
+ p.include_apocrypha(false)
2421
+ expect(p.parse("GALATES 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GALATES 1:1'")
2422
+ expect(p.parse("GAL 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GAL 1:1'")
2423
+ expect(p.parse("GA 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GA 1:1'")
2424
+ expect(p.parse("GL 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GL 1:1'")
2425
+ ;
2426
+ return true;
2427
+ });
2428
+ });
2429
+
2430
+ describe("Localized book Eph (fr)", function() {
2431
+ var p;
2432
+ p = {};
2433
+ beforeEach(function() {
2434
+ p = new bcv_parser();
2435
+ p.set_options({
2436
+ book_alone_strategy: "ignore",
2437
+ book_sequence_strategy: "ignore",
2438
+ osis_compaction_strategy: "bc",
2439
+ captive_end_digits_strategy: "delete"
2440
+ });
2441
+ return p.include_apocrypha(true);
2442
+ });
2443
+ return it("should handle book: Eph (fr)", function() {
2444
+
2445
+ expect(p.parse("Ephesiens 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ephesiens 1:1'")
2446
+ expect(p.parse("Ephésiens 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ephésiens 1:1'")
2447
+ expect(p.parse("Éphesiens 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Éphesiens 1:1'")
2448
+ expect(p.parse("Éphésiens 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Éphésiens 1:1'")
2449
+ expect(p.parse("Ephes 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ephes 1:1'")
2450
+ expect(p.parse("Ephés 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ephés 1:1'")
2451
+ expect(p.parse("Éphes 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Éphes 1:1'")
2452
+ expect(p.parse("Éphés 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Éphés 1:1'")
2453
+ expect(p.parse("Ephe 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ephe 1:1'")
2454
+ expect(p.parse("Ephé 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ephé 1:1'")
2455
+ expect(p.parse("Éphe 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Éphe 1:1'")
2456
+ expect(p.parse("Éphé 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Éphé 1:1'")
2457
+ expect(p.parse("Eph 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Eph 1:1'")
2458
+ expect(p.parse("Éph 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Éph 1:1'")
2459
+ expect(p.parse("Ep 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ep 1:1'")
2460
+ expect(p.parse("Ép 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Ép 1:1'")
2461
+ p.include_apocrypha(false)
2462
+ expect(p.parse("EPHESIENS 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPHESIENS 1:1'")
2463
+ expect(p.parse("EPHÉSIENS 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPHÉSIENS 1:1'")
2464
+ expect(p.parse("ÉPHESIENS 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉPHESIENS 1:1'")
2465
+ expect(p.parse("ÉPHÉSIENS 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉPHÉSIENS 1:1'")
2466
+ expect(p.parse("EPHES 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPHES 1:1'")
2467
+ expect(p.parse("EPHÉS 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPHÉS 1:1'")
2468
+ expect(p.parse("ÉPHES 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉPHES 1:1'")
2469
+ expect(p.parse("ÉPHÉS 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉPHÉS 1:1'")
2470
+ expect(p.parse("EPHE 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPHE 1:1'")
2471
+ expect(p.parse("EPHÉ 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPHÉ 1:1'")
2472
+ expect(p.parse("ÉPHE 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉPHE 1:1'")
2473
+ expect(p.parse("ÉPHÉ 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉPHÉ 1:1'")
2474
+ expect(p.parse("EPH 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPH 1:1'")
2475
+ expect(p.parse("ÉPH 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉPH 1:1'")
2476
+ expect(p.parse("EP 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EP 1:1'")
2477
+ expect(p.parse("ÉP 1:1").osis()).toEqual("Eph.1.1", "parsing: 'ÉP 1:1'")
2478
+ ;
2479
+ return true;
2480
+ });
2481
+ });
2482
+
2483
+ describe("Localized book Phil (fr)", function() {
2484
+ var p;
2485
+ p = {};
2486
+ beforeEach(function() {
2487
+ p = new bcv_parser();
2488
+ p.set_options({
2489
+ book_alone_strategy: "ignore",
2490
+ book_sequence_strategy: "ignore",
2491
+ osis_compaction_strategy: "bc",
2492
+ captive_end_digits_strategy: "delete"
2493
+ });
2494
+ return p.include_apocrypha(true);
2495
+ });
2496
+ return it("should handle book: Phil (fr)", function() {
2497
+
2498
+ expect(p.parse("Philippiens 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Philippiens 1:1'")
2499
+ expect(p.parse("Phil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Phil 1:1'")
2500
+ expect(p.parse("Ph 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Ph 1:1'")
2501
+ p.include_apocrypha(false)
2502
+ expect(p.parse("PHILIPPIENS 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHILIPPIENS 1:1'")
2503
+ expect(p.parse("PHIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHIL 1:1'")
2504
+ expect(p.parse("PH 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PH 1:1'")
2505
+ ;
2506
+ return true;
2507
+ });
2508
+ });
2509
+
2510
+ describe("Localized book Col (fr)", function() {
2511
+ var p;
2512
+ p = {};
2513
+ beforeEach(function() {
2514
+ p = new bcv_parser();
2515
+ p.set_options({
2516
+ book_alone_strategy: "ignore",
2517
+ book_sequence_strategy: "ignore",
2518
+ osis_compaction_strategy: "bc",
2519
+ captive_end_digits_strategy: "delete"
2520
+ });
2521
+ return p.include_apocrypha(true);
2522
+ });
2523
+ return it("should handle book: Col (fr)", function() {
2524
+
2525
+ expect(p.parse("Colossiens 1:1").osis()).toEqual("Col.1.1", "parsing: 'Colossiens 1:1'")
2526
+ expect(p.parse("Col 1:1").osis()).toEqual("Col.1.1", "parsing: 'Col 1:1'")
2527
+ p.include_apocrypha(false)
2528
+ expect(p.parse("COLOSSIENS 1:1").osis()).toEqual("Col.1.1", "parsing: 'COLOSSIENS 1:1'")
2529
+ expect(p.parse("COL 1:1").osis()).toEqual("Col.1.1", "parsing: 'COL 1:1'")
2530
+ ;
2531
+ return true;
2532
+ });
2533
+ });
2534
+
2535
+ describe("Localized book 2Thess (fr)", function() {
2536
+ var p;
2537
+ p = {};
2538
+ beforeEach(function() {
2539
+ p = new bcv_parser();
2540
+ p.set_options({
2541
+ book_alone_strategy: "ignore",
2542
+ book_sequence_strategy: "ignore",
2543
+ osis_compaction_strategy: "bc",
2544
+ captive_end_digits_strategy: "delete"
2545
+ });
2546
+ return p.include_apocrypha(true);
2547
+ });
2548
+ return it("should handle book: 2Thess (fr)", function() {
2549
+
2550
+ expect(p.parse("Deuxiemes Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxiemes Thessaloniciens 1:1'")
2551
+ expect(p.parse("Deuxièmes Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxièmes Thessaloniciens 1:1'")
2552
+ expect(p.parse("Deuxieme Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxieme Thessaloniciens 1:1'")
2553
+ expect(p.parse("Deuxiemes Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxiemes Thesaloniciens 1:1'")
2554
+ expect(p.parse("Deuxième Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxième Thessaloniciens 1:1'")
2555
+ expect(p.parse("Deuxièmes Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxièmes Thesaloniciens 1:1'")
2556
+ expect(p.parse("Deuxieme Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxieme Thesaloniciens 1:1'")
2557
+ expect(p.parse("Deuxième Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Deuxième Thesaloniciens 1:1'")
2558
+ expect(p.parse("2eme. Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2eme. Thessaloniciens 1:1'")
2559
+ expect(p.parse("2ème. Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ème. Thessaloniciens 1:1'")
2560
+ expect(p.parse("2de. Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2de. Thessaloniciens 1:1'")
2561
+ expect(p.parse("2eme Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2eme Thessaloniciens 1:1'")
2562
+ expect(p.parse("2eme. Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2eme. Thesaloniciens 1:1'")
2563
+ expect(p.parse("2ème Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ème Thessaloniciens 1:1'")
2564
+ expect(p.parse("2ème. Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ème. Thesaloniciens 1:1'")
2565
+ expect(p.parse("2d. Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2d. Thessaloniciens 1:1'")
2566
+ expect(p.parse("2de Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2de Thessaloniciens 1:1'")
2567
+ expect(p.parse("2de. Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2de. Thesaloniciens 1:1'")
2568
+ expect(p.parse("2e. Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2e. Thessaloniciens 1:1'")
2569
+ expect(p.parse("2eme Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2eme Thesaloniciens 1:1'")
2570
+ expect(p.parse("2ème Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ème Thesaloniciens 1:1'")
2571
+ expect(p.parse("II. Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. Thessaloniciens 1:1'")
2572
+ expect(p.parse("2. Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Thessaloniciens 1:1'")
2573
+ expect(p.parse("2d Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2d Thessaloniciens 1:1'")
2574
+ expect(p.parse("2d. Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2d. Thesaloniciens 1:1'")
2575
+ expect(p.parse("2de Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2de Thesaloniciens 1:1'")
2576
+ expect(p.parse("2e Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2e Thessaloniciens 1:1'")
2577
+ expect(p.parse("2e. Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2e. Thesaloniciens 1:1'")
2578
+ expect(p.parse("II Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II Thessaloniciens 1:1'")
2579
+ expect(p.parse("II. Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. Thesaloniciens 1:1'")
2580
+ expect(p.parse("2 Thessaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Thessaloniciens 1:1'")
2581
+ expect(p.parse("2. Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Thesaloniciens 1:1'")
2582
+ expect(p.parse("2d Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2d Thesaloniciens 1:1'")
2583
+ expect(p.parse("2e Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2e Thesaloniciens 1:1'")
2584
+ expect(p.parse("II Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II Thesaloniciens 1:1'")
2585
+ expect(p.parse("2 Thesaloniciens 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Thesaloniciens 1:1'")
2586
+ expect(p.parse("2 Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Thess 1:1'")
2587
+ expect(p.parse("2 Thes 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Thes 1:1'")
2588
+ expect(p.parse("2Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2Thess 1:1'")
2589
+ expect(p.parse("2 Th 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Th 1:1'")
2590
+ p.include_apocrypha(false)
2591
+ expect(p.parse("DEUXIEMES THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIEMES THESSALONICIENS 1:1'")
2592
+ expect(p.parse("DEUXIÈMES THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIÈMES THESSALONICIENS 1:1'")
2593
+ expect(p.parse("DEUXIEME THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIEME THESSALONICIENS 1:1'")
2594
+ expect(p.parse("DEUXIEMES THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIEMES THESALONICIENS 1:1'")
2595
+ expect(p.parse("DEUXIÈME THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIÈME THESSALONICIENS 1:1'")
2596
+ expect(p.parse("DEUXIÈMES THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIÈMES THESALONICIENS 1:1'")
2597
+ expect(p.parse("DEUXIEME THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIEME THESALONICIENS 1:1'")
2598
+ expect(p.parse("DEUXIÈME THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'DEUXIÈME THESALONICIENS 1:1'")
2599
+ expect(p.parse("2EME. THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2EME. THESSALONICIENS 1:1'")
2600
+ expect(p.parse("2ÈME. THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ÈME. THESSALONICIENS 1:1'")
2601
+ expect(p.parse("2DE. THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2DE. THESSALONICIENS 1:1'")
2602
+ expect(p.parse("2EME THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2EME THESSALONICIENS 1:1'")
2603
+ expect(p.parse("2EME. THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2EME. THESALONICIENS 1:1'")
2604
+ expect(p.parse("2ÈME THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ÈME THESSALONICIENS 1:1'")
2605
+ expect(p.parse("2ÈME. THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ÈME. THESALONICIENS 1:1'")
2606
+ expect(p.parse("2D. THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2D. THESSALONICIENS 1:1'")
2607
+ expect(p.parse("2DE THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2DE THESSALONICIENS 1:1'")
2608
+ expect(p.parse("2DE. THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2DE. THESALONICIENS 1:1'")
2609
+ expect(p.parse("2E. THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2E. THESSALONICIENS 1:1'")
2610
+ expect(p.parse("2EME THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2EME THESALONICIENS 1:1'")
2611
+ expect(p.parse("2ÈME THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2ÈME THESALONICIENS 1:1'")
2612
+ expect(p.parse("II. THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. THESSALONICIENS 1:1'")
2613
+ expect(p.parse("2. THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. THESSALONICIENS 1:1'")
2614
+ expect(p.parse("2D THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2D THESSALONICIENS 1:1'")
2615
+ expect(p.parse("2D. THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2D. THESALONICIENS 1:1'")
2616
+ expect(p.parse("2DE THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2DE THESALONICIENS 1:1'")
2617
+ expect(p.parse("2E THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2E THESSALONICIENS 1:1'")
2618
+ expect(p.parse("2E. THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2E. THESALONICIENS 1:1'")
2619
+ expect(p.parse("II THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II THESSALONICIENS 1:1'")
2620
+ expect(p.parse("II. THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II. THESALONICIENS 1:1'")
2621
+ expect(p.parse("2 THESSALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 THESSALONICIENS 1:1'")
2622
+ expect(p.parse("2. THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. THESALONICIENS 1:1'")
2623
+ expect(p.parse("2D THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2D THESALONICIENS 1:1'")
2624
+ expect(p.parse("2E THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2E THESALONICIENS 1:1'")
2625
+ expect(p.parse("II THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'II THESALONICIENS 1:1'")
2626
+ expect(p.parse("2 THESALONICIENS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 THESALONICIENS 1:1'")
2627
+ expect(p.parse("2 THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 THESS 1:1'")
2628
+ expect(p.parse("2 THES 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 THES 1:1'")
2629
+ expect(p.parse("2THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2THESS 1:1'")
2630
+ expect(p.parse("2 TH 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 TH 1:1'")
2631
+ ;
2632
+ return true;
2633
+ });
2634
+ });
2635
+
2636
+ describe("Localized book 1Thess (fr)", function() {
2637
+ var p;
2638
+ p = {};
2639
+ beforeEach(function() {
2640
+ p = new bcv_parser();
2641
+ p.set_options({
2642
+ book_alone_strategy: "ignore",
2643
+ book_sequence_strategy: "ignore",
2644
+ osis_compaction_strategy: "bc",
2645
+ captive_end_digits_strategy: "delete"
2646
+ });
2647
+ return p.include_apocrypha(true);
2648
+ });
2649
+ return it("should handle book: 1Thess (fr)", function() {
2650
+
2651
+ expect(p.parse("Premieres Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premieres Thessaloniciens 1:1'")
2652
+ expect(p.parse("Premières Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premières Thessaloniciens 1:1'")
2653
+ expect(p.parse("Premiere Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premiere Thessaloniciens 1:1'")
2654
+ expect(p.parse("Premieres Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premieres Thesaloniciens 1:1'")
2655
+ expect(p.parse("Premiers Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premiers Thessaloniciens 1:1'")
2656
+ expect(p.parse("Première Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Première Thessaloniciens 1:1'")
2657
+ expect(p.parse("Premières Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premières Thesaloniciens 1:1'")
2658
+ expect(p.parse("Premier Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premier Thessaloniciens 1:1'")
2659
+ expect(p.parse("Premiere Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premiere Thesaloniciens 1:1'")
2660
+ expect(p.parse("Premiers Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premiers Thesaloniciens 1:1'")
2661
+ expect(p.parse("Première Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Première Thesaloniciens 1:1'")
2662
+ expect(p.parse("Premier Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Premier Thesaloniciens 1:1'")
2663
+ expect(p.parse("1ere. Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ere. Thessaloniciens 1:1'")
2664
+ expect(p.parse("1ère. Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ère. Thessaloniciens 1:1'")
2665
+ expect(p.parse("1er. Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1er. Thessaloniciens 1:1'")
2666
+ expect(p.parse("1ere Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ere Thessaloniciens 1:1'")
2667
+ expect(p.parse("1ere. Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ere. Thesaloniciens 1:1'")
2668
+ expect(p.parse("1re. Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1re. Thessaloniciens 1:1'")
2669
+ expect(p.parse("1ère Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ère Thessaloniciens 1:1'")
2670
+ expect(p.parse("1ère. Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ère. Thesaloniciens 1:1'")
2671
+ expect(p.parse("1er Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1er Thessaloniciens 1:1'")
2672
+ expect(p.parse("1er. Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1er. Thesaloniciens 1:1'")
2673
+ expect(p.parse("1ere Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ere Thesaloniciens 1:1'")
2674
+ expect(p.parse("1re Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1re Thessaloniciens 1:1'")
2675
+ expect(p.parse("1re. Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1re. Thesaloniciens 1:1'")
2676
+ expect(p.parse("1ère Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ère Thesaloniciens 1:1'")
2677
+ expect(p.parse("1. Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Thessaloniciens 1:1'")
2678
+ expect(p.parse("1er Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1er Thesaloniciens 1:1'")
2679
+ expect(p.parse("1re Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1re Thesaloniciens 1:1'")
2680
+ expect(p.parse("I. Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. Thessaloniciens 1:1'")
2681
+ expect(p.parse("1 Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Thessaloniciens 1:1'")
2682
+ expect(p.parse("1. Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Thesaloniciens 1:1'")
2683
+ expect(p.parse("I Thessaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I Thessaloniciens 1:1'")
2684
+ expect(p.parse("I. Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. Thesaloniciens 1:1'")
2685
+ expect(p.parse("1 Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Thesaloniciens 1:1'")
2686
+ expect(p.parse("I Thesaloniciens 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I Thesaloniciens 1:1'")
2687
+ expect(p.parse("1 Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Thess 1:1'")
2688
+ expect(p.parse("1 Thes 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Thes 1:1'")
2689
+ expect(p.parse("1Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1Thess 1:1'")
2690
+ expect(p.parse("1 Th 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Th 1:1'")
2691
+ p.include_apocrypha(false)
2692
+ expect(p.parse("PREMIERES THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIERES THESSALONICIENS 1:1'")
2693
+ expect(p.parse("PREMIÈRES THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIÈRES THESSALONICIENS 1:1'")
2694
+ expect(p.parse("PREMIERE THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIERE THESSALONICIENS 1:1'")
2695
+ expect(p.parse("PREMIERES THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIERES THESALONICIENS 1:1'")
2696
+ expect(p.parse("PREMIERS THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIERS THESSALONICIENS 1:1'")
2697
+ expect(p.parse("PREMIÈRE THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIÈRE THESSALONICIENS 1:1'")
2698
+ expect(p.parse("PREMIÈRES THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIÈRES THESALONICIENS 1:1'")
2699
+ expect(p.parse("PREMIER THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIER THESSALONICIENS 1:1'")
2700
+ expect(p.parse("PREMIERE THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIERE THESALONICIENS 1:1'")
2701
+ expect(p.parse("PREMIERS THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIERS THESALONICIENS 1:1'")
2702
+ expect(p.parse("PREMIÈRE THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIÈRE THESALONICIENS 1:1'")
2703
+ expect(p.parse("PREMIER THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'PREMIER THESALONICIENS 1:1'")
2704
+ expect(p.parse("1ERE. THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ERE. THESSALONICIENS 1:1'")
2705
+ expect(p.parse("1ÈRE. THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ÈRE. THESSALONICIENS 1:1'")
2706
+ expect(p.parse("1ER. THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ER. THESSALONICIENS 1:1'")
2707
+ expect(p.parse("1ERE THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ERE THESSALONICIENS 1:1'")
2708
+ expect(p.parse("1ERE. THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ERE. THESALONICIENS 1:1'")
2709
+ expect(p.parse("1RE. THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1RE. THESSALONICIENS 1:1'")
2710
+ expect(p.parse("1ÈRE THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ÈRE THESSALONICIENS 1:1'")
2711
+ expect(p.parse("1ÈRE. THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ÈRE. THESALONICIENS 1:1'")
2712
+ expect(p.parse("1ER THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ER THESSALONICIENS 1:1'")
2713
+ expect(p.parse("1ER. THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ER. THESALONICIENS 1:1'")
2714
+ expect(p.parse("1ERE THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ERE THESALONICIENS 1:1'")
2715
+ expect(p.parse("1RE THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1RE THESSALONICIENS 1:1'")
2716
+ expect(p.parse("1RE. THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1RE. THESALONICIENS 1:1'")
2717
+ expect(p.parse("1ÈRE THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ÈRE THESALONICIENS 1:1'")
2718
+ expect(p.parse("1. THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. THESSALONICIENS 1:1'")
2719
+ expect(p.parse("1ER THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1ER THESALONICIENS 1:1'")
2720
+ expect(p.parse("1RE THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1RE THESALONICIENS 1:1'")
2721
+ expect(p.parse("I. THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. THESSALONICIENS 1:1'")
2722
+ expect(p.parse("1 THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 THESSALONICIENS 1:1'")
2723
+ expect(p.parse("1. THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. THESALONICIENS 1:1'")
2724
+ expect(p.parse("I THESSALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I THESSALONICIENS 1:1'")
2725
+ expect(p.parse("I. THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I. THESALONICIENS 1:1'")
2726
+ expect(p.parse("1 THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 THESALONICIENS 1:1'")
2727
+ expect(p.parse("I THESALONICIENS 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'I THESALONICIENS 1:1'")
2728
+ expect(p.parse("1 THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 THESS 1:1'")
2729
+ expect(p.parse("1 THES 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 THES 1:1'")
2730
+ expect(p.parse("1THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1THESS 1:1'")
2731
+ expect(p.parse("1 TH 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 TH 1:1'")
2732
+ ;
2733
+ return true;
2734
+ });
2735
+ });
2736
+
2737
+ describe("Localized book 2Tim (fr)", function() {
2738
+ var p;
2739
+ p = {};
2740
+ beforeEach(function() {
2741
+ p = new bcv_parser();
2742
+ p.set_options({
2743
+ book_alone_strategy: "ignore",
2744
+ book_sequence_strategy: "ignore",
2745
+ osis_compaction_strategy: "bc",
2746
+ captive_end_digits_strategy: "delete"
2747
+ });
2748
+ return p.include_apocrypha(true);
2749
+ });
2750
+ return it("should handle book: 2Tim (fr)", function() {
2751
+
2752
+ expect(p.parse("Deuxiemes Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxiemes Timothee 1:1'")
2753
+ expect(p.parse("Deuxiemes Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxiemes Timothée 1:1'")
2754
+ expect(p.parse("Deuxièmes Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxièmes Timothee 1:1'")
2755
+ expect(p.parse("Deuxièmes Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxièmes Timothée 1:1'")
2756
+ expect(p.parse("Deuxieme Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxieme Timothee 1:1'")
2757
+ expect(p.parse("Deuxieme Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxieme Timothée 1:1'")
2758
+ expect(p.parse("Deuxième Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxième Timothee 1:1'")
2759
+ expect(p.parse("Deuxième Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Deuxième Timothée 1:1'")
2760
+ expect(p.parse("2eme. Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2eme. Timothee 1:1'")
2761
+ expect(p.parse("2eme. Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2eme. Timothée 1:1'")
2762
+ expect(p.parse("2ème. Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ème. Timothee 1:1'")
2763
+ expect(p.parse("2ème. Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ème. Timothée 1:1'")
2764
+ expect(p.parse("2de. Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2de. Timothee 1:1'")
2765
+ expect(p.parse("2de. Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2de. Timothée 1:1'")
2766
+ expect(p.parse("2eme Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2eme Timothee 1:1'")
2767
+ expect(p.parse("2eme Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2eme Timothée 1:1'")
2768
+ expect(p.parse("2ème Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ème Timothee 1:1'")
2769
+ expect(p.parse("2ème Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ème Timothée 1:1'")
2770
+ expect(p.parse("2d. Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2d. Timothee 1:1'")
2771
+ expect(p.parse("2d. Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2d. Timothée 1:1'")
2772
+ expect(p.parse("2de Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2de Timothee 1:1'")
2773
+ expect(p.parse("2de Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2de Timothée 1:1'")
2774
+ expect(p.parse("2e. Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2e. Timothee 1:1'")
2775
+ expect(p.parse("2e. Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2e. Timothée 1:1'")
2776
+ expect(p.parse("II. Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. Timothee 1:1'")
2777
+ expect(p.parse("II. Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. Timothée 1:1'")
2778
+ expect(p.parse("2. Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Timothee 1:1'")
2779
+ expect(p.parse("2. Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Timothée 1:1'")
2780
+ expect(p.parse("2d Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2d Timothee 1:1'")
2781
+ expect(p.parse("2d Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2d Timothée 1:1'")
2782
+ expect(p.parse("2e Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2e Timothee 1:1'")
2783
+ expect(p.parse("2e Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2e Timothée 1:1'")
2784
+ expect(p.parse("II Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II Timothee 1:1'")
2785
+ expect(p.parse("II Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II Timothée 1:1'")
2786
+ expect(p.parse("2 Timothee 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Timothee 1:1'")
2787
+ expect(p.parse("2 Timothée 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Timothée 1:1'")
2788
+ expect(p.parse("2 Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Tim 1:1'")
2789
+ expect(p.parse("2 Ti 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Ti 1:1'")
2790
+ expect(p.parse("2 Tm 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Tm 1:1'")
2791
+ expect(p.parse("2Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2Tim 1:1'")
2792
+ p.include_apocrypha(false)
2793
+ expect(p.parse("DEUXIEMES TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIEMES TIMOTHEE 1:1'")
2794
+ expect(p.parse("DEUXIEMES TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIEMES TIMOTHÉE 1:1'")
2795
+ expect(p.parse("DEUXIÈMES TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIÈMES TIMOTHEE 1:1'")
2796
+ expect(p.parse("DEUXIÈMES TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIÈMES TIMOTHÉE 1:1'")
2797
+ expect(p.parse("DEUXIEME TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIEME TIMOTHEE 1:1'")
2798
+ expect(p.parse("DEUXIEME TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIEME TIMOTHÉE 1:1'")
2799
+ expect(p.parse("DEUXIÈME TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIÈME TIMOTHEE 1:1'")
2800
+ expect(p.parse("DEUXIÈME TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'DEUXIÈME TIMOTHÉE 1:1'")
2801
+ expect(p.parse("2EME. TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2EME. TIMOTHEE 1:1'")
2802
+ expect(p.parse("2EME. TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2EME. TIMOTHÉE 1:1'")
2803
+ expect(p.parse("2ÈME. TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ÈME. TIMOTHEE 1:1'")
2804
+ expect(p.parse("2ÈME. TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ÈME. TIMOTHÉE 1:1'")
2805
+ expect(p.parse("2DE. TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2DE. TIMOTHEE 1:1'")
2806
+ expect(p.parse("2DE. TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2DE. TIMOTHÉE 1:1'")
2807
+ expect(p.parse("2EME TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2EME TIMOTHEE 1:1'")
2808
+ expect(p.parse("2EME TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2EME TIMOTHÉE 1:1'")
2809
+ expect(p.parse("2ÈME TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ÈME TIMOTHEE 1:1'")
2810
+ expect(p.parse("2ÈME TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2ÈME TIMOTHÉE 1:1'")
2811
+ expect(p.parse("2D. TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2D. TIMOTHEE 1:1'")
2812
+ expect(p.parse("2D. TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2D. TIMOTHÉE 1:1'")
2813
+ expect(p.parse("2DE TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2DE TIMOTHEE 1:1'")
2814
+ expect(p.parse("2DE TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2DE TIMOTHÉE 1:1'")
2815
+ expect(p.parse("2E. TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2E. TIMOTHEE 1:1'")
2816
+ expect(p.parse("2E. TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2E. TIMOTHÉE 1:1'")
2817
+ expect(p.parse("II. TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. TIMOTHEE 1:1'")
2818
+ expect(p.parse("II. TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II. TIMOTHÉE 1:1'")
2819
+ expect(p.parse("2. TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIMOTHEE 1:1'")
2820
+ expect(p.parse("2. TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIMOTHÉE 1:1'")
2821
+ expect(p.parse("2D TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2D TIMOTHEE 1:1'")
2822
+ expect(p.parse("2D TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2D TIMOTHÉE 1:1'")
2823
+ expect(p.parse("2E TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2E TIMOTHEE 1:1'")
2824
+ expect(p.parse("2E TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2E TIMOTHÉE 1:1'")
2825
+ expect(p.parse("II TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II TIMOTHEE 1:1'")
2826
+ expect(p.parse("II TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'II TIMOTHÉE 1:1'")
2827
+ expect(p.parse("2 TIMOTHEE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIMOTHEE 1:1'")
2828
+ expect(p.parse("2 TIMOTHÉE 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIMOTHÉE 1:1'")
2829
+ expect(p.parse("2 TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIM 1:1'")
2830
+ expect(p.parse("2 TI 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TI 1:1'")
2831
+ expect(p.parse("2 TM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TM 1:1'")
2832
+ expect(p.parse("2TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2TIM 1:1'")
2833
+ ;
2834
+ return true;
2835
+ });
2836
+ });
2837
+
2838
+ describe("Localized book 1Tim (fr)", function() {
2839
+ var p;
2840
+ p = {};
2841
+ beforeEach(function() {
2842
+ p = new bcv_parser();
2843
+ p.set_options({
2844
+ book_alone_strategy: "ignore",
2845
+ book_sequence_strategy: "ignore",
2846
+ osis_compaction_strategy: "bc",
2847
+ captive_end_digits_strategy: "delete"
2848
+ });
2849
+ return p.include_apocrypha(true);
2850
+ });
2851
+ return it("should handle book: 1Tim (fr)", function() {
2852
+
2853
+ expect(p.parse("Premieres Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premieres Timothee 1:1'")
2854
+ expect(p.parse("Premieres Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premieres Timothée 1:1'")
2855
+ expect(p.parse("Premières Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premières Timothee 1:1'")
2856
+ expect(p.parse("Premières Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premières Timothée 1:1'")
2857
+ expect(p.parse("Premiere Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premiere Timothee 1:1'")
2858
+ expect(p.parse("Premiere Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premiere Timothée 1:1'")
2859
+ expect(p.parse("Premiers Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premiers Timothee 1:1'")
2860
+ expect(p.parse("Premiers Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premiers Timothée 1:1'")
2861
+ expect(p.parse("Première Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Première Timothee 1:1'")
2862
+ expect(p.parse("Première Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Première Timothée 1:1'")
2863
+ expect(p.parse("Premier Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premier Timothee 1:1'")
2864
+ expect(p.parse("Premier Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Premier Timothée 1:1'")
2865
+ expect(p.parse("1ere. Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ere. Timothee 1:1'")
2866
+ expect(p.parse("1ere. Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ere. Timothée 1:1'")
2867
+ expect(p.parse("1ère. Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ère. Timothee 1:1'")
2868
+ expect(p.parse("1ère. Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ère. Timothée 1:1'")
2869
+ expect(p.parse("1er. Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1er. Timothee 1:1'")
2870
+ expect(p.parse("1er. Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1er. Timothée 1:1'")
2871
+ expect(p.parse("1ere Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ere Timothee 1:1'")
2872
+ expect(p.parse("1ere Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ere Timothée 1:1'")
2873
+ expect(p.parse("1re. Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1re. Timothee 1:1'")
2874
+ expect(p.parse("1re. Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1re. Timothée 1:1'")
2875
+ expect(p.parse("1ère Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ère Timothee 1:1'")
2876
+ expect(p.parse("1ère Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ère Timothée 1:1'")
2877
+ expect(p.parse("1er Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1er Timothee 1:1'")
2878
+ expect(p.parse("1er Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1er Timothée 1:1'")
2879
+ expect(p.parse("1re Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1re Timothee 1:1'")
2880
+ expect(p.parse("1re Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1re Timothée 1:1'")
2881
+ expect(p.parse("1. Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Timothee 1:1'")
2882
+ expect(p.parse("1. Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Timothée 1:1'")
2883
+ expect(p.parse("I. Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. Timothee 1:1'")
2884
+ expect(p.parse("I. Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. Timothée 1:1'")
2885
+ expect(p.parse("1 Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Timothee 1:1'")
2886
+ expect(p.parse("1 Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Timothée 1:1'")
2887
+ expect(p.parse("I Timothee 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I Timothee 1:1'")
2888
+ expect(p.parse("I Timothée 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I Timothée 1:1'")
2889
+ expect(p.parse("1 Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Tim 1:1'")
2890
+ expect(p.parse("1 Ti 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Ti 1:1'")
2891
+ expect(p.parse("1 Tm 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Tm 1:1'")
2892
+ expect(p.parse("1Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1Tim 1:1'")
2893
+ p.include_apocrypha(false)
2894
+ expect(p.parse("PREMIERES TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIERES TIMOTHEE 1:1'")
2895
+ expect(p.parse("PREMIERES TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIERES TIMOTHÉE 1:1'")
2896
+ expect(p.parse("PREMIÈRES TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIÈRES TIMOTHEE 1:1'")
2897
+ expect(p.parse("PREMIÈRES TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIÈRES TIMOTHÉE 1:1'")
2898
+ expect(p.parse("PREMIERE TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIERE TIMOTHEE 1:1'")
2899
+ expect(p.parse("PREMIERE TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIERE TIMOTHÉE 1:1'")
2900
+ expect(p.parse("PREMIERS TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIERS TIMOTHEE 1:1'")
2901
+ expect(p.parse("PREMIERS TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIERS TIMOTHÉE 1:1'")
2902
+ expect(p.parse("PREMIÈRE TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIÈRE TIMOTHEE 1:1'")
2903
+ expect(p.parse("PREMIÈRE TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIÈRE TIMOTHÉE 1:1'")
2904
+ expect(p.parse("PREMIER TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIER TIMOTHEE 1:1'")
2905
+ expect(p.parse("PREMIER TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'PREMIER TIMOTHÉE 1:1'")
2906
+ expect(p.parse("1ERE. TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ERE. TIMOTHEE 1:1'")
2907
+ expect(p.parse("1ERE. TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ERE. TIMOTHÉE 1:1'")
2908
+ expect(p.parse("1ÈRE. TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ÈRE. TIMOTHEE 1:1'")
2909
+ expect(p.parse("1ÈRE. TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ÈRE. TIMOTHÉE 1:1'")
2910
+ expect(p.parse("1ER. TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ER. TIMOTHEE 1:1'")
2911
+ expect(p.parse("1ER. TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ER. TIMOTHÉE 1:1'")
2912
+ expect(p.parse("1ERE TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ERE TIMOTHEE 1:1'")
2913
+ expect(p.parse("1ERE TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ERE TIMOTHÉE 1:1'")
2914
+ expect(p.parse("1RE. TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1RE. TIMOTHEE 1:1'")
2915
+ expect(p.parse("1RE. TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1RE. TIMOTHÉE 1:1'")
2916
+ expect(p.parse("1ÈRE TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ÈRE TIMOTHEE 1:1'")
2917
+ expect(p.parse("1ÈRE TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ÈRE TIMOTHÉE 1:1'")
2918
+ expect(p.parse("1ER TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ER TIMOTHEE 1:1'")
2919
+ expect(p.parse("1ER TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1ER TIMOTHÉE 1:1'")
2920
+ expect(p.parse("1RE TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1RE TIMOTHEE 1:1'")
2921
+ expect(p.parse("1RE TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1RE TIMOTHÉE 1:1'")
2922
+ expect(p.parse("1. TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TIMOTHEE 1:1'")
2923
+ expect(p.parse("1. TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TIMOTHÉE 1:1'")
2924
+ expect(p.parse("I. TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. TIMOTHEE 1:1'")
2925
+ expect(p.parse("I. TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I. TIMOTHÉE 1:1'")
2926
+ expect(p.parse("1 TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIMOTHEE 1:1'")
2927
+ expect(p.parse("1 TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIMOTHÉE 1:1'")
2928
+ expect(p.parse("I TIMOTHEE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I TIMOTHEE 1:1'")
2929
+ expect(p.parse("I TIMOTHÉE 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'I TIMOTHÉE 1:1'")
2930
+ expect(p.parse("1 TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIM 1:1'")
2931
+ expect(p.parse("1 TI 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TI 1:1'")
2932
+ expect(p.parse("1 TM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TM 1:1'")
2933
+ expect(p.parse("1TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1TIM 1:1'")
2934
+ ;
2935
+ return true;
2936
+ });
2937
+ });
2938
+
2939
+ describe("Localized book Titus (fr)", function() {
2940
+ var p;
2941
+ p = {};
2942
+ beforeEach(function() {
2943
+ p = new bcv_parser();
2944
+ p.set_options({
2945
+ book_alone_strategy: "ignore",
2946
+ book_sequence_strategy: "ignore",
2947
+ osis_compaction_strategy: "bc",
2948
+ captive_end_digits_strategy: "delete"
2949
+ });
2950
+ return p.include_apocrypha(true);
2951
+ });
2952
+ return it("should handle book: Titus (fr)", function() {
2953
+
2954
+ expect(p.parse("Titus 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titus 1:1'")
2955
+ expect(p.parse("Tite 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tite 1:1'")
2956
+ expect(p.parse("Tit 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tit 1:1'")
2957
+ expect(p.parse("Tt 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tt 1:1'")
2958
+ p.include_apocrypha(false)
2959
+ expect(p.parse("TITUS 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITUS 1:1'")
2960
+ expect(p.parse("TITE 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITE 1:1'")
2961
+ expect(p.parse("TIT 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TIT 1:1'")
2962
+ expect(p.parse("TT 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TT 1:1'")
2963
+ ;
2964
+ return true;
2965
+ });
2966
+ });
2967
+
2968
+ describe("Localized book Phlm (fr)", function() {
2969
+ var p;
2970
+ p = {};
2971
+ beforeEach(function() {
2972
+ p = new bcv_parser();
2973
+ p.set_options({
2974
+ book_alone_strategy: "ignore",
2975
+ book_sequence_strategy: "ignore",
2976
+ osis_compaction_strategy: "bc",
2977
+ captive_end_digits_strategy: "delete"
2978
+ });
2979
+ return p.include_apocrypha(true);
2980
+ });
2981
+ return it("should handle book: Phlm (fr)", function() {
2982
+
2983
+ expect(p.parse("Philemon 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Philemon 1:1'")
2984
+ expect(p.parse("Philémon 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Philémon 1:1'")
2985
+ expect(p.parse("Phlm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phlm 1:1'")
2986
+ expect(p.parse("Phm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phm 1:1'")
2987
+ p.include_apocrypha(false)
2988
+ expect(p.parse("PHILEMON 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHILEMON 1:1'")
2989
+ expect(p.parse("PHILÉMON 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHILÉMON 1:1'")
2990
+ expect(p.parse("PHLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHLM 1:1'")
2991
+ expect(p.parse("PHM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHM 1:1'")
2992
+ ;
2993
+ return true;
2994
+ });
2995
+ });
2996
+
2997
+ describe("Localized book Heb (fr)", function() {
2998
+ var p;
2999
+ p = {};
3000
+ beforeEach(function() {
3001
+ p = new bcv_parser();
3002
+ p.set_options({
3003
+ book_alone_strategy: "ignore",
3004
+ book_sequence_strategy: "ignore",
3005
+ osis_compaction_strategy: "bc",
3006
+ captive_end_digits_strategy: "delete"
3007
+ });
3008
+ return p.include_apocrypha(true);
3009
+ });
3010
+ return it("should handle book: Heb (fr)", function() {
3011
+
3012
+ expect(p.parse("Hebreux 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hebreux 1:1'")
3013
+ expect(p.parse("Hébreux 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hébreux 1:1'")
3014
+ expect(p.parse("Hebr 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hebr 1:1'")
3015
+ expect(p.parse("Hébr 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hébr 1:1'")
3016
+ expect(p.parse("Heb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Heb 1:1'")
3017
+ expect(p.parse("Héb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Héb 1:1'")
3018
+ expect(p.parse("He 1:1").osis()).toEqual("Heb.1.1", "parsing: 'He 1:1'")
3019
+ expect(p.parse("Hé 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hé 1:1'")
3020
+ p.include_apocrypha(false)
3021
+ expect(p.parse("HEBREUX 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEBREUX 1:1'")
3022
+ expect(p.parse("HÉBREUX 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HÉBREUX 1:1'")
3023
+ expect(p.parse("HEBR 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEBR 1:1'")
3024
+ expect(p.parse("HÉBR 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HÉBR 1:1'")
3025
+ expect(p.parse("HEB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEB 1:1'")
3026
+ expect(p.parse("HÉB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HÉB 1:1'")
3027
+ expect(p.parse("HE 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HE 1:1'")
3028
+ expect(p.parse("HÉ 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HÉ 1:1'")
3029
+ ;
3030
+ return true;
3031
+ });
3032
+ });
3033
+
3034
+ describe("Localized book Jas (fr)", function() {
3035
+ var p;
3036
+ p = {};
3037
+ beforeEach(function() {
3038
+ p = new bcv_parser();
3039
+ p.set_options({
3040
+ book_alone_strategy: "ignore",
3041
+ book_sequence_strategy: "ignore",
3042
+ osis_compaction_strategy: "bc",
3043
+ captive_end_digits_strategy: "delete"
3044
+ });
3045
+ return p.include_apocrypha(true);
3046
+ });
3047
+ return it("should handle book: Jas (fr)", function() {
3048
+
3049
+ expect(p.parse("Jacques 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jacques 1:1'")
3050
+ expect(p.parse("Jaques 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jaques 1:1'")
3051
+ expect(p.parse("Jacq 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jacq 1:1'")
3052
+ expect(p.parse("Jac 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jac 1:1'")
3053
+ expect(p.parse("Jas 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jas 1:1'")
3054
+ expect(p.parse("Ja 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Ja 1:1'")
3055
+ expect(p.parse("Jc 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jc 1:1'")
3056
+ p.include_apocrypha(false)
3057
+ expect(p.parse("JACQUES 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JACQUES 1:1'")
3058
+ expect(p.parse("JAQUES 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAQUES 1:1'")
3059
+ expect(p.parse("JACQ 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JACQ 1:1'")
3060
+ expect(p.parse("JAC 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAC 1:1'")
3061
+ expect(p.parse("JAS 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAS 1:1'")
3062
+ expect(p.parse("JA 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JA 1:1'")
3063
+ expect(p.parse("JC 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JC 1:1'")
3064
+ ;
3065
+ return true;
3066
+ });
3067
+ });
3068
+
3069
+ describe("Localized book 2Pet (fr)", function() {
3070
+ var p;
3071
+ p = {};
3072
+ beforeEach(function() {
3073
+ p = new bcv_parser();
3074
+ p.set_options({
3075
+ book_alone_strategy: "ignore",
3076
+ book_sequence_strategy: "ignore",
3077
+ osis_compaction_strategy: "bc",
3078
+ captive_end_digits_strategy: "delete"
3079
+ });
3080
+ return p.include_apocrypha(true);
3081
+ });
3082
+ return it("should handle book: 2Pet (fr)", function() {
3083
+
3084
+ expect(p.parse("Deuxiemes Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Deuxiemes Pierre 1:1'")
3085
+ expect(p.parse("Deuxièmes Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Deuxièmes Pierre 1:1'")
3086
+ expect(p.parse("Deuxieme Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Deuxieme Pierre 1:1'")
3087
+ expect(p.parse("Deuxième Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Deuxième Pierre 1:1'")
3088
+ expect(p.parse("2eme. Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2eme. Pierre 1:1'")
3089
+ expect(p.parse("2ème. Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2ème. Pierre 1:1'")
3090
+ expect(p.parse("2de. Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2de. Pierre 1:1'")
3091
+ expect(p.parse("2eme Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2eme Pierre 1:1'")
3092
+ expect(p.parse("2ème Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2ème Pierre 1:1'")
3093
+ expect(p.parse("2d. Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2d. Pierre 1:1'")
3094
+ expect(p.parse("2de Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2de Pierre 1:1'")
3095
+ expect(p.parse("2e. Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2e. Pierre 1:1'")
3096
+ expect(p.parse("II. Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II. Pierre 1:1'")
3097
+ expect(p.parse("2. Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Pierre 1:1'")
3098
+ expect(p.parse("2d Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2d Pierre 1:1'")
3099
+ expect(p.parse("2e Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2e Pierre 1:1'")
3100
+ expect(p.parse("II Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II Pierre 1:1'")
3101
+ expect(p.parse("2 Pierre 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Pierre 1:1'")
3102
+ expect(p.parse("2 Pi 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Pi 1:1'")
3103
+ expect(p.parse("2Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2Pet 1:1'")
3104
+ expect(p.parse("2 P 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 P 1:1'")
3105
+ p.include_apocrypha(false)
3106
+ expect(p.parse("DEUXIEMES PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'DEUXIEMES PIERRE 1:1'")
3107
+ expect(p.parse("DEUXIÈMES PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'DEUXIÈMES PIERRE 1:1'")
3108
+ expect(p.parse("DEUXIEME PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'DEUXIEME PIERRE 1:1'")
3109
+ expect(p.parse("DEUXIÈME PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'DEUXIÈME PIERRE 1:1'")
3110
+ expect(p.parse("2EME. PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2EME. PIERRE 1:1'")
3111
+ expect(p.parse("2ÈME. PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2ÈME. PIERRE 1:1'")
3112
+ expect(p.parse("2DE. PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2DE. PIERRE 1:1'")
3113
+ expect(p.parse("2EME PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2EME PIERRE 1:1'")
3114
+ expect(p.parse("2ÈME PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2ÈME PIERRE 1:1'")
3115
+ expect(p.parse("2D. PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2D. PIERRE 1:1'")
3116
+ expect(p.parse("2DE PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2DE PIERRE 1:1'")
3117
+ expect(p.parse("2E. PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2E. PIERRE 1:1'")
3118
+ expect(p.parse("II. PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II. PIERRE 1:1'")
3119
+ expect(p.parse("2. PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PIERRE 1:1'")
3120
+ expect(p.parse("2D PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2D PIERRE 1:1'")
3121
+ expect(p.parse("2E PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2E PIERRE 1:1'")
3122
+ expect(p.parse("II PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'II PIERRE 1:1'")
3123
+ expect(p.parse("2 PIERRE 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PIERRE 1:1'")
3124
+ expect(p.parse("2 PI 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PI 1:1'")
3125
+ expect(p.parse("2PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2PET 1:1'")
3126
+ expect(p.parse("2 P 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 P 1:1'")
3127
+ ;
3128
+ return true;
3129
+ });
3130
+ });
3131
+
3132
+ describe("Localized book 1Pet (fr)", function() {
3133
+ var p;
3134
+ p = {};
3135
+ beforeEach(function() {
3136
+ p = new bcv_parser();
3137
+ p.set_options({
3138
+ book_alone_strategy: "ignore",
3139
+ book_sequence_strategy: "ignore",
3140
+ osis_compaction_strategy: "bc",
3141
+ captive_end_digits_strategy: "delete"
3142
+ });
3143
+ return p.include_apocrypha(true);
3144
+ });
3145
+ return it("should handle book: 1Pet (fr)", function() {
3146
+
3147
+ expect(p.parse("Premieres Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Premieres Pierre 1:1'")
3148
+ expect(p.parse("Premières Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Premières Pierre 1:1'")
3149
+ expect(p.parse("Premiere Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Premiere Pierre 1:1'")
3150
+ expect(p.parse("Premiers Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Premiers Pierre 1:1'")
3151
+ expect(p.parse("Première Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Première Pierre 1:1'")
3152
+ expect(p.parse("Premier Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Premier Pierre 1:1'")
3153
+ expect(p.parse("1ere. Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ere. Pierre 1:1'")
3154
+ expect(p.parse("1ère. Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ère. Pierre 1:1'")
3155
+ expect(p.parse("1er. Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1er. Pierre 1:1'")
3156
+ expect(p.parse("1ere Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ere Pierre 1:1'")
3157
+ expect(p.parse("1re. Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1re. Pierre 1:1'")
3158
+ expect(p.parse("1ère Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ère Pierre 1:1'")
3159
+ expect(p.parse("1er Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1er Pierre 1:1'")
3160
+ expect(p.parse("1re Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1re Pierre 1:1'")
3161
+ expect(p.parse("1. Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Pierre 1:1'")
3162
+ expect(p.parse("I. Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I. Pierre 1:1'")
3163
+ expect(p.parse("1 Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Pierre 1:1'")
3164
+ expect(p.parse("I Pierre 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I Pierre 1:1'")
3165
+ expect(p.parse("1 Pi 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Pi 1:1'")
3166
+ expect(p.parse("1Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1Pet 1:1'")
3167
+ expect(p.parse("1 P 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 P 1:1'")
3168
+ p.include_apocrypha(false)
3169
+ expect(p.parse("PREMIERES PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PREMIERES PIERRE 1:1'")
3170
+ expect(p.parse("PREMIÈRES PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PREMIÈRES PIERRE 1:1'")
3171
+ expect(p.parse("PREMIERE PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PREMIERE PIERRE 1:1'")
3172
+ expect(p.parse("PREMIERS PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PREMIERS PIERRE 1:1'")
3173
+ expect(p.parse("PREMIÈRE PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PREMIÈRE PIERRE 1:1'")
3174
+ expect(p.parse("PREMIER PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'PREMIER PIERRE 1:1'")
3175
+ expect(p.parse("1ERE. PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ERE. PIERRE 1:1'")
3176
+ expect(p.parse("1ÈRE. PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ÈRE. PIERRE 1:1'")
3177
+ expect(p.parse("1ER. PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ER. PIERRE 1:1'")
3178
+ expect(p.parse("1ERE PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ERE PIERRE 1:1'")
3179
+ expect(p.parse("1RE. PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1RE. PIERRE 1:1'")
3180
+ expect(p.parse("1ÈRE PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ÈRE PIERRE 1:1'")
3181
+ expect(p.parse("1ER PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1ER PIERRE 1:1'")
3182
+ expect(p.parse("1RE PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1RE PIERRE 1:1'")
3183
+ expect(p.parse("1. PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PIERRE 1:1'")
3184
+ expect(p.parse("I. PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I. PIERRE 1:1'")
3185
+ expect(p.parse("1 PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PIERRE 1:1'")
3186
+ expect(p.parse("I PIERRE 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'I PIERRE 1:1'")
3187
+ expect(p.parse("1 PI 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PI 1:1'")
3188
+ expect(p.parse("1PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1PET 1:1'")
3189
+ expect(p.parse("1 P 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 P 1:1'")
3190
+ ;
3191
+ return true;
3192
+ });
3193
+ });
3194
+
3195
+ describe("Localized book Jude (fr)", function() {
3196
+ var p;
3197
+ p = {};
3198
+ beforeEach(function() {
3199
+ p = new bcv_parser();
3200
+ p.set_options({
3201
+ book_alone_strategy: "ignore",
3202
+ book_sequence_strategy: "ignore",
3203
+ osis_compaction_strategy: "bc",
3204
+ captive_end_digits_strategy: "delete"
3205
+ });
3206
+ return p.include_apocrypha(true);
3207
+ });
3208
+ return it("should handle book: Jude (fr)", function() {
3209
+
3210
+ expect(p.parse("Jude 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jude 1:1'")
3211
+ expect(p.parse("Jud 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jud 1:1'")
3212
+ expect(p.parse("Jd 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jd 1:1'")
3213
+ p.include_apocrypha(false)
3214
+ expect(p.parse("JUDE 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDE 1:1'")
3215
+ expect(p.parse("JUD 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUD 1:1'")
3216
+ expect(p.parse("JD 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JD 1:1'")
3217
+ ;
3218
+ return true;
3219
+ });
3220
+ });
3221
+
3222
+ describe("Localized book Tob (fr)", function() {
3223
+ var p;
3224
+ p = {};
3225
+ beforeEach(function() {
3226
+ p = new bcv_parser();
3227
+ p.set_options({
3228
+ book_alone_strategy: "ignore",
3229
+ book_sequence_strategy: "ignore",
3230
+ osis_compaction_strategy: "bc",
3231
+ captive_end_digits_strategy: "delete"
3232
+ });
3233
+ return p.include_apocrypha(true);
3234
+ });
3235
+ return it("should handle book: Tob (fr)", function() {
3236
+
3237
+ expect(p.parse("Tobie 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tobie 1:1'")
3238
+ expect(p.parse("Tob 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tob 1:1'")
3239
+ expect(p.parse("Tb 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tb 1:1'")
3240
+ ;
3241
+ return true;
3242
+ });
3243
+ });
3244
+
3245
+ describe("Localized book Jdt (fr)", function() {
3246
+ var p;
3247
+ p = {};
3248
+ beforeEach(function() {
3249
+ p = new bcv_parser();
3250
+ p.set_options({
3251
+ book_alone_strategy: "ignore",
3252
+ book_sequence_strategy: "ignore",
3253
+ osis_compaction_strategy: "bc",
3254
+ captive_end_digits_strategy: "delete"
3255
+ });
3256
+ return p.include_apocrypha(true);
3257
+ });
3258
+ return it("should handle book: Jdt (fr)", function() {
3259
+
3260
+ expect(p.parse("Judith 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Judith 1:1'")
3261
+ expect(p.parse("Jdt 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Jdt 1:1'")
3262
+ ;
3263
+ return true;
3264
+ });
3265
+ });
3266
+
3267
+ describe("Localized book Bar (fr)", function() {
3268
+ var p;
3269
+ p = {};
3270
+ beforeEach(function() {
3271
+ p = new bcv_parser();
3272
+ p.set_options({
3273
+ book_alone_strategy: "ignore",
3274
+ book_sequence_strategy: "ignore",
3275
+ osis_compaction_strategy: "bc",
3276
+ captive_end_digits_strategy: "delete"
3277
+ });
3278
+ return p.include_apocrypha(true);
3279
+ });
3280
+ return it("should handle book: Bar (fr)", function() {
3281
+
3282
+ expect(p.parse("Baruch 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Baruch 1:1'")
3283
+ expect(p.parse("Bar 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Bar 1:1'")
3284
+ expect(p.parse("Ba 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Ba 1:1'")
3285
+ ;
3286
+ return true;
3287
+ });
3288
+ });
3289
+
3290
+ describe("Localized book Sus (fr)", function() {
3291
+ var p;
3292
+ p = {};
3293
+ beforeEach(function() {
3294
+ p = new bcv_parser();
3295
+ p.set_options({
3296
+ book_alone_strategy: "ignore",
3297
+ book_sequence_strategy: "ignore",
3298
+ osis_compaction_strategy: "bc",
3299
+ captive_end_digits_strategy: "delete"
3300
+ });
3301
+ return p.include_apocrypha(true);
3302
+ });
3303
+ return it("should handle book: Sus (fr)", function() {
3304
+
3305
+ expect(p.parse("Susanne et les deux vieillards 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Susanne et les deux vieillards 1:1'")
3306
+ expect(p.parse("Suzanne et les deux vieillards 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Suzanne et les deux vieillards 1:1'")
3307
+ expect(p.parse("Susanne et les vieillards 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Susanne et les vieillards 1:1'")
3308
+ expect(p.parse("Suzanne et les vieillards 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Suzanne et les vieillards 1:1'")
3309
+ expect(p.parse("Susanne au bain 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Susanne au bain 1:1'")
3310
+ expect(p.parse("Suzanne au bain 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Suzanne au bain 1:1'")
3311
+ expect(p.parse("Susanne 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Susanne 1:1'")
3312
+ expect(p.parse("Suzanne 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Suzanne 1:1'")
3313
+ expect(p.parse("Sus 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Sus 1:1'")
3314
+ expect(p.parse("Suz 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Suz 1:1'")
3315
+ ;
3316
+ return true;
3317
+ });
3318
+ });
3319
+
3320
+ describe("Localized book 2Macc (fr)", function() {
3321
+ var p;
3322
+ p = {};
3323
+ beforeEach(function() {
3324
+ p = new bcv_parser();
3325
+ p.set_options({
3326
+ book_alone_strategy: "ignore",
3327
+ book_sequence_strategy: "ignore",
3328
+ osis_compaction_strategy: "bc",
3329
+ captive_end_digits_strategy: "delete"
3330
+ });
3331
+ return p.include_apocrypha(true);
3332
+ });
3333
+ return it("should handle book: 2Macc (fr)", function() {
3334
+
3335
+ expect(p.parse("Deuxiemes Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxiemes Maccabees 1:1'")
3336
+ expect(p.parse("Deuxiemes Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxiemes Maccabées 1:1'")
3337
+ expect(p.parse("Deuxièmes Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxièmes Maccabees 1:1'")
3338
+ expect(p.parse("Deuxièmes Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxièmes Maccabées 1:1'")
3339
+ expect(p.parse("Deuxieme Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxieme Maccabees 1:1'")
3340
+ expect(p.parse("Deuxieme Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxieme Maccabées 1:1'")
3341
+ expect(p.parse("Deuxième Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxième Maccabees 1:1'")
3342
+ expect(p.parse("Deuxième Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Deuxième Maccabées 1:1'")
3343
+ expect(p.parse("2eme. Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2eme. Maccabees 1:1'")
3344
+ expect(p.parse("2eme. Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2eme. Maccabées 1:1'")
3345
+ expect(p.parse("2ème. Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2ème. Maccabees 1:1'")
3346
+ expect(p.parse("2ème. Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2ème. Maccabées 1:1'")
3347
+ expect(p.parse("2de. Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2de. Maccabees 1:1'")
3348
+ expect(p.parse("2de. Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2de. Maccabées 1:1'")
3349
+ expect(p.parse("2eme Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2eme Maccabees 1:1'")
3350
+ expect(p.parse("2eme Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2eme Maccabées 1:1'")
3351
+ expect(p.parse("2ème Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2ème Maccabees 1:1'")
3352
+ expect(p.parse("2ème Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2ème Maccabées 1:1'")
3353
+ expect(p.parse("2d. Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2d. Maccabees 1:1'")
3354
+ expect(p.parse("2d. Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2d. Maccabées 1:1'")
3355
+ expect(p.parse("2de Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2de Maccabees 1:1'")
3356
+ expect(p.parse("2de Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2de Maccabées 1:1'")
3357
+ expect(p.parse("2e. Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2e. Maccabees 1:1'")
3358
+ expect(p.parse("2e. Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2e. Maccabées 1:1'")
3359
+ expect(p.parse("II. Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'II. Maccabees 1:1'")
3360
+ expect(p.parse("II. Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'II. Maccabées 1:1'")
3361
+ expect(p.parse("2. Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2. Maccabees 1:1'")
3362
+ expect(p.parse("2. Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2. Maccabées 1:1'")
3363
+ expect(p.parse("2d Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2d Maccabees 1:1'")
3364
+ expect(p.parse("2d Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2d Maccabées 1:1'")
3365
+ expect(p.parse("2e Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2e Maccabees 1:1'")
3366
+ expect(p.parse("2e Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2e Maccabées 1:1'")
3367
+ expect(p.parse("II Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'II Maccabees 1:1'")
3368
+ expect(p.parse("II Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'II Maccabées 1:1'")
3369
+ expect(p.parse("2 Maccabees 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Maccabees 1:1'")
3370
+ expect(p.parse("2 Maccabées 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Maccabées 1:1'")
3371
+ expect(p.parse("2 Macc 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Macc 1:1'")
3372
+ expect(p.parse("2Macc 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2Macc 1:1'")
3373
+ expect(p.parse("2 M 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 M 1:1'")
3374
+ ;
3375
+ return true;
3376
+ });
3377
+ });
3378
+
3379
+ describe("Localized book 3Macc (fr)", function() {
3380
+ var p;
3381
+ p = {};
3382
+ beforeEach(function() {
3383
+ p = new bcv_parser();
3384
+ p.set_options({
3385
+ book_alone_strategy: "ignore",
3386
+ book_sequence_strategy: "ignore",
3387
+ osis_compaction_strategy: "bc",
3388
+ captive_end_digits_strategy: "delete"
3389
+ });
3390
+ return p.include_apocrypha(true);
3391
+ });
3392
+ return it("should handle book: 3Macc (fr)", function() {
3393
+
3394
+ expect(p.parse("Troisiemes Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisiemes Maccabees 1:1'")
3395
+ expect(p.parse("Troisiemes Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisiemes Maccabées 1:1'")
3396
+ expect(p.parse("Troisièmes Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisièmes Maccabees 1:1'")
3397
+ expect(p.parse("Troisièmes Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisièmes Maccabées 1:1'")
3398
+ expect(p.parse("Troisieme Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisieme Maccabees 1:1'")
3399
+ expect(p.parse("Troisieme Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisieme Maccabées 1:1'")
3400
+ expect(p.parse("Troisième Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisième Maccabees 1:1'")
3401
+ expect(p.parse("Troisième Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Troisième Maccabées 1:1'")
3402
+ expect(p.parse("3eme. Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3eme. Maccabees 1:1'")
3403
+ expect(p.parse("3eme. Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3eme. Maccabées 1:1'")
3404
+ expect(p.parse("3ème. Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3ème. Maccabees 1:1'")
3405
+ expect(p.parse("3ème. Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3ème. Maccabées 1:1'")
3406
+ expect(p.parse("3eme Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3eme Maccabees 1:1'")
3407
+ expect(p.parse("3eme Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3eme Maccabées 1:1'")
3408
+ expect(p.parse("3ème Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3ème Maccabees 1:1'")
3409
+ expect(p.parse("3ème Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3ème Maccabées 1:1'")
3410
+ expect(p.parse("III. Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'III. Maccabees 1:1'")
3411
+ expect(p.parse("III. Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'III. Maccabées 1:1'")
3412
+ expect(p.parse("3e. Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3e. Maccabees 1:1'")
3413
+ expect(p.parse("3e. Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3e. Maccabées 1:1'")
3414
+ expect(p.parse("III Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'III Maccabees 1:1'")
3415
+ expect(p.parse("III Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'III Maccabées 1:1'")
3416
+ expect(p.parse("3. Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3. Maccabees 1:1'")
3417
+ expect(p.parse("3. Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3. Maccabées 1:1'")
3418
+ expect(p.parse("3e Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3e Maccabees 1:1'")
3419
+ expect(p.parse("3e Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3e Maccabées 1:1'")
3420
+ expect(p.parse("3 Maccabees 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Maccabees 1:1'")
3421
+ expect(p.parse("3 Maccabées 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Maccabées 1:1'")
3422
+ expect(p.parse("3 Macc 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Macc 1:1'")
3423
+ expect(p.parse("3Macc 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3Macc 1:1'")
3424
+ expect(p.parse("3 M 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 M 1:1'")
3425
+ ;
3426
+ return true;
3427
+ });
3428
+ });
3429
+
3430
+ describe("Localized book 4Macc (fr)", function() {
3431
+ var p;
3432
+ p = {};
3433
+ beforeEach(function() {
3434
+ p = new bcv_parser();
3435
+ p.set_options({
3436
+ book_alone_strategy: "ignore",
3437
+ book_sequence_strategy: "ignore",
3438
+ osis_compaction_strategy: "bc",
3439
+ captive_end_digits_strategy: "delete"
3440
+ });
3441
+ return p.include_apocrypha(true);
3442
+ });
3443
+ return it("should handle book: 4Macc (fr)", function() {
3444
+
3445
+ expect(p.parse("Quatriemes Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatriemes Maccabees 1:1'")
3446
+ expect(p.parse("Quatriemes Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatriemes Maccabées 1:1'")
3447
+ expect(p.parse("Quatrièmes Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatrièmes Maccabees 1:1'")
3448
+ expect(p.parse("Quatrièmes Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatrièmes Maccabées 1:1'")
3449
+ expect(p.parse("Quatrieme Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatrieme Maccabees 1:1'")
3450
+ expect(p.parse("Quatrieme Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatrieme Maccabées 1:1'")
3451
+ expect(p.parse("Quatrième Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatrième Maccabees 1:1'")
3452
+ expect(p.parse("Quatrième Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Quatrième Maccabées 1:1'")
3453
+ expect(p.parse("4eme. Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4eme. Maccabees 1:1'")
3454
+ expect(p.parse("4eme. Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4eme. Maccabées 1:1'")
3455
+ expect(p.parse("4ème. Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4ème. Maccabees 1:1'")
3456
+ expect(p.parse("4ème. Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4ème. Maccabées 1:1'")
3457
+ expect(p.parse("4eme Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4eme Maccabees 1:1'")
3458
+ expect(p.parse("4eme Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4eme Maccabées 1:1'")
3459
+ expect(p.parse("4ème Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4ème Maccabees 1:1'")
3460
+ expect(p.parse("4ème Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4ème Maccabées 1:1'")
3461
+ expect(p.parse("4e. Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4e. Maccabees 1:1'")
3462
+ expect(p.parse("4e. Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4e. Maccabées 1:1'")
3463
+ expect(p.parse("IV. Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'IV. Maccabees 1:1'")
3464
+ expect(p.parse("IV. Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'IV. Maccabées 1:1'")
3465
+ expect(p.parse("4. Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4. Maccabees 1:1'")
3466
+ expect(p.parse("4. Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4. Maccabées 1:1'")
3467
+ expect(p.parse("4e Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4e Maccabees 1:1'")
3468
+ expect(p.parse("4e Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4e Maccabées 1:1'")
3469
+ expect(p.parse("IV Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'IV Maccabees 1:1'")
3470
+ expect(p.parse("IV Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'IV Maccabées 1:1'")
3471
+ expect(p.parse("4 Maccabees 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Maccabees 1:1'")
3472
+ expect(p.parse("4 Maccabées 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Maccabées 1:1'")
3473
+ expect(p.parse("4 Macc 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Macc 1:1'")
3474
+ expect(p.parse("4Macc 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4Macc 1:1'")
3475
+ expect(p.parse("4 M 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 M 1:1'")
3476
+ ;
3477
+ return true;
3478
+ });
3479
+ });
3480
+
3481
+ describe("Localized book 1Macc (fr)", function() {
3482
+ var p;
3483
+ p = {};
3484
+ beforeEach(function() {
3485
+ p = new bcv_parser();
3486
+ p.set_options({
3487
+ book_alone_strategy: "ignore",
3488
+ book_sequence_strategy: "ignore",
3489
+ osis_compaction_strategy: "bc",
3490
+ captive_end_digits_strategy: "delete"
3491
+ });
3492
+ return p.include_apocrypha(true);
3493
+ });
3494
+ return it("should handle book: 1Macc (fr)", function() {
3495
+
3496
+ expect(p.parse("Premieres Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premieres Maccabees 1:1'")
3497
+ expect(p.parse("Premieres Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premieres Maccabées 1:1'")
3498
+ expect(p.parse("Premières Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premières Maccabees 1:1'")
3499
+ expect(p.parse("Premières Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premières Maccabées 1:1'")
3500
+ expect(p.parse("Premiere Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premiere Maccabees 1:1'")
3501
+ expect(p.parse("Premiere Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premiere Maccabées 1:1'")
3502
+ expect(p.parse("Premiers Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premiers Maccabees 1:1'")
3503
+ expect(p.parse("Premiers Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premiers Maccabées 1:1'")
3504
+ expect(p.parse("Première Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Première Maccabees 1:1'")
3505
+ expect(p.parse("Première Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Première Maccabées 1:1'")
3506
+ expect(p.parse("Premier Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premier Maccabees 1:1'")
3507
+ expect(p.parse("Premier Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Premier Maccabées 1:1'")
3508
+ expect(p.parse("1ere. Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ere. Maccabees 1:1'")
3509
+ expect(p.parse("1ere. Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ere. Maccabées 1:1'")
3510
+ expect(p.parse("1ère. Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ère. Maccabees 1:1'")
3511
+ expect(p.parse("1ère. Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ère. Maccabées 1:1'")
3512
+ expect(p.parse("1er. Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1er. Maccabees 1:1'")
3513
+ expect(p.parse("1er. Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1er. Maccabées 1:1'")
3514
+ expect(p.parse("1ere Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ere Maccabees 1:1'")
3515
+ expect(p.parse("1ere Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ere Maccabées 1:1'")
3516
+ expect(p.parse("1re. Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1re. Maccabees 1:1'")
3517
+ expect(p.parse("1re. Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1re. Maccabées 1:1'")
3518
+ expect(p.parse("1ère Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ère Maccabees 1:1'")
3519
+ expect(p.parse("1ère Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1ère Maccabées 1:1'")
3520
+ expect(p.parse("1er Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1er Maccabees 1:1'")
3521
+ expect(p.parse("1er Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1er Maccabées 1:1'")
3522
+ expect(p.parse("1re Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1re Maccabees 1:1'")
3523
+ expect(p.parse("1re Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1re Maccabées 1:1'")
3524
+ expect(p.parse("1. Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1. Maccabees 1:1'")
3525
+ expect(p.parse("1. Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1. Maccabées 1:1'")
3526
+ expect(p.parse("I. Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'I. Maccabees 1:1'")
3527
+ expect(p.parse("I. Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'I. Maccabées 1:1'")
3528
+ expect(p.parse("1 Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Maccabees 1:1'")
3529
+ expect(p.parse("1 Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Maccabées 1:1'")
3530
+ expect(p.parse("I Maccabees 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'I Maccabees 1:1'")
3531
+ expect(p.parse("I Maccabées 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'I Maccabées 1:1'")
3532
+ expect(p.parse("1 Macc 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Macc 1:1'")
3533
+ expect(p.parse("1Macc 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1Macc 1:1'")
3534
+ expect(p.parse("1 M 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 M 1:1'")
3535
+ ;
3536
+ return true;
3537
+ });
3538
+ });
3539
+
3540
+ describe("Localized book Jonah,Job,Josh,Joel (fr)", function() {
3541
+ var p;
3542
+ p = {};
3543
+ beforeEach(function() {
3544
+ p = new bcv_parser();
3545
+ p.set_options({
3546
+ book_alone_strategy: "ignore",
3547
+ book_sequence_strategy: "ignore",
3548
+ osis_compaction_strategy: "bc",
3549
+ captive_end_digits_strategy: "delete"
3550
+ });
3551
+ return p.include_apocrypha(true);
3552
+ });
3553
+ return it("should handle book: Jonah,Job,Josh,Joel (fr)", function() {
3554
+
3555
+ expect(p.parse("Jo 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jo 1:1'")
3556
+ p.include_apocrypha(false)
3557
+ expect(p.parse("JO 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JO 1:1'")
3558
+ ;
3559
+ return true;
3560
+ });
3561
+ });
3562
+
3563
+ describe("Localized book Judg,Jude (fr)", function() {
3564
+ var p;
3565
+ p = {};
3566
+ beforeEach(function() {
3567
+ p = new bcv_parser();
3568
+ p.set_options({
3569
+ book_alone_strategy: "ignore",
3570
+ book_sequence_strategy: "ignore",
3571
+ osis_compaction_strategy: "bc",
3572
+ captive_end_digits_strategy: "delete"
3573
+ });
3574
+ return p.include_apocrypha(true);
3575
+ });
3576
+ return it("should handle book: Judg,Jude (fr)", function() {
3577
+
3578
+ expect(p.parse("Ju 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Ju 1:1'")
3579
+ p.include_apocrypha(false)
3580
+ expect(p.parse("JU 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JU 1:1'")
3581
+ ;
3582
+ return true;
3583
+ });
3584
+ });
3585
+
3586
+ describe("Localized book Phil,Phlm (fr)", function() {
3587
+ var p;
3588
+ p = {};
3589
+ beforeEach(function() {
3590
+ p = new bcv_parser();
3591
+ p.set_options({
3592
+ book_alone_strategy: "ignore",
3593
+ book_sequence_strategy: "ignore",
3594
+ osis_compaction_strategy: "bc",
3595
+ captive_end_digits_strategy: "delete"
3596
+ });
3597
+ return p.include_apocrypha(true);
3598
+ });
3599
+ return it("should handle book: Phil,Phlm (fr)", function() {
3600
+
3601
+ expect(p.parse("Phl 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Phl 1:1'")
3602
+ expect(p.parse("Ph 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Ph 1:1'")
3603
+ p.include_apocrypha(false)
3604
+ expect(p.parse("PHL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHL 1:1'")
3605
+ expect(p.parse("PH 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PH 1:1'")
3606
+ ;
3607
+ return true;
3608
+ });
3609
+ });
3610
+
3611
+ describe("Miscellaneous tests", function() {
3612
+ var p;
3613
+ p = {};
3614
+ beforeEach(function() {
3615
+ p = new bcv_parser();
3616
+ p.set_options({
3617
+ book_alone_strategy: "ignore",
3618
+ book_sequence_strategy: "ignore",
3619
+ osis_compaction_strategy: "bc",
3620
+ captive_end_digits_strategy: "delete"
3621
+ });
3622
+ return p.include_apocrypha(true);
3623
+ });
3624
+ it("should return the expected language", function() {
3625
+ return expect(p.languages).toEqual(["fr"]);
3626
+ });
3627
+ it("should handle ranges (fr)", function() {
3628
+ expect(p.parse("Titus 1:1 á 2").osis()).toEqual("Titus.1.1-Titus.1.2", "parsing: 'Titus 1:1 á 2'");
3629
+ expect(p.parse("Matt 1á2").osis()).toEqual("Matt.1-Matt.2", "parsing: 'Matt 1á2'");
3630
+ return expect(p.parse("Phlm 2 Á 3").osis()).toEqual("Phlm.1.2-Phlm.1.3", "parsing: 'Phlm 2 Á 3'");
3631
+ });
3632
+ it("should handle chapters (fr)", function() {
3633
+ expect(p.parse("Titus 1:1, chapitres 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, chapitres 2'");
3634
+ expect(p.parse("Matt 3:4 CHAPITRES 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CHAPITRES 6'");
3635
+ expect(p.parse("Titus 1:1, chapitre 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, chapitre 2'");
3636
+ expect(p.parse("Matt 3:4 CHAPITRE 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CHAPITRE 6'");
3637
+ expect(p.parse("Titus 1:1, chap. 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, chap. 2'");
3638
+ expect(p.parse("Matt 3:4 CHAP. 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CHAP. 6'");
3639
+ expect(p.parse("Titus 1:1, chap 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, chap 2'");
3640
+ expect(p.parse("Matt 3:4 CHAP 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CHAP 6'");
3641
+ expect(p.parse("Titus 1:1, chs. 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, chs. 2'");
3642
+ expect(p.parse("Matt 3:4 CHS. 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CHS. 6'");
3643
+ expect(p.parse("Titus 1:1, chs 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, chs 2'");
3644
+ expect(p.parse("Matt 3:4 CHS 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CHS 6'");
3645
+ expect(p.parse("Titus 1:1, ch. 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, ch. 2'");
3646
+ expect(p.parse("Matt 3:4 CH. 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CH. 6'");
3647
+ expect(p.parse("Titus 1:1, ch 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, ch 2'");
3648
+ return expect(p.parse("Matt 3:4 CH 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 CH 6'");
3649
+ });
3650
+ it("should handle verses (fr)", function() {
3651
+ expect(p.parse("Exod 1:1 versets 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 versets 3'");
3652
+ expect(p.parse("Phlm VERSETS 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERSETS 6'");
3653
+ expect(p.parse("Exod 1:1 verset 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 verset 3'");
3654
+ expect(p.parse("Phlm VERSET 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERSET 6'");
3655
+ expect(p.parse("Exod 1:1 vers. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vers. 3'");
3656
+ expect(p.parse("Phlm VERS. 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERS. 6'");
3657
+ expect(p.parse("Exod 1:1 vers 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vers 3'");
3658
+ expect(p.parse("Phlm VERS 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERS 6'");
3659
+ expect(p.parse("Exod 1:1 ver. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 ver. 3'");
3660
+ expect(p.parse("Phlm VER. 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VER. 6'");
3661
+ expect(p.parse("Exod 1:1 ver 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 ver 3'");
3662
+ expect(p.parse("Phlm VER 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VER 6'");
3663
+ expect(p.parse("Exod 1:1 vv. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vv. 3'");
3664
+ expect(p.parse("Phlm VV. 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VV. 6'");
3665
+ expect(p.parse("Exod 1:1 vv 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vv 3'");
3666
+ expect(p.parse("Phlm VV 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VV 6'");
3667
+ expect(p.parse("Exod 1:1 v. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 v. 3'");
3668
+ expect(p.parse("Phlm V. 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm V. 6'");
3669
+ expect(p.parse("Exod 1:1 v 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 v 3'");
3670
+ return expect(p.parse("Phlm V 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm V 6'");
3671
+ });
3672
+ it("should handle 'and' (fr)", function() {
3673
+ expect(p.parse("Exod 1:1 et 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 et 3'");
3674
+ expect(p.parse("Phlm 2 ET 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 ET 6'");
3675
+ expect(p.parse("Exod 1:1 comparer 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 comparer 3'");
3676
+ return expect(p.parse("Phlm 2 COMPARER 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 COMPARER 6'");
3677
+ });
3678
+ it("should handle titles (fr)", function() {
3679
+ expect(p.parse("Ps 3 titre, 4:2, 5:titre").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'Ps 3 titre, 4:2, 5:titre'");
3680
+ return expect(p.parse("PS 3 TITRE, 4:2, 5:TITRE").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'PS 3 TITRE, 4:2, 5:TITRE'");
3681
+ });
3682
+ it("should handle 'ff' (fr)", function() {
3683
+ expect(p.parse("Rev 3et suivant, 4:2et suivant").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'Rev 3et suivant, 4:2et suivant'");
3684
+ return expect(p.parse("REV 3 ET SUIVANT, 4:2 ET SUIVANT").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'REV 3 ET SUIVANT, 4:2 ET SUIVANT'");
3685
+ });
3686
+ it("should handle translations (fr)", function() {
3687
+ expect(p.parse("Lev 1 (BDS)").osis_and_translations()).toEqual([["Lev.1", "BDS"]]);
3688
+ expect(p.parse("lev 1 bds").osis_and_translations()).toEqual([["Lev.1", "BDS"]]);
3689
+ expect(p.parse("Lev 1 (LSG)").osis_and_translations()).toEqual([["Lev.1", "LSG"]]);
3690
+ expect(p.parse("lev 1 lsg").osis_and_translations()).toEqual([["Lev.1", "LSG"]]);
3691
+ expect(p.parse("Lev 1 (LSG21)").osis_and_translations()).toEqual([["Lev.1", "LSG21"]]);
3692
+ expect(p.parse("lev 1 lsg21").osis_and_translations()).toEqual([["Lev.1", "LSG21"]]);
3693
+ expect(p.parse("Lev 1 (NEG1979)").osis_and_translations()).toEqual([["Lev.1", "NEG1979"]]);
3694
+ return expect(p.parse("lev 1 neg1979").osis_and_translations()).toEqual([["Lev.1", "NEG1979"]]);
3695
+ });
3696
+ it("should handle book ranges (fr)", function() {
3697
+ p.set_options({
3698
+ book_alone_strategy: "full",
3699
+ book_range_strategy: "include"
3700
+ });
3701
+ return expect(p.parse("Premières á Troisièmes Jean").osis()).toEqual("1John.1-3John.1", "parsing: 'Premières á Troisièmes Jean'");
3702
+ });
3703
+ return it("should handle boundaries (fr)", function() {
3704
+ p.set_options({
3705
+ book_alone_strategy: "full"
3706
+ });
3707
+ expect(p.parse("\u2014Matt\u2014").osis()).toEqual("Matt.1-Matt.28", "parsing: '\u2014Matt\u2014'");
3708
+ return expect(p.parse("\u201cMatt 1:1\u201d").osis()).toEqual("Matt.1.1", "parsing: '\u201cMatt 1:1\u201d'");
3709
+ });
3710
+ });
3711
+
3712
+ }).call(this);