bible-ref-parse 2.1.18 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/Readme.md +1 -14
  2. package/dist/ar-bcv-parser.js +7480 -0
  3. package/{js/bg_bcv_parser.js → dist/bg-bcv-parser.js} +17 -15
  4. package/dist/ceb-bcv-parser.js +7498 -0
  5. package/{js/cs_bcv_parser.js → dist/cs-bcv-parser.js} +17 -15
  6. package/dist/da-bcv-parser.js +7560 -0
  7. package/{js/de_bcv_parser.js → dist/de-bcv-parser.js} +17 -15
  8. package/dist/el-bcv-parser.js +7929 -0
  9. package/{js/en_bcv_parser.js → dist/en-bcv-parser.js} +22 -20
  10. package/dist/es-bcv-parser.js +8164 -0
  11. package/{js/fa_bcv_parser.js → dist/fa-bcv-parser.js} +37 -35
  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/{js/hi_bcv_parser.js → dist/hi-bcv-parser.js} +17 -15
  16. package/{js/hr_bcv_parser.js → dist/hr-bcv-parser.js} +18 -16
  17. package/dist/ht-bcv-parser.js +7526 -0
  18. package/{js/hu_bcv_parser.js → dist/hu-bcv-parser.js} +17 -15
  19. package/dist/is-bcv-parser.js +7553 -0
  20. package/{js/it_bcv_parser.js → dist/it-bcv-parser.js} +17 -15
  21. package/{js/ja_bcv_parser.js → dist/ja-bcv-parser.js} +17 -15
  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/{js/mk_bcv_parser.js → dist/mk-bcv-parser.js} +17 -15
  26. package/dist/mr-bcv-parser.js +7480 -0
  27. package/dist/ne-bcv-parser.js +7478 -0
  28. package/{js/nl_bcv_parser.js → dist/nl-bcv-parser.js} +18 -16
  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/{js/ru_bcv_parser.js → dist/ru-bcv-parser.js} +27 -25
  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/{js/sr_bcv_parser.js → dist/sr-bcv-parser.js} +19 -17
  40. package/dist/sv-bcv-parser.js +7695 -0
  41. package/{js/sw_bcv_parser.js → dist/sw-bcv-parser.js} +17 -15
  42. package/{js/ta_bcv_parser.js → dist/ta-bcv-parser.js} +17 -15
  43. package/dist/test/ar.spec.js +2634 -0
  44. package/dist/test/bg.spec.js +3849 -0
  45. package/dist/test/ceb.spec.js +2533 -0
  46. package/dist/test/cs.spec.js +6593 -0
  47. package/dist/test/da.spec.js +2976 -0
  48. package/dist/test/de.spec.js +3114 -0
  49. package/dist/test/el.spec.js +4287 -0
  50. package/dist/test/en.spec.js +13196 -0
  51. package/dist/test/es.spec.js +5634 -0
  52. package/dist/test/fa.spec.js +16707 -0
  53. package/dist/test/fi.spec.js +3001 -0
  54. package/dist/test/fr.spec.js +3712 -0
  55. package/dist/test/he.spec.js +2411 -0
  56. package/dist/test/hi.spec.js +2754 -0
  57. package/dist/test/hr.spec.js +2851 -0
  58. package/dist/test/ht.spec.js +2749 -0
  59. package/dist/test/hu.spec.js +3951 -0
  60. package/dist/test/is.spec.js +3753 -0
  61. package/dist/test/it.spec.js +2917 -0
  62. package/dist/test/ja.spec.js +3079 -0
  63. package/dist/test/jv.spec.js +2470 -0
  64. package/dist/test/ko.spec.js +2682 -0
  65. package/dist/test/la.spec.js +2915 -0
  66. package/dist/test/mk.spec.js +3064 -0
  67. package/dist/test/mr.spec.js +3664 -0
  68. package/dist/test/ne.spec.js +4300 -0
  69. package/dist/test/nl.spec.js +3849 -0
  70. package/dist/test/no.spec.js +2867 -0
  71. package/dist/test/or.spec.js +2411 -0
  72. package/dist/test/pa.spec.js +2460 -0
  73. package/dist/test/pl.spec.js +7682 -0
  74. package/dist/test/pt.spec.js +3318 -0
  75. package/dist/test/ro.spec.js +3065 -0
  76. package/dist/test/ru.spec.js +3796 -0
  77. package/dist/test/sk.spec.js +5611 -0
  78. package/dist/test/so.spec.js +2613 -0
  79. package/dist/test/sq.spec.js +2643 -0
  80. package/dist/test/sr.spec.js +3150 -0
  81. package/dist/test/sv.spec.js +2785 -0
  82. package/dist/test/sw.spec.js +2994 -0
  83. package/dist/test/ta.spec.js +4859 -0
  84. package/dist/test/th.spec.js +2403 -0
  85. package/dist/test/tl.spec.js +3728 -0
  86. package/dist/test/tr.spec.js +19459 -0
  87. package/dist/test/uk.spec.js +6852 -0
  88. package/dist/test/ur.spec.js +3536 -0
  89. package/dist/test/vi.spec.js +2897 -0
  90. package/dist/test/zh.spec.js +4744 -0
  91. package/{js/th_bcv_parser.js → dist/th-bcv-parser.js} +17 -15
  92. package/{js/tl_bcv_parser.js → dist/tl-bcv-parser.js} +18 -16
  93. package/dist/tr-bcv-parser.js +7673 -0
  94. package/{js/uk_bcv_parser.js → dist/uk-bcv-parser.js} +18 -16
  95. package/dist/ur-bcv-parser.js +7564 -0
  96. package/dist/vi-bcv-parser.js +7480 -0
  97. package/dist/zh-bcv-parser.js +7588 -0
  98. package/package.json +56 -41
  99. package/js/ar_bcv_parser.js +0 -6892
  100. package/js/ascii_bcv_parser.js +0 -7811
  101. package/js/ceb_bcv_parser.js +0 -6910
  102. package/js/da_bcv_parser.js +0 -6977
  103. package/js/el_bcv_parser.js +0 -7339
  104. package/js/en_bcv_parser.d.ts +0 -5
  105. package/js/en_bcv_parser.min.js +0 -221
  106. package/js/es_bcv_parser.js +0 -7554
  107. package/js/eu/Readme.md +0 -20
  108. package/js/fa_bcv_parser.d.ts +0 -5
  109. package/js/fi_bcv_parser.js +0 -7047
  110. package/js/fr_bcv_parser.js +0 -7267
  111. package/js/full_bcv_parser.d.ts +0 -5
  112. package/js/full_bcv_parser.js +0 -8497
  113. package/js/he_bcv_parser.js +0 -6513
  114. package/js/ht_bcv_parser.js +0 -6938
  115. package/js/is_bcv_parser.js +0 -6970
  116. package/js/jv_bcv_parser.js +0 -6901
  117. package/js/ko_bcv_parser.js +0 -6940
  118. package/js/la_bcv_parser.js +0 -7146
  119. package/js/mr_bcv_parser.js +0 -6892
  120. package/js/ne_bcv_parser.js +0 -6890
  121. package/js/no_bcv_parser.js +0 -7050
  122. package/js/or_bcv_parser.js +0 -6892
  123. package/js/pa_bcv_parser.js +0 -6890
  124. package/js/pl_bcv_parser.js +0 -7327
  125. package/js/pt_bcv_parser.js +0 -7412
  126. package/js/ro_bcv_parser.js +0 -7185
  127. package/js/sk_bcv_parser.js +0 -7130
  128. package/js/so_bcv_parser.js +0 -6896
  129. package/js/sq_bcv_parser.js +0 -6890
  130. package/js/sv_bcv_parser.js +0 -6981
  131. package/js/tr_bcv_parser.js +0 -7085
  132. package/js/ur_bcv_parser.js +0 -6976
  133. package/js/vi_bcv_parser.js +0 -6892
  134. package/js/zh_bcv_parser.js +0 -7000
@@ -0,0 +1,3114 @@
1
+ (function() {
2
+ var bcv_parser;
3
+
4
+ bcv_parser = require("../../dist/de-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 (de)", 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 (de)", function() {
86
+
87
+ expect(p.parse("Ersten Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ersten Buch Mose 1:1'")
88
+ expect(p.parse("Erster Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erster Buch Mose 1:1'")
89
+ expect(p.parse("Erstes Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erstes Buch Mose 1:1'")
90
+ expect(p.parse("Erste Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erste Buch Mose 1:1'")
91
+ expect(p.parse("1. Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Buch Mose 1:1'")
92
+ expect(p.parse("1 Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Buch Mose 1:1'")
93
+ expect(p.parse("Ersten Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ersten Mose 1:1'")
94
+ expect(p.parse("Erster Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erster Mose 1:1'")
95
+ expect(p.parse("Erstes Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erstes Mose 1:1'")
96
+ expect(p.parse("Erste Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erste Mose 1:1'")
97
+ expect(p.parse("1. Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mose 1:1'")
98
+ expect(p.parse("Genesis 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Genesis 1:1'")
99
+ expect(p.parse("1 Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mose 1:1'")
100
+ expect(p.parse("1. Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mos 1:1'")
101
+ expect(p.parse("1 Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mos 1:1'")
102
+ expect(p.parse("1. Mo 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mo 1:1'")
103
+ expect(p.parse("1 Mo 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mo 1:1'")
104
+ expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'")
105
+ expect(p.parse("Gn 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gn 1:1'")
106
+ p.include_apocrypha(false)
107
+ expect(p.parse("ERSTEN BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTEN BUCH MOSE 1:1'")
108
+ expect(p.parse("ERSTER BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTER BUCH MOSE 1:1'")
109
+ expect(p.parse("ERSTES BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTES BUCH MOSE 1:1'")
110
+ expect(p.parse("ERSTE BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTE BUCH MOSE 1:1'")
111
+ expect(p.parse("1. BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. BUCH MOSE 1:1'")
112
+ expect(p.parse("1 BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 BUCH MOSE 1:1'")
113
+ expect(p.parse("ERSTEN MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTEN MOSE 1:1'")
114
+ expect(p.parse("ERSTER MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTER MOSE 1:1'")
115
+ expect(p.parse("ERSTES MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTES MOSE 1:1'")
116
+ expect(p.parse("ERSTE MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTE MOSE 1:1'")
117
+ expect(p.parse("1. MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MOSE 1:1'")
118
+ expect(p.parse("GENESIS 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GENESIS 1:1'")
119
+ expect(p.parse("1 MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MOSE 1:1'")
120
+ expect(p.parse("1. MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MOS 1:1'")
121
+ expect(p.parse("1 MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MOS 1:1'")
122
+ expect(p.parse("1. MO 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MO 1:1'")
123
+ expect(p.parse("1 MO 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MO 1:1'")
124
+ expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'")
125
+ expect(p.parse("GN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GN 1:1'")
126
+ ;
127
+ return true;
128
+ });
129
+ });
130
+
131
+ describe("Localized book Exod (de)", function() {
132
+ var p;
133
+ p = {};
134
+ beforeEach(function() {
135
+ p = new bcv_parser();
136
+ p.set_options({
137
+ book_alone_strategy: "ignore",
138
+ book_sequence_strategy: "ignore",
139
+ osis_compaction_strategy: "bc",
140
+ captive_end_digits_strategy: "delete"
141
+ });
142
+ return p.include_apocrypha(true);
143
+ });
144
+ return it("should handle book: Exod (de)", function() {
145
+
146
+ expect(p.parse("Zweiten Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiten Buch Mose 1:1'")
147
+ expect(p.parse("Zweiter Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiter Buch Mose 1:1'")
148
+ expect(p.parse("Zweites Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweites Buch Mose 1:1'")
149
+ expect(p.parse("Zweite Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweite Buch Mose 1:1'")
150
+ expect(p.parse("2. Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Buch Mose 1:1'")
151
+ expect(p.parse("Zweiten Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiten Mose 1:1'")
152
+ expect(p.parse("Zweiter Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiter Mose 1:1'")
153
+ expect(p.parse("Zweites Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweites Mose 1:1'")
154
+ expect(p.parse("2 Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Buch Mose 1:1'")
155
+ expect(p.parse("Zweite Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweite Mose 1:1'")
156
+ expect(p.parse("2. Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mose 1:1'")
157
+ expect(p.parse("2 Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mose 1:1'")
158
+ expect(p.parse("2. Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mos 1:1'")
159
+ expect(p.parse("Exodus 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exodus 1:1'")
160
+ expect(p.parse("2 Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mos 1:1'")
161
+ expect(p.parse("2. Mo 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mo 1:1'")
162
+ expect(p.parse("2 Mo 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mo 1:1'")
163
+ expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'")
164
+ expect(p.parse("Ex 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Ex 1:1'")
165
+ p.include_apocrypha(false)
166
+ expect(p.parse("ZWEITEN BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITEN BUCH MOSE 1:1'")
167
+ expect(p.parse("ZWEITER BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITER BUCH MOSE 1:1'")
168
+ expect(p.parse("ZWEITES BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITES BUCH MOSE 1:1'")
169
+ expect(p.parse("ZWEITE BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITE BUCH MOSE 1:1'")
170
+ expect(p.parse("2. BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. BUCH MOSE 1:1'")
171
+ expect(p.parse("ZWEITEN MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITEN MOSE 1:1'")
172
+ expect(p.parse("ZWEITER MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITER MOSE 1:1'")
173
+ expect(p.parse("ZWEITES MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITES MOSE 1:1'")
174
+ expect(p.parse("2 BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 BUCH MOSE 1:1'")
175
+ expect(p.parse("ZWEITE MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITE MOSE 1:1'")
176
+ expect(p.parse("2. MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MOSE 1:1'")
177
+ expect(p.parse("2 MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MOSE 1:1'")
178
+ expect(p.parse("2. MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MOS 1:1'")
179
+ expect(p.parse("EXODUS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXODUS 1:1'")
180
+ expect(p.parse("2 MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MOS 1:1'")
181
+ expect(p.parse("2. MO 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MO 1:1'")
182
+ expect(p.parse("2 MO 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MO 1:1'")
183
+ expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'")
184
+ expect(p.parse("EX 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EX 1:1'")
185
+ ;
186
+ return true;
187
+ });
188
+ });
189
+
190
+ describe("Localized book Bel (de)", function() {
191
+ var p;
192
+ p = {};
193
+ beforeEach(function() {
194
+ p = new bcv_parser();
195
+ p.set_options({
196
+ book_alone_strategy: "ignore",
197
+ book_sequence_strategy: "ignore",
198
+ osis_compaction_strategy: "bc",
199
+ captive_end_digits_strategy: "delete"
200
+ });
201
+ return p.include_apocrypha(true);
202
+ });
203
+ return it("should handle book: Bel (de)", function() {
204
+
205
+ expect(p.parse("Bel und Vom Drachen 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel und Vom Drachen 1:1'")
206
+ expect(p.parse("Bel und der Drache 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel und der Drache 1:1'")
207
+ expect(p.parse("Bel und de Drache 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel und de Drache 1:1'")
208
+ expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'")
209
+ ;
210
+ return true;
211
+ });
212
+ });
213
+
214
+ describe("Localized book Lev (de)", function() {
215
+ var p;
216
+ p = {};
217
+ beforeEach(function() {
218
+ p = new bcv_parser();
219
+ p.set_options({
220
+ book_alone_strategy: "ignore",
221
+ book_sequence_strategy: "ignore",
222
+ osis_compaction_strategy: "bc",
223
+ captive_end_digits_strategy: "delete"
224
+ });
225
+ return p.include_apocrypha(true);
226
+ });
227
+ return it("should handle book: Lev (de)", function() {
228
+
229
+ expect(p.parse("Dritten Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritten Buch Mose 1:1'")
230
+ expect(p.parse("Dritter Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritter Buch Mose 1:1'")
231
+ expect(p.parse("Drittes Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Drittes Buch Mose 1:1'")
232
+ expect(p.parse("Dritte Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritte Buch Mose 1:1'")
233
+ expect(p.parse("3. Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Buch Mose 1:1'")
234
+ expect(p.parse("Dritten Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritten Mose 1:1'")
235
+ expect(p.parse("Dritter Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritter Mose 1:1'")
236
+ expect(p.parse("Drittes Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Drittes Mose 1:1'")
237
+ expect(p.parse("3 Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Buch Mose 1:1'")
238
+ expect(p.parse("Dritte Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritte Mose 1:1'")
239
+ expect(p.parse("Levitikus 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Levitikus 1:1'")
240
+ expect(p.parse("3. Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mose 1:1'")
241
+ expect(p.parse("3 Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mose 1:1'")
242
+ expect(p.parse("3. Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mos 1:1'")
243
+ expect(p.parse("3 Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mos 1:1'")
244
+ expect(p.parse("3. Mo 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mo 1:1'")
245
+ expect(p.parse("3 Mo 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mo 1:1'")
246
+ expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'")
247
+ expect(p.parse("Lv 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lv 1:1'")
248
+ p.include_apocrypha(false)
249
+ expect(p.parse("DRITTEN BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTEN BUCH MOSE 1:1'")
250
+ expect(p.parse("DRITTER BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTER BUCH MOSE 1:1'")
251
+ expect(p.parse("DRITTES BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTES BUCH MOSE 1:1'")
252
+ expect(p.parse("DRITTE BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTE BUCH MOSE 1:1'")
253
+ expect(p.parse("3. BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. BUCH MOSE 1:1'")
254
+ expect(p.parse("DRITTEN MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTEN MOSE 1:1'")
255
+ expect(p.parse("DRITTER MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTER MOSE 1:1'")
256
+ expect(p.parse("DRITTES MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTES MOSE 1:1'")
257
+ expect(p.parse("3 BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 BUCH MOSE 1:1'")
258
+ expect(p.parse("DRITTE MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTE MOSE 1:1'")
259
+ expect(p.parse("LEVITIKUS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEVITIKUS 1:1'")
260
+ expect(p.parse("3. MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MOSE 1:1'")
261
+ expect(p.parse("3 MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MOSE 1:1'")
262
+ expect(p.parse("3. MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MOS 1:1'")
263
+ expect(p.parse("3 MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MOS 1:1'")
264
+ expect(p.parse("3. MO 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MO 1:1'")
265
+ expect(p.parse("3 MO 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MO 1:1'")
266
+ expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'")
267
+ expect(p.parse("LV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LV 1:1'")
268
+ ;
269
+ return true;
270
+ });
271
+ });
272
+
273
+ describe("Localized book Num (de)", function() {
274
+ var p;
275
+ p = {};
276
+ beforeEach(function() {
277
+ p = new bcv_parser();
278
+ p.set_options({
279
+ book_alone_strategy: "ignore",
280
+ book_sequence_strategy: "ignore",
281
+ osis_compaction_strategy: "bc",
282
+ captive_end_digits_strategy: "delete"
283
+ });
284
+ return p.include_apocrypha(true);
285
+ });
286
+ return it("should handle book: Num (de)", function() {
287
+
288
+ expect(p.parse("Vierten Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierten Buch Mose 1:1'")
289
+ expect(p.parse("Viertes Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Viertes Buch Mose 1:1'")
290
+ expect(p.parse("Vierte Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierte Buch Mose 1:1'")
291
+ expect(p.parse("4. Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Buch Mose 1:1'")
292
+ expect(p.parse("Vierten Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierten Mose 1:1'")
293
+ expect(p.parse("Viertes Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Viertes Mose 1:1'")
294
+ expect(p.parse("4 Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Buch Mose 1:1'")
295
+ expect(p.parse("Vierte Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierte Mose 1:1'")
296
+ expect(p.parse("4. Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mose 1:1'")
297
+ expect(p.parse("4 Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mose 1:1'")
298
+ expect(p.parse("4. Mos 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mos 1:1'")
299
+ expect(p.parse("Numeri 1:1").osis()).toEqual("Num.1.1", "parsing: 'Numeri 1:1'")
300
+ expect(p.parse("4 Mos 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mos 1:1'")
301
+ expect(p.parse("4. Mo 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mo 1:1'")
302
+ expect(p.parse("4 Mo 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mo 1:1'")
303
+ expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'")
304
+ expect(p.parse("Nm 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nm 1:1'")
305
+ p.include_apocrypha(false)
306
+ expect(p.parse("VIERTEN BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTEN BUCH MOSE 1:1'")
307
+ expect(p.parse("VIERTES BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTES BUCH MOSE 1:1'")
308
+ expect(p.parse("VIERTE BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTE BUCH MOSE 1:1'")
309
+ expect(p.parse("4. BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4. BUCH MOSE 1:1'")
310
+ expect(p.parse("VIERTEN MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTEN MOSE 1:1'")
311
+ expect(p.parse("VIERTES MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTES MOSE 1:1'")
312
+ expect(p.parse("4 BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4 BUCH MOSE 1:1'")
313
+ expect(p.parse("VIERTE MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTE MOSE 1:1'")
314
+ expect(p.parse("4. MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MOSE 1:1'")
315
+ expect(p.parse("4 MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MOSE 1:1'")
316
+ expect(p.parse("4. MOS 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MOS 1:1'")
317
+ expect(p.parse("NUMERI 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUMERI 1:1'")
318
+ expect(p.parse("4 MOS 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MOS 1:1'")
319
+ expect(p.parse("4. MO 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MO 1:1'")
320
+ expect(p.parse("4 MO 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MO 1:1'")
321
+ expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'")
322
+ expect(p.parse("NM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NM 1:1'")
323
+ ;
324
+ return true;
325
+ });
326
+ });
327
+
328
+ describe("Localized book Sir (de)", function() {
329
+ var p;
330
+ p = {};
331
+ beforeEach(function() {
332
+ p = new bcv_parser();
333
+ p.set_options({
334
+ book_alone_strategy: "ignore",
335
+ book_sequence_strategy: "ignore",
336
+ osis_compaction_strategy: "bc",
337
+ captive_end_digits_strategy: "delete"
338
+ });
339
+ return p.include_apocrypha(true);
340
+ });
341
+ return it("should handle book: Sir (de)", function() {
342
+
343
+ expect(p.parse("Ecclesiasticus 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Ecclesiasticus 1:1'")
344
+ expect(p.parse("Jesus Sirach 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Jesus Sirach 1:1'")
345
+ expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'")
346
+ ;
347
+ return true;
348
+ });
349
+ });
350
+
351
+ describe("Localized book Wis (de)", function() {
352
+ var p;
353
+ p = {};
354
+ beforeEach(function() {
355
+ p = new bcv_parser();
356
+ p.set_options({
357
+ book_alone_strategy: "ignore",
358
+ book_sequence_strategy: "ignore",
359
+ osis_compaction_strategy: "bc",
360
+ captive_end_digits_strategy: "delete"
361
+ });
362
+ return p.include_apocrypha(true);
363
+ });
364
+ return it("should handle book: Wis (de)", function() {
365
+
366
+ expect(p.parse("Weisheit Salomos 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Weisheit Salomos 1:1'")
367
+ expect(p.parse("Weisheit 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Weisheit 1:1'")
368
+ expect(p.parse("Weish 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Weish 1:1'")
369
+ expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'")
370
+ ;
371
+ return true;
372
+ });
373
+ });
374
+
375
+ describe("Localized book Lam (de)", function() {
376
+ var p;
377
+ p = {};
378
+ beforeEach(function() {
379
+ p = new bcv_parser();
380
+ p.set_options({
381
+ book_alone_strategy: "ignore",
382
+ book_sequence_strategy: "ignore",
383
+ osis_compaction_strategy: "bc",
384
+ captive_end_digits_strategy: "delete"
385
+ });
386
+ return p.include_apocrypha(true);
387
+ });
388
+ return it("should handle book: Lam (de)", function() {
389
+
390
+ expect(p.parse("Klagelieder Jeremias 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klagelieder Jeremias 1:1'")
391
+ expect(p.parse("Klagelieder 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klagelieder 1:1'")
392
+ expect(p.parse("Klag 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klag 1:1'")
393
+ expect(p.parse("Klgl 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klgl 1:1'")
394
+ expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'")
395
+ p.include_apocrypha(false)
396
+ expect(p.parse("KLAGELIEDER JEREMIAS 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLAGELIEDER JEREMIAS 1:1'")
397
+ expect(p.parse("KLAGELIEDER 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLAGELIEDER 1:1'")
398
+ expect(p.parse("KLAG 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLAG 1:1'")
399
+ expect(p.parse("KLGL 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLGL 1:1'")
400
+ expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'")
401
+ ;
402
+ return true;
403
+ });
404
+ });
405
+
406
+ describe("Localized book EpJer (de)", function() {
407
+ var p;
408
+ p = {};
409
+ beforeEach(function() {
410
+ p = new bcv_parser();
411
+ p.set_options({
412
+ book_alone_strategy: "ignore",
413
+ book_sequence_strategy: "ignore",
414
+ osis_compaction_strategy: "bc",
415
+ captive_end_digits_strategy: "delete"
416
+ });
417
+ return p.include_apocrypha(true);
418
+ });
419
+ return it("should handle book: EpJer (de)", function() {
420
+
421
+ expect(p.parse("Brief des Jeremia 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Brief des Jeremia 1:1'")
422
+ expect(p.parse("Br Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Br Jer 1:1'")
423
+ expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'")
424
+ ;
425
+ return true;
426
+ });
427
+ });
428
+
429
+ describe("Localized book Rev (de)", function() {
430
+ var p;
431
+ p = {};
432
+ beforeEach(function() {
433
+ p = new bcv_parser();
434
+ p.set_options({
435
+ book_alone_strategy: "ignore",
436
+ book_sequence_strategy: "ignore",
437
+ osis_compaction_strategy: "bc",
438
+ captive_end_digits_strategy: "delete"
439
+ });
440
+ return p.include_apocrypha(true);
441
+ });
442
+ return it("should handle book: Rev (de)", function() {
443
+
444
+ expect(p.parse("Offenbarung 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Offenbarung 1:1'")
445
+ expect(p.parse("Offb 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Offb 1:1'")
446
+ expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'")
447
+ p.include_apocrypha(false)
448
+ expect(p.parse("OFFENBARUNG 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OFFENBARUNG 1:1'")
449
+ expect(p.parse("OFFB 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OFFB 1:1'")
450
+ expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'")
451
+ ;
452
+ return true;
453
+ });
454
+ });
455
+
456
+ describe("Localized book PrMan (de)", function() {
457
+ var p;
458
+ p = {};
459
+ beforeEach(function() {
460
+ p = new bcv_parser();
461
+ p.set_options({
462
+ book_alone_strategy: "ignore",
463
+ book_sequence_strategy: "ignore",
464
+ osis_compaction_strategy: "bc",
465
+ captive_end_digits_strategy: "delete"
466
+ });
467
+ return p.include_apocrypha(true);
468
+ });
469
+ return it("should handle book: PrMan (de)", function() {
470
+
471
+ expect(p.parse("Das Gebet des Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Das Gebet des Manasse 1:1'")
472
+ expect(p.parse("Das Gebet Manasses 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Das Gebet Manasses 1:1'")
473
+ expect(p.parse("Gebet des Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Gebet des Manasse 1:1'")
474
+ expect(p.parse("Gebet Manasses 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Gebet Manasses 1:1'")
475
+ expect(p.parse("Gebet Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Gebet Manasse 1:1'")
476
+ expect(p.parse("Geb Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Geb Man 1:1'")
477
+ expect(p.parse("Or Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Or Man 1:1'")
478
+ expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'")
479
+ ;
480
+ return true;
481
+ });
482
+ });
483
+
484
+ describe("Localized book Deut (de)", function() {
485
+ var p;
486
+ p = {};
487
+ beforeEach(function() {
488
+ p = new bcv_parser();
489
+ p.set_options({
490
+ book_alone_strategy: "ignore",
491
+ book_sequence_strategy: "ignore",
492
+ osis_compaction_strategy: "bc",
493
+ captive_end_digits_strategy: "delete"
494
+ });
495
+ return p.include_apocrypha(true);
496
+ });
497
+ return it("should handle book: Deut (de)", function() {
498
+
499
+ expect(p.parse("Funftes Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Funftes Buch Mose 1:1'")
500
+ expect(p.parse("Fünftes Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fünftes Buch Mose 1:1'")
501
+ expect(p.parse("Deuteronomium 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deuteronomium 1:1'")
502
+ expect(p.parse("5. Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Buch Mose 1:1'")
503
+ expect(p.parse("Funftes Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Funftes Mose 1:1'")
504
+ expect(p.parse("Fünftes Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fünftes Mose 1:1'")
505
+ expect(p.parse("5 Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Buch Mose 1:1'")
506
+ expect(p.parse("5. Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mose 1:1'")
507
+ expect(p.parse("5 Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mose 1:1'")
508
+ expect(p.parse("5. Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mos 1:1'")
509
+ expect(p.parse("5 Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mos 1:1'")
510
+ expect(p.parse("5. Mo 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mo 1:1'")
511
+ expect(p.parse("5 Mo 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mo 1:1'")
512
+ expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'")
513
+ expect(p.parse("Dtn 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Dtn 1:1'")
514
+ expect(p.parse("Dt 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Dt 1:1'")
515
+ p.include_apocrypha(false)
516
+ expect(p.parse("FUNFTES BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FUNFTES BUCH MOSE 1:1'")
517
+ expect(p.parse("FÜNFTES BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FÜNFTES BUCH MOSE 1:1'")
518
+ expect(p.parse("DEUTERONOMIUM 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUTERONOMIUM 1:1'")
519
+ expect(p.parse("5. BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. BUCH MOSE 1:1'")
520
+ expect(p.parse("FUNFTES MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FUNFTES MOSE 1:1'")
521
+ expect(p.parse("FÜNFTES MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FÜNFTES MOSE 1:1'")
522
+ expect(p.parse("5 BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 BUCH MOSE 1:1'")
523
+ expect(p.parse("5. MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MOSE 1:1'")
524
+ expect(p.parse("5 MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MOSE 1:1'")
525
+ expect(p.parse("5. MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MOS 1:1'")
526
+ expect(p.parse("5 MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MOS 1:1'")
527
+ expect(p.parse("5. MO 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MO 1:1'")
528
+ expect(p.parse("5 MO 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MO 1:1'")
529
+ expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'")
530
+ expect(p.parse("DTN 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DTN 1:1'")
531
+ expect(p.parse("DT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DT 1:1'")
532
+ ;
533
+ return true;
534
+ });
535
+ });
536
+
537
+ describe("Localized book Josh (de)", function() {
538
+ var p;
539
+ p = {};
540
+ beforeEach(function() {
541
+ p = new bcv_parser();
542
+ p.set_options({
543
+ book_alone_strategy: "ignore",
544
+ book_sequence_strategy: "ignore",
545
+ osis_compaction_strategy: "bc",
546
+ captive_end_digits_strategy: "delete"
547
+ });
548
+ return p.include_apocrypha(true);
549
+ });
550
+ return it("should handle book: Josh (de)", function() {
551
+
552
+ expect(p.parse("Josua 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josua 1:1'")
553
+ expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'")
554
+ expect(p.parse("Jos 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jos 1:1'")
555
+ p.include_apocrypha(false)
556
+ expect(p.parse("JOSUA 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSUA 1:1'")
557
+ expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'")
558
+ expect(p.parse("JOS 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOS 1:1'")
559
+ ;
560
+ return true;
561
+ });
562
+ });
563
+
564
+ describe("Localized book Judg (de)", 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: Judg (de)", function() {
578
+
579
+ expect(p.parse("Richter 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Richter 1:1'")
580
+ expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'")
581
+ expect(p.parse("Rich 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Rich 1:1'")
582
+ expect(p.parse("Ri 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Ri 1:1'")
583
+ p.include_apocrypha(false)
584
+ expect(p.parse("RICHTER 1:1").osis()).toEqual("Judg.1.1", "parsing: 'RICHTER 1:1'")
585
+ expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'")
586
+ expect(p.parse("RICH 1:1").osis()).toEqual("Judg.1.1", "parsing: 'RICH 1:1'")
587
+ expect(p.parse("RI 1:1").osis()).toEqual("Judg.1.1", "parsing: 'RI 1:1'")
588
+ ;
589
+ return true;
590
+ });
591
+ });
592
+
593
+ describe("Localized book Ruth (de)", function() {
594
+ var p;
595
+ p = {};
596
+ beforeEach(function() {
597
+ p = new bcv_parser();
598
+ p.set_options({
599
+ book_alone_strategy: "ignore",
600
+ book_sequence_strategy: "ignore",
601
+ osis_compaction_strategy: "bc",
602
+ captive_end_digits_strategy: "delete"
603
+ });
604
+ return p.include_apocrypha(true);
605
+ });
606
+ return it("should handle book: Ruth (de)", function() {
607
+
608
+ expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'")
609
+ expect(p.parse("Rut 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rut 1:1'")
610
+ expect(p.parse("Ru 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ru 1:1'")
611
+ p.include_apocrypha(false)
612
+ expect(p.parse("RUTH 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTH 1:1'")
613
+ expect(p.parse("RUT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUT 1:1'")
614
+ expect(p.parse("RU 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RU 1:1'")
615
+ ;
616
+ return true;
617
+ });
618
+ });
619
+
620
+ describe("Localized book 1Esd (de)", function() {
621
+ var p;
622
+ p = {};
623
+ beforeEach(function() {
624
+ p = new bcv_parser();
625
+ p.set_options({
626
+ book_alone_strategy: "ignore",
627
+ book_sequence_strategy: "ignore",
628
+ osis_compaction_strategy: "bc",
629
+ captive_end_digits_strategy: "delete"
630
+ });
631
+ return p.include_apocrypha(true);
632
+ });
633
+ return it("should handle book: 1Esd (de)", function() {
634
+
635
+ expect(p.parse("Ersten Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Ersten Esdra 1:1'")
636
+ expect(p.parse("Erster Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erster Esdra 1:1'")
637
+ expect(p.parse("Erstes Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erstes Esdra 1:1'")
638
+ expect(p.parse("Erste Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erste Esdra 1:1'")
639
+ expect(p.parse("Ersten Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Ersten Esra 1:1'")
640
+ expect(p.parse("Erster Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erster Esra 1:1'")
641
+ expect(p.parse("Erstes Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erstes Esra 1:1'")
642
+ expect(p.parse("Erste Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erste Esra 1:1'")
643
+ expect(p.parse("1. Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esdra 1:1'")
644
+ expect(p.parse("1 Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdra 1:1'")
645
+ expect(p.parse("1. Esdr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esdr 1:1'")
646
+ expect(p.parse("1. Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esra 1:1'")
647
+ expect(p.parse("1 Esdr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdr 1:1'")
648
+ expect(p.parse("1 Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esra 1:1'")
649
+ expect(p.parse("1. Esr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esr 1:1'")
650
+ expect(p.parse("1 Esr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esr 1:1'")
651
+ expect(p.parse("1. Es 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Es 1:1'")
652
+ expect(p.parse("1 Es 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Es 1:1'")
653
+ expect(p.parse("1Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1Esd 1:1'")
654
+ ;
655
+ return true;
656
+ });
657
+ });
658
+
659
+ describe("Localized book 2Esd (de)", function() {
660
+ var p;
661
+ p = {};
662
+ beforeEach(function() {
663
+ p = new bcv_parser();
664
+ p.set_options({
665
+ book_alone_strategy: "ignore",
666
+ book_sequence_strategy: "ignore",
667
+ osis_compaction_strategy: "bc",
668
+ captive_end_digits_strategy: "delete"
669
+ });
670
+ return p.include_apocrypha(true);
671
+ });
672
+ return it("should handle book: 2Esd (de)", function() {
673
+
674
+ expect(p.parse("Zweiten Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiten Esdra 1:1'")
675
+ expect(p.parse("Zweiter Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiter Esdra 1:1'")
676
+ expect(p.parse("Zweites Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweites Esdra 1:1'")
677
+ expect(p.parse("Zweite Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweite Esdra 1:1'")
678
+ expect(p.parse("Zweiten Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiten Esra 1:1'")
679
+ expect(p.parse("Zweiter Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiter Esra 1:1'")
680
+ expect(p.parse("Zweites Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweites Esra 1:1'")
681
+ expect(p.parse("Zweite Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweite Esra 1:1'")
682
+ expect(p.parse("2. Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esdra 1:1'")
683
+ expect(p.parse("2 Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdra 1:1'")
684
+ expect(p.parse("2. Esdr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esdr 1:1'")
685
+ expect(p.parse("2. Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esra 1:1'")
686
+ expect(p.parse("2 Esdr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdr 1:1'")
687
+ expect(p.parse("2 Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esra 1:1'")
688
+ expect(p.parse("2. Esr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esr 1:1'")
689
+ expect(p.parse("2 Esr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esr 1:1'")
690
+ expect(p.parse("2. Es 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Es 1:1'")
691
+ expect(p.parse("2 Es 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Es 1:1'")
692
+ expect(p.parse("2Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2Esd 1:1'")
693
+ ;
694
+ return true;
695
+ });
696
+ });
697
+
698
+ describe("Localized book Isa (de)", function() {
699
+ var p;
700
+ p = {};
701
+ beforeEach(function() {
702
+ p = new bcv_parser();
703
+ p.set_options({
704
+ book_alone_strategy: "ignore",
705
+ book_sequence_strategy: "ignore",
706
+ osis_compaction_strategy: "bc",
707
+ captive_end_digits_strategy: "delete"
708
+ });
709
+ return p.include_apocrypha(true);
710
+ });
711
+ return it("should handle book: Isa (de)", function() {
712
+
713
+ expect(p.parse("Isaias 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isaias 1:1'")
714
+ expect(p.parse("Jesaja 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Jesaja 1:1'")
715
+ expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'")
716
+ expect(p.parse("Jes 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Jes 1:1'")
717
+ p.include_apocrypha(false)
718
+ expect(p.parse("ISAIAS 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISAIAS 1:1'")
719
+ expect(p.parse("JESAJA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'JESAJA 1:1'")
720
+ expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'")
721
+ expect(p.parse("JES 1:1").osis()).toEqual("Isa.1.1", "parsing: 'JES 1:1'")
722
+ ;
723
+ return true;
724
+ });
725
+ });
726
+
727
+ describe("Localized book 2Sam (de)", function() {
728
+ var p;
729
+ p = {};
730
+ beforeEach(function() {
731
+ p = new bcv_parser();
732
+ p.set_options({
733
+ book_alone_strategy: "ignore",
734
+ book_sequence_strategy: "ignore",
735
+ osis_compaction_strategy: "bc",
736
+ captive_end_digits_strategy: "delete"
737
+ });
738
+ return p.include_apocrypha(true);
739
+ });
740
+ return it("should handle book: 2Sam (de)", function() {
741
+
742
+ expect(p.parse("Zweiten Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweiten Samuel 1:1'")
743
+ expect(p.parse("Zweiter Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweiter Samuel 1:1'")
744
+ expect(p.parse("Zweites Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweites Samuel 1:1'")
745
+ expect(p.parse("Zweite Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweite Samuel 1:1'")
746
+ expect(p.parse("2. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Samuel 1:1'")
747
+ expect(p.parse("2 Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Samuel 1:1'")
748
+ expect(p.parse("2. Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Sam 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("2 Sa 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Sa 1:1'")
752
+ expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'")
753
+ p.include_apocrypha(false)
754
+ expect(p.parse("ZWEITEN SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITEN SAMUEL 1:1'")
755
+ expect(p.parse("ZWEITER SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITER SAMUEL 1:1'")
756
+ expect(p.parse("ZWEITES SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITES SAMUEL 1:1'")
757
+ expect(p.parse("ZWEITE SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITE SAMUEL 1:1'")
758
+ expect(p.parse("2. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAMUEL 1:1'")
759
+ expect(p.parse("2 SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAMUEL 1:1'")
760
+ expect(p.parse("2. SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAM 1:1'")
761
+ expect(p.parse("2 SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAM 1:1'")
762
+ expect(p.parse("2. SA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SA 1:1'")
763
+ expect(p.parse("2 SA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SA 1:1'")
764
+ expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'")
765
+ ;
766
+ return true;
767
+ });
768
+ });
769
+
770
+ describe("Localized book 1Sam (de)", function() {
771
+ var p;
772
+ p = {};
773
+ beforeEach(function() {
774
+ p = new bcv_parser();
775
+ p.set_options({
776
+ book_alone_strategy: "ignore",
777
+ book_sequence_strategy: "ignore",
778
+ osis_compaction_strategy: "bc",
779
+ captive_end_digits_strategy: "delete"
780
+ });
781
+ return p.include_apocrypha(true);
782
+ });
783
+ return it("should handle book: 1Sam (de)", function() {
784
+
785
+ expect(p.parse("Ersten Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Ersten Samuel 1:1'")
786
+ expect(p.parse("Erster Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Erster Samuel 1:1'")
787
+ expect(p.parse("Erstes Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Erstes Samuel 1:1'")
788
+ expect(p.parse("Erste Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Erste 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("1 Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 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 Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sam 1:1'")
793
+ expect(p.parse("1. Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Sa 1:1'")
794
+ expect(p.parse("1 Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sa 1:1'")
795
+ expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'")
796
+ p.include_apocrypha(false)
797
+ expect(p.parse("ERSTEN SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTEN SAMUEL 1:1'")
798
+ expect(p.parse("ERSTER SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTER SAMUEL 1:1'")
799
+ expect(p.parse("ERSTES SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTES SAMUEL 1:1'")
800
+ expect(p.parse("ERSTE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTE SAMUEL 1:1'")
801
+ expect(p.parse("1. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAMUEL 1:1'")
802
+ expect(p.parse("1 SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAMUEL 1:1'")
803
+ expect(p.parse("1. SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAM 1:1'")
804
+ expect(p.parse("1 SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAM 1:1'")
805
+ expect(p.parse("1. SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SA 1:1'")
806
+ expect(p.parse("1 SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SA 1:1'")
807
+ expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'")
808
+ ;
809
+ return true;
810
+ });
811
+ });
812
+
813
+ describe("Localized book 2Kgs (de)", function() {
814
+ var p;
815
+ p = {};
816
+ beforeEach(function() {
817
+ p = new bcv_parser();
818
+ p.set_options({
819
+ book_alone_strategy: "ignore",
820
+ book_sequence_strategy: "ignore",
821
+ osis_compaction_strategy: "bc",
822
+ captive_end_digits_strategy: "delete"
823
+ });
824
+ return p.include_apocrypha(true);
825
+ });
826
+ return it("should handle book: 2Kgs (de)", function() {
827
+
828
+ expect(p.parse("Zweiten Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiten Koenige 1:1'")
829
+ expect(p.parse("Zweiter Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiter Koenige 1:1'")
830
+ expect(p.parse("Zweites Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweites Koenige 1:1'")
831
+ expect(p.parse("Zweite Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweite Koenige 1:1'")
832
+ expect(p.parse("Zweiten Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiten Konige 1:1'")
833
+ expect(p.parse("Zweiten Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiten Könige 1:1'")
834
+ expect(p.parse("Zweiter Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiter Konige 1:1'")
835
+ expect(p.parse("Zweiter Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiter Könige 1:1'")
836
+ expect(p.parse("Zweites Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweites Konige 1:1'")
837
+ expect(p.parse("Zweites Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweites Könige 1:1'")
838
+ expect(p.parse("Zweite Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweite Konige 1:1'")
839
+ expect(p.parse("Zweite Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweite Könige 1:1'")
840
+ expect(p.parse("2. Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Koenige 1:1'")
841
+ expect(p.parse("2 Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Koenige 1:1'")
842
+ expect(p.parse("2. Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Konige 1:1'")
843
+ expect(p.parse("2. Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Könige 1:1'")
844
+ expect(p.parse("2 Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Konige 1:1'")
845
+ expect(p.parse("2 Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Könige 1:1'")
846
+ expect(p.parse("2. Koen 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Koen 1:1'")
847
+ expect(p.parse("2 Koen 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Koen 1:1'")
848
+ expect(p.parse("2. Kng 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kng 1:1'")
849
+ expect(p.parse("2. Koe 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Koe 1:1'")
850
+ expect(p.parse("2. Kon 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kon 1:1'")
851
+ expect(p.parse("2. Kön 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kön 1:1'")
852
+ expect(p.parse("2 Kng 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kng 1:1'")
853
+ expect(p.parse("2 Koe 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Koe 1:1'")
854
+ expect(p.parse("2 Kon 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kon 1:1'")
855
+ expect(p.parse("2 Kön 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kön 1:1'")
856
+ expect(p.parse("2. Ko 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Ko 1:1'")
857
+ expect(p.parse("2. Kö 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kö 1:1'")
858
+ expect(p.parse("2 Ko 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Ko 1:1'")
859
+ expect(p.parse("2 Kö 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kö 1:1'")
860
+ expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'")
861
+ p.include_apocrypha(false)
862
+ expect(p.parse("ZWEITEN KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITEN KOENIGE 1:1'")
863
+ expect(p.parse("ZWEITER KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITER KOENIGE 1:1'")
864
+ expect(p.parse("ZWEITES KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITES KOENIGE 1:1'")
865
+ expect(p.parse("ZWEITE KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITE KOENIGE 1:1'")
866
+ expect(p.parse("ZWEITEN KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITEN KONIGE 1:1'")
867
+ expect(p.parse("ZWEITEN KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITEN KÖNIGE 1:1'")
868
+ expect(p.parse("ZWEITER KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITER KONIGE 1:1'")
869
+ expect(p.parse("ZWEITER KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITER KÖNIGE 1:1'")
870
+ expect(p.parse("ZWEITES KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITES KONIGE 1:1'")
871
+ expect(p.parse("ZWEITES KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITES KÖNIGE 1:1'")
872
+ expect(p.parse("ZWEITE KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITE KONIGE 1:1'")
873
+ expect(p.parse("ZWEITE KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITE KÖNIGE 1:1'")
874
+ expect(p.parse("2. KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KOENIGE 1:1'")
875
+ expect(p.parse("2 KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KOENIGE 1:1'")
876
+ expect(p.parse("2. KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KONIGE 1:1'")
877
+ expect(p.parse("2. KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KÖNIGE 1:1'")
878
+ expect(p.parse("2 KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KONIGE 1:1'")
879
+ expect(p.parse("2 KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KÖNIGE 1:1'")
880
+ expect(p.parse("2. KOEN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KOEN 1:1'")
881
+ expect(p.parse("2 KOEN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KOEN 1:1'")
882
+ expect(p.parse("2. KNG 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KNG 1:1'")
883
+ expect(p.parse("2. KOE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KOE 1:1'")
884
+ expect(p.parse("2. KON 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KON 1:1'")
885
+ expect(p.parse("2. KÖN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KÖN 1:1'")
886
+ expect(p.parse("2 KNG 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KNG 1:1'")
887
+ expect(p.parse("2 KOE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KOE 1:1'")
888
+ expect(p.parse("2 KON 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KON 1:1'")
889
+ expect(p.parse("2 KÖN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KÖN 1:1'")
890
+ expect(p.parse("2. KO 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KO 1:1'")
891
+ expect(p.parse("2. KÖ 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KÖ 1:1'")
892
+ expect(p.parse("2 KO 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KO 1:1'")
893
+ expect(p.parse("2 KÖ 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KÖ 1:1'")
894
+ expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'")
895
+ ;
896
+ return true;
897
+ });
898
+ });
899
+
900
+ describe("Localized book 1Kgs (de)", function() {
901
+ var p;
902
+ p = {};
903
+ beforeEach(function() {
904
+ p = new bcv_parser();
905
+ p.set_options({
906
+ book_alone_strategy: "ignore",
907
+ book_sequence_strategy: "ignore",
908
+ osis_compaction_strategy: "bc",
909
+ captive_end_digits_strategy: "delete"
910
+ });
911
+ return p.include_apocrypha(true);
912
+ });
913
+ return it("should handle book: 1Kgs (de)", function() {
914
+
915
+ expect(p.parse("Ersten Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Ersten Koenige 1:1'")
916
+ expect(p.parse("Erster Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erster Koenige 1:1'")
917
+ expect(p.parse("Erstes Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erstes Koenige 1:1'")
918
+ expect(p.parse("Erste Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erste Koenige 1:1'")
919
+ expect(p.parse("Ersten Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Ersten Konige 1:1'")
920
+ expect(p.parse("Ersten Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Ersten Könige 1:1'")
921
+ expect(p.parse("Erster Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erster Konige 1:1'")
922
+ expect(p.parse("Erster Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erster Könige 1:1'")
923
+ expect(p.parse("Erstes Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erstes Konige 1:1'")
924
+ expect(p.parse("Erstes Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erstes Könige 1:1'")
925
+ expect(p.parse("Erste Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erste Konige 1:1'")
926
+ expect(p.parse("Erste Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erste Könige 1:1'")
927
+ expect(p.parse("1. Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Koenige 1:1'")
928
+ expect(p.parse("1 Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Koenige 1:1'")
929
+ expect(p.parse("1. Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Konige 1:1'")
930
+ expect(p.parse("1. Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Könige 1:1'")
931
+ expect(p.parse("1 Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Konige 1:1'")
932
+ expect(p.parse("1 Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Könige 1:1'")
933
+ expect(p.parse("1. Koen 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Koen 1:1'")
934
+ expect(p.parse("1 Koen 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Koen 1:1'")
935
+ expect(p.parse("1. Kng 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Kng 1:1'")
936
+ expect(p.parse("1. Koe 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Koe 1:1'")
937
+ expect(p.parse("1. Kon 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Kon 1:1'")
938
+ expect(p.parse("1. Kön 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Kön 1:1'")
939
+ expect(p.parse("1 Kng 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Kng 1:1'")
940
+ expect(p.parse("1 Koe 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Koe 1:1'")
941
+ expect(p.parse("1 Kon 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Kon 1:1'")
942
+ expect(p.parse("1 Kön 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Kön 1:1'")
943
+ expect(p.parse("1. Ko 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Ko 1:1'")
944
+ expect(p.parse("1. Kö 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Kö 1:1'")
945
+ expect(p.parse("1 Ko 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Ko 1:1'")
946
+ expect(p.parse("1 Kö 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Kö 1:1'")
947
+ expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'")
948
+ p.include_apocrypha(false)
949
+ expect(p.parse("ERSTEN KOENIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTEN KOENIGE 1:1'")
950
+ expect(p.parse("ERSTER KOENIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTER KOENIGE 1:1'")
951
+ expect(p.parse("ERSTES KOENIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTES KOENIGE 1:1'")
952
+ expect(p.parse("ERSTE KOENIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTE KOENIGE 1:1'")
953
+ expect(p.parse("ERSTEN KONIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTEN KONIGE 1:1'")
954
+ expect(p.parse("ERSTEN KÖNIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTEN KÖNIGE 1:1'")
955
+ expect(p.parse("ERSTER KONIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTER KONIGE 1:1'")
956
+ expect(p.parse("ERSTER KÖNIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTER KÖNIGE 1:1'")
957
+ expect(p.parse("ERSTES KONIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTES KONIGE 1:1'")
958
+ expect(p.parse("ERSTES KÖNIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTES KÖNIGE 1:1'")
959
+ expect(p.parse("ERSTE KONIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTE KONIGE 1:1'")
960
+ expect(p.parse("ERSTE KÖNIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'ERSTE KÖNIGE 1:1'")
961
+ expect(p.parse("1. KOENIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KOENIGE 1:1'")
962
+ expect(p.parse("1 KOENIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KOENIGE 1:1'")
963
+ expect(p.parse("1. KONIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KONIGE 1:1'")
964
+ expect(p.parse("1. KÖNIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KÖNIGE 1:1'")
965
+ expect(p.parse("1 KONIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KONIGE 1:1'")
966
+ expect(p.parse("1 KÖNIGE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KÖNIGE 1:1'")
967
+ expect(p.parse("1. KOEN 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KOEN 1:1'")
968
+ expect(p.parse("1 KOEN 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KOEN 1:1'")
969
+ expect(p.parse("1. KNG 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KNG 1:1'")
970
+ expect(p.parse("1. KOE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KOE 1:1'")
971
+ expect(p.parse("1. KON 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KON 1:1'")
972
+ expect(p.parse("1. KÖN 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KÖN 1:1'")
973
+ expect(p.parse("1 KNG 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KNG 1:1'")
974
+ expect(p.parse("1 KOE 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KOE 1:1'")
975
+ expect(p.parse("1 KON 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KON 1:1'")
976
+ expect(p.parse("1 KÖN 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KÖN 1:1'")
977
+ expect(p.parse("1. KO 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KO 1:1'")
978
+ expect(p.parse("1. KÖ 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. KÖ 1:1'")
979
+ expect(p.parse("1 KO 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KO 1:1'")
980
+ expect(p.parse("1 KÖ 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 KÖ 1:1'")
981
+ expect(p.parse("1KGS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1KGS 1:1'")
982
+ ;
983
+ return true;
984
+ });
985
+ });
986
+
987
+ describe("Localized book 2Chr (de)", function() {
988
+ var p;
989
+ p = {};
990
+ beforeEach(function() {
991
+ p = new bcv_parser();
992
+ p.set_options({
993
+ book_alone_strategy: "ignore",
994
+ book_sequence_strategy: "ignore",
995
+ osis_compaction_strategy: "bc",
996
+ captive_end_digits_strategy: "delete"
997
+ });
998
+ return p.include_apocrypha(true);
999
+ });
1000
+ return it("should handle book: 2Chr (de)", function() {
1001
+
1002
+ expect(p.parse("Zweiten Chronik 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Zweiten Chronik 1:1'")
1003
+ expect(p.parse("Zweiter Chronik 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Zweiter Chronik 1:1'")
1004
+ expect(p.parse("Zweites Chronik 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Zweites Chronik 1:1'")
1005
+ expect(p.parse("Zweite Chronik 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'Zweite Chronik 1:1'")
1006
+ expect(p.parse("2. Chronik 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Chronik 1:1'")
1007
+ expect(p.parse("2 Chronik 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Chronik 1:1'")
1008
+ expect(p.parse("2. Chron 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Chron 1:1'")
1009
+ expect(p.parse("2 Chron 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Chron 1:1'")
1010
+ expect(p.parse("2. Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Chr 1:1'")
1011
+ expect(p.parse("2 Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Chr 1:1'")
1012
+ expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'")
1013
+ p.include_apocrypha(false)
1014
+ expect(p.parse("ZWEITEN CHRONIK 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'ZWEITEN CHRONIK 1:1'")
1015
+ expect(p.parse("ZWEITER CHRONIK 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'ZWEITER CHRONIK 1:1'")
1016
+ expect(p.parse("ZWEITES CHRONIK 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'ZWEITES CHRONIK 1:1'")
1017
+ expect(p.parse("ZWEITE CHRONIK 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'ZWEITE CHRONIK 1:1'")
1018
+ expect(p.parse("2. CHRONIK 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. CHRONIK 1:1'")
1019
+ expect(p.parse("2 CHRONIK 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CHRONIK 1:1'")
1020
+ expect(p.parse("2. CHRON 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. CHRON 1:1'")
1021
+ expect(p.parse("2 CHRON 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CHRON 1:1'")
1022
+ expect(p.parse("2. CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. CHR 1:1'")
1023
+ expect(p.parse("2 CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 CHR 1:1'")
1024
+ expect(p.parse("2CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2CHR 1:1'")
1025
+ ;
1026
+ return true;
1027
+ });
1028
+ });
1029
+
1030
+ describe("Localized book 1Chr (de)", function() {
1031
+ var p;
1032
+ p = {};
1033
+ beforeEach(function() {
1034
+ p = new bcv_parser();
1035
+ p.set_options({
1036
+ book_alone_strategy: "ignore",
1037
+ book_sequence_strategy: "ignore",
1038
+ osis_compaction_strategy: "bc",
1039
+ captive_end_digits_strategy: "delete"
1040
+ });
1041
+ return p.include_apocrypha(true);
1042
+ });
1043
+ return it("should handle book: 1Chr (de)", function() {
1044
+
1045
+ expect(p.parse("Ersten Chronik 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Ersten Chronik 1:1'")
1046
+ expect(p.parse("Erster Chronik 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Erster Chronik 1:1'")
1047
+ expect(p.parse("Erstes Chronik 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Erstes Chronik 1:1'")
1048
+ expect(p.parse("Erste Chronik 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'Erste Chronik 1:1'")
1049
+ expect(p.parse("1. Chronik 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Chronik 1:1'")
1050
+ expect(p.parse("1 Chronik 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Chronik 1:1'")
1051
+ expect(p.parse("1. Chron 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Chron 1:1'")
1052
+ expect(p.parse("1 Chron 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Chron 1:1'")
1053
+ expect(p.parse("1. Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Chr 1:1'")
1054
+ expect(p.parse("1 Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Chr 1:1'")
1055
+ expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'")
1056
+ p.include_apocrypha(false)
1057
+ expect(p.parse("ERSTEN CHRONIK 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'ERSTEN CHRONIK 1:1'")
1058
+ expect(p.parse("ERSTER CHRONIK 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'ERSTER CHRONIK 1:1'")
1059
+ expect(p.parse("ERSTES CHRONIK 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'ERSTES CHRONIK 1:1'")
1060
+ expect(p.parse("ERSTE CHRONIK 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'ERSTE CHRONIK 1:1'")
1061
+ expect(p.parse("1. CHRONIK 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. CHRONIK 1:1'")
1062
+ expect(p.parse("1 CHRONIK 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CHRONIK 1:1'")
1063
+ expect(p.parse("1. CHRON 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. CHRON 1:1'")
1064
+ expect(p.parse("1 CHRON 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CHRON 1:1'")
1065
+ expect(p.parse("1. CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. CHR 1:1'")
1066
+ expect(p.parse("1 CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 CHR 1:1'")
1067
+ expect(p.parse("1CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1CHR 1:1'")
1068
+ ;
1069
+ return true;
1070
+ });
1071
+ });
1072
+
1073
+ describe("Localized book Ezra (de)", function() {
1074
+ var p;
1075
+ p = {};
1076
+ beforeEach(function() {
1077
+ p = new bcv_parser();
1078
+ p.set_options({
1079
+ book_alone_strategy: "ignore",
1080
+ book_sequence_strategy: "ignore",
1081
+ osis_compaction_strategy: "bc",
1082
+ captive_end_digits_strategy: "delete"
1083
+ });
1084
+ return p.include_apocrypha(true);
1085
+ });
1086
+ return it("should handle book: Ezra (de)", function() {
1087
+
1088
+ expect(p.parse("Esra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Esra 1:1'")
1089
+ expect(p.parse("Ezra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezra 1:1'")
1090
+ expect(p.parse("Esr 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Esr 1:1'")
1091
+ p.include_apocrypha(false)
1092
+ expect(p.parse("ESRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'ESRA 1:1'")
1093
+ expect(p.parse("EZRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZRA 1:1'")
1094
+ expect(p.parse("ESR 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'ESR 1:1'")
1095
+ ;
1096
+ return true;
1097
+ });
1098
+ });
1099
+
1100
+ describe("Localized book Neh (de)", function() {
1101
+ var p;
1102
+ p = {};
1103
+ beforeEach(function() {
1104
+ p = new bcv_parser();
1105
+ p.set_options({
1106
+ book_alone_strategy: "ignore",
1107
+ book_sequence_strategy: "ignore",
1108
+ osis_compaction_strategy: "bc",
1109
+ captive_end_digits_strategy: "delete"
1110
+ });
1111
+ return p.include_apocrypha(true);
1112
+ });
1113
+ return it("should handle book: Neh (de)", function() {
1114
+
1115
+ expect(p.parse("Nehemia 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Nehemia 1:1'")
1116
+ expect(p.parse("Neh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Neh 1:1'")
1117
+ p.include_apocrypha(false)
1118
+ expect(p.parse("NEHEMIA 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEHEMIA 1:1'")
1119
+ expect(p.parse("NEH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEH 1:1'")
1120
+ ;
1121
+ return true;
1122
+ });
1123
+ });
1124
+
1125
+ describe("Localized book GkEsth (de)", function() {
1126
+ var p;
1127
+ p = {};
1128
+ beforeEach(function() {
1129
+ p = new bcv_parser();
1130
+ p.set_options({
1131
+ book_alone_strategy: "ignore",
1132
+ book_sequence_strategy: "ignore",
1133
+ osis_compaction_strategy: "bc",
1134
+ captive_end_digits_strategy: "delete"
1135
+ });
1136
+ return p.include_apocrypha(true);
1137
+ });
1138
+ return it("should handle book: GkEsth (de)", function() {
1139
+
1140
+ expect(p.parse("Ester \(Griechisch\) 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Ester \(Griechisch\) 1:1'")
1141
+ expect(p.parse("Ester (Griechisch) 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Ester (Griechisch) 1:1'")
1142
+ expect(p.parse("GkEsth 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'GkEsth 1:1'")
1143
+ expect(p.parse("Gr Est 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'Gr Est 1:1'")
1144
+ ;
1145
+ return true;
1146
+ });
1147
+ });
1148
+
1149
+ describe("Localized book Esth (de)", function() {
1150
+ var p;
1151
+ p = {};
1152
+ beforeEach(function() {
1153
+ p = new bcv_parser();
1154
+ p.set_options({
1155
+ book_alone_strategy: "ignore",
1156
+ book_sequence_strategy: "ignore",
1157
+ osis_compaction_strategy: "bc",
1158
+ captive_end_digits_strategy: "delete"
1159
+ });
1160
+ return p.include_apocrypha(true);
1161
+ });
1162
+ return it("should handle book: Esth (de)", function() {
1163
+
1164
+ expect(p.parse("Esther 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esther 1:1'")
1165
+ expect(p.parse("Ester 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Ester 1:1'")
1166
+ expect(p.parse("Esth 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esth 1:1'")
1167
+ expect(p.parse("Est 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Est 1:1'")
1168
+ p.include_apocrypha(false)
1169
+ expect(p.parse("ESTHER 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTHER 1:1'")
1170
+ expect(p.parse("ESTER 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTER 1:1'")
1171
+ expect(p.parse("ESTH 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTH 1:1'")
1172
+ expect(p.parse("EST 1:1").osis()).toEqual("Esth.1.1", "parsing: 'EST 1:1'")
1173
+ ;
1174
+ return true;
1175
+ });
1176
+ });
1177
+
1178
+ describe("Localized book Job (de)", function() {
1179
+ var p;
1180
+ p = {};
1181
+ beforeEach(function() {
1182
+ p = new bcv_parser();
1183
+ p.set_options({
1184
+ book_alone_strategy: "ignore",
1185
+ book_sequence_strategy: "ignore",
1186
+ osis_compaction_strategy: "bc",
1187
+ captive_end_digits_strategy: "delete"
1188
+ });
1189
+ return p.include_apocrypha(true);
1190
+ });
1191
+ return it("should handle book: Job (de)", function() {
1192
+
1193
+ expect(p.parse("Hiob 1:1").osis()).toEqual("Job.1.1", "parsing: 'Hiob 1:1'")
1194
+ expect(p.parse("Ijob 1:1").osis()).toEqual("Job.1.1", "parsing: 'Ijob 1:1'")
1195
+ expect(p.parse("Job 1:1").osis()).toEqual("Job.1.1", "parsing: 'Job 1:1'")
1196
+ expect(p.parse("Hi 1:1").osis()).toEqual("Job.1.1", "parsing: 'Hi 1:1'")
1197
+ p.include_apocrypha(false)
1198
+ expect(p.parse("HIOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'HIOB 1:1'")
1199
+ expect(p.parse("IJOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'IJOB 1:1'")
1200
+ expect(p.parse("JOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JOB 1:1'")
1201
+ expect(p.parse("HI 1:1").osis()).toEqual("Job.1.1", "parsing: 'HI 1:1'")
1202
+ ;
1203
+ return true;
1204
+ });
1205
+ });
1206
+
1207
+ describe("Localized book Ps (de)", function() {
1208
+ var p;
1209
+ p = {};
1210
+ beforeEach(function() {
1211
+ p = new bcv_parser();
1212
+ p.set_options({
1213
+ book_alone_strategy: "ignore",
1214
+ book_sequence_strategy: "ignore",
1215
+ osis_compaction_strategy: "bc",
1216
+ captive_end_digits_strategy: "delete"
1217
+ });
1218
+ return p.include_apocrypha(true);
1219
+ });
1220
+ return it("should handle book: Ps (de)", function() {
1221
+
1222
+ expect(p.parse("Psalmen 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psalmen 1:1'")
1223
+ expect(p.parse("Psalm 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Psalm 1:1'")
1224
+ expect(p.parse("Pslm 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Pslm 1:1'")
1225
+ expect(p.parse("Ps 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Ps 1:1'")
1226
+ p.include_apocrypha(false)
1227
+ expect(p.parse("PSALMEN 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSALMEN 1:1'")
1228
+ expect(p.parse("PSALM 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSALM 1:1'")
1229
+ expect(p.parse("PSLM 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PSLM 1:1'")
1230
+ expect(p.parse("PS 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PS 1:1'")
1231
+ ;
1232
+ return true;
1233
+ });
1234
+ });
1235
+
1236
+ describe("Localized book PrAzar (de)", function() {
1237
+ var p;
1238
+ p = {};
1239
+ beforeEach(function() {
1240
+ p = new bcv_parser();
1241
+ p.set_options({
1242
+ book_alone_strategy: "ignore",
1243
+ book_sequence_strategy: "ignore",
1244
+ osis_compaction_strategy: "bc",
1245
+ captive_end_digits_strategy: "delete"
1246
+ });
1247
+ return p.include_apocrypha(true);
1248
+ });
1249
+ return it("should handle book: PrAzar (de)", function() {
1250
+
1251
+ expect(p.parse("Das Gebet des Asarja 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Das Gebet des Asarja 1:1'")
1252
+ expect(p.parse("Das Gebet Asarjas 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Das Gebet Asarjas 1:1'")
1253
+ expect(p.parse("Gebet des Asarja 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Gebet des Asarja 1:1'")
1254
+ expect(p.parse("Gebet Asarjas 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Gebet Asarjas 1:1'")
1255
+ expect(p.parse("Geb As 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'Geb As 1:1'")
1256
+ expect(p.parse("PrAzar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'PrAzar 1:1'")
1257
+ ;
1258
+ return true;
1259
+ });
1260
+ });
1261
+
1262
+ describe("Localized book Prov (de)", function() {
1263
+ var p;
1264
+ p = {};
1265
+ beforeEach(function() {
1266
+ p = new bcv_parser();
1267
+ p.set_options({
1268
+ book_alone_strategy: "ignore",
1269
+ book_sequence_strategy: "ignore",
1270
+ osis_compaction_strategy: "bc",
1271
+ captive_end_digits_strategy: "delete"
1272
+ });
1273
+ return p.include_apocrypha(true);
1274
+ });
1275
+ return it("should handle book: Prov (de)", function() {
1276
+
1277
+ expect(p.parse("Sprichwoerter 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Sprichwoerter 1:1'")
1278
+ expect(p.parse("Sprichworter 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Sprichworter 1:1'")
1279
+ expect(p.parse("Sprichwörter 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Sprichwörter 1:1'")
1280
+ expect(p.parse("Sprueche 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Sprueche 1:1'")
1281
+ expect(p.parse("Spruche 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Spruche 1:1'")
1282
+ expect(p.parse("Sprüche 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Sprüche 1:1'")
1283
+ expect(p.parse("Prov 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prov 1:1'")
1284
+ expect(p.parse("Spr 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Spr 1:1'")
1285
+ p.include_apocrypha(false)
1286
+ expect(p.parse("SPRICHWOERTER 1:1").osis()).toEqual("Prov.1.1", "parsing: 'SPRICHWOERTER 1:1'")
1287
+ expect(p.parse("SPRICHWORTER 1:1").osis()).toEqual("Prov.1.1", "parsing: 'SPRICHWORTER 1:1'")
1288
+ expect(p.parse("SPRICHWÖRTER 1:1").osis()).toEqual("Prov.1.1", "parsing: 'SPRICHWÖRTER 1:1'")
1289
+ expect(p.parse("SPRUECHE 1:1").osis()).toEqual("Prov.1.1", "parsing: 'SPRUECHE 1:1'")
1290
+ expect(p.parse("SPRUCHE 1:1").osis()).toEqual("Prov.1.1", "parsing: 'SPRUCHE 1:1'")
1291
+ expect(p.parse("SPRÜCHE 1:1").osis()).toEqual("Prov.1.1", "parsing: 'SPRÜCHE 1:1'")
1292
+ expect(p.parse("PROV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROV 1:1'")
1293
+ expect(p.parse("SPR 1:1").osis()).toEqual("Prov.1.1", "parsing: 'SPR 1:1'")
1294
+ ;
1295
+ return true;
1296
+ });
1297
+ });
1298
+
1299
+ describe("Localized book Eccl (de)", function() {
1300
+ var p;
1301
+ p = {};
1302
+ beforeEach(function() {
1303
+ p = new bcv_parser();
1304
+ p.set_options({
1305
+ book_alone_strategy: "ignore",
1306
+ book_sequence_strategy: "ignore",
1307
+ osis_compaction_strategy: "bc",
1308
+ captive_end_digits_strategy: "delete"
1309
+ });
1310
+ return p.include_apocrypha(true);
1311
+ });
1312
+ return it("should handle book: Eccl (de)", function() {
1313
+
1314
+ expect(p.parse("Ecclesiastes 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Ecclesiastes 1:1'")
1315
+ expect(p.parse("Ekklesiastes 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Ekklesiastes 1:1'")
1316
+ expect(p.parse("Prediger 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Prediger 1:1'")
1317
+ expect(p.parse("Kohelet 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Kohelet 1:1'")
1318
+ expect(p.parse("Eccl 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Eccl 1:1'")
1319
+ expect(p.parse("Pred 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Pred 1:1'")
1320
+ expect(p.parse("Koh 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'Koh 1:1'")
1321
+ p.include_apocrypha(false)
1322
+ expect(p.parse("ECCLESIASTES 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCLESIASTES 1:1'")
1323
+ expect(p.parse("EKKLESIASTES 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'EKKLESIASTES 1:1'")
1324
+ expect(p.parse("PREDIGER 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'PREDIGER 1:1'")
1325
+ expect(p.parse("KOHELET 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'KOHELET 1:1'")
1326
+ expect(p.parse("ECCL 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'ECCL 1:1'")
1327
+ expect(p.parse("PRED 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'PRED 1:1'")
1328
+ expect(p.parse("KOH 1:1").osis()).toEqual("Eccl.1.1", "parsing: 'KOH 1:1'")
1329
+ ;
1330
+ return true;
1331
+ });
1332
+ });
1333
+
1334
+ describe("Localized book SgThree (de)", function() {
1335
+ var p;
1336
+ p = {};
1337
+ beforeEach(function() {
1338
+ p = new bcv_parser();
1339
+ p.set_options({
1340
+ book_alone_strategy: "ignore",
1341
+ book_sequence_strategy: "ignore",
1342
+ osis_compaction_strategy: "bc",
1343
+ captive_end_digits_strategy: "delete"
1344
+ });
1345
+ return p.include_apocrypha(true);
1346
+ });
1347
+ return it("should handle book: SgThree (de)", function() {
1348
+
1349
+ expect(p.parse("Gesang der drei Maenner im Feuerofen 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei Maenner im Feuerofen 1:1'")
1350
+ expect(p.parse("Gesang der drei Manner im Feuerofen 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei Manner im Feuerofen 1:1'")
1351
+ expect(p.parse("Gesang der drei Männer im Feuerofen 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei Männer im Feuerofen 1:1'")
1352
+ expect(p.parse("Gesang der drei im Feuerofen 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei im Feuerofen 1:1'")
1353
+ expect(p.parse("Gesang der drei Maenner 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei Maenner 1:1'")
1354
+ expect(p.parse("Gesang der drei Manner 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei Manner 1:1'")
1355
+ expect(p.parse("Gesang der drei Männer 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei Männer 1:1'")
1356
+ expect(p.parse("Gesang der Drei 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der Drei 1:1'")
1357
+ expect(p.parse("Gesang der drei 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'Gesang der drei 1:1'")
1358
+ expect(p.parse("SgThree 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'SgThree 1:1'")
1359
+ expect(p.parse("L3J 1:1").osis()).toEqual("SgThree.1.1", "parsing: 'L3J 1:1'")
1360
+ ;
1361
+ return true;
1362
+ });
1363
+ });
1364
+
1365
+ describe("Localized book Song (de)", function() {
1366
+ var p;
1367
+ p = {};
1368
+ beforeEach(function() {
1369
+ p = new bcv_parser();
1370
+ p.set_options({
1371
+ book_alone_strategy: "ignore",
1372
+ book_sequence_strategy: "ignore",
1373
+ osis_compaction_strategy: "bc",
1374
+ captive_end_digits_strategy: "delete"
1375
+ });
1376
+ return p.include_apocrypha(true);
1377
+ });
1378
+ return it("should handle book: Song (de)", function() {
1379
+
1380
+ expect(p.parse("Hoheslied Salomonis 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hoheslied Salomonis 1:1'")
1381
+ expect(p.parse("Hohelied Salomonis 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hohelied Salomonis 1:1'")
1382
+ expect(p.parse("Hoheslied Salomos 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hoheslied Salomos 1:1'")
1383
+ expect(p.parse("Hohelied Salomos 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hohelied Salomos 1:1'")
1384
+ expect(p.parse("Hohes Lied 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hohes Lied 1:1'")
1385
+ expect(p.parse("Hoheslied 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hoheslied 1:1'")
1386
+ expect(p.parse("Hohelied 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hohelied 1:1'")
1387
+ expect(p.parse("Song 1:1").osis()).toEqual("Song.1.1", "parsing: 'Song 1:1'")
1388
+ expect(p.parse("Hld 1:1").osis()).toEqual("Song.1.1", "parsing: 'Hld 1:1'")
1389
+ p.include_apocrypha(false)
1390
+ expect(p.parse("HOHESLIED SALOMONIS 1:1").osis()).toEqual("Song.1.1", "parsing: 'HOHESLIED SALOMONIS 1:1'")
1391
+ expect(p.parse("HOHELIED SALOMONIS 1:1").osis()).toEqual("Song.1.1", "parsing: 'HOHELIED SALOMONIS 1:1'")
1392
+ expect(p.parse("HOHESLIED SALOMOS 1:1").osis()).toEqual("Song.1.1", "parsing: 'HOHESLIED SALOMOS 1:1'")
1393
+ expect(p.parse("HOHELIED SALOMOS 1:1").osis()).toEqual("Song.1.1", "parsing: 'HOHELIED SALOMOS 1:1'")
1394
+ expect(p.parse("HOHES LIED 1:1").osis()).toEqual("Song.1.1", "parsing: 'HOHES LIED 1:1'")
1395
+ expect(p.parse("HOHESLIED 1:1").osis()).toEqual("Song.1.1", "parsing: 'HOHESLIED 1:1'")
1396
+ expect(p.parse("HOHELIED 1:1").osis()).toEqual("Song.1.1", "parsing: 'HOHELIED 1:1'")
1397
+ expect(p.parse("SONG 1:1").osis()).toEqual("Song.1.1", "parsing: 'SONG 1:1'")
1398
+ expect(p.parse("HLD 1:1").osis()).toEqual("Song.1.1", "parsing: 'HLD 1:1'")
1399
+ ;
1400
+ return true;
1401
+ });
1402
+ });
1403
+
1404
+ describe("Localized book Jer (de)", function() {
1405
+ var p;
1406
+ p = {};
1407
+ beforeEach(function() {
1408
+ p = new bcv_parser();
1409
+ p.set_options({
1410
+ book_alone_strategy: "ignore",
1411
+ book_sequence_strategy: "ignore",
1412
+ osis_compaction_strategy: "bc",
1413
+ captive_end_digits_strategy: "delete"
1414
+ });
1415
+ return p.include_apocrypha(true);
1416
+ });
1417
+ return it("should handle book: Jer (de)", function() {
1418
+
1419
+ expect(p.parse("Jeremias 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jeremias 1:1'")
1420
+ expect(p.parse("Jeremia 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jeremia 1:1'")
1421
+ expect(p.parse("Jer 1:1").osis()).toEqual("Jer.1.1", "parsing: 'Jer 1:1'")
1422
+ p.include_apocrypha(false)
1423
+ expect(p.parse("JEREMIAS 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JEREMIAS 1:1'")
1424
+ expect(p.parse("JEREMIA 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JEREMIA 1:1'")
1425
+ expect(p.parse("JER 1:1").osis()).toEqual("Jer.1.1", "parsing: 'JER 1:1'")
1426
+ ;
1427
+ return true;
1428
+ });
1429
+ });
1430
+
1431
+ describe("Localized book Ezek (de)", function() {
1432
+ var p;
1433
+ p = {};
1434
+ beforeEach(function() {
1435
+ p = new bcv_parser();
1436
+ p.set_options({
1437
+ book_alone_strategy: "ignore",
1438
+ book_sequence_strategy: "ignore",
1439
+ osis_compaction_strategy: "bc",
1440
+ captive_end_digits_strategy: "delete"
1441
+ });
1442
+ return p.include_apocrypha(true);
1443
+ });
1444
+ return it("should handle book: Ezek (de)", function() {
1445
+
1446
+ expect(p.parse("Ezechiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezechiel 1:1'")
1447
+ expect(p.parse("Hesekiel 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Hesekiel 1:1'")
1448
+ expect(p.parse("Hesek 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Hesek 1:1'")
1449
+ expect(p.parse("Ezek 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ezek 1:1'")
1450
+ expect(p.parse("Hes 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Hes 1:1'")
1451
+ expect(p.parse("Ez 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'Ez 1:1'")
1452
+ p.include_apocrypha(false)
1453
+ expect(p.parse("EZECHIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZECHIEL 1:1'")
1454
+ expect(p.parse("HESEKIEL 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'HESEKIEL 1:1'")
1455
+ expect(p.parse("HESEK 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'HESEK 1:1'")
1456
+ expect(p.parse("EZEK 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZEK 1:1'")
1457
+ expect(p.parse("HES 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'HES 1:1'")
1458
+ expect(p.parse("EZ 1:1").osis()).toEqual("Ezek.1.1", "parsing: 'EZ 1:1'")
1459
+ ;
1460
+ return true;
1461
+ });
1462
+ });
1463
+
1464
+ describe("Localized book Dan (de)", function() {
1465
+ var p;
1466
+ p = {};
1467
+ beforeEach(function() {
1468
+ p = new bcv_parser();
1469
+ p.set_options({
1470
+ book_alone_strategy: "ignore",
1471
+ book_sequence_strategy: "ignore",
1472
+ osis_compaction_strategy: "bc",
1473
+ captive_end_digits_strategy: "delete"
1474
+ });
1475
+ return p.include_apocrypha(true);
1476
+ });
1477
+ return it("should handle book: Dan (de)", function() {
1478
+
1479
+ expect(p.parse("Daniel 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Daniel 1:1'")
1480
+ expect(p.parse("Dan 1:1").osis()).toEqual("Dan.1.1", "parsing: 'Dan 1:1'")
1481
+ p.include_apocrypha(false)
1482
+ expect(p.parse("DANIEL 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DANIEL 1:1'")
1483
+ expect(p.parse("DAN 1:1").osis()).toEqual("Dan.1.1", "parsing: 'DAN 1:1'")
1484
+ ;
1485
+ return true;
1486
+ });
1487
+ });
1488
+
1489
+ describe("Localized book Hos (de)", function() {
1490
+ var p;
1491
+ p = {};
1492
+ beforeEach(function() {
1493
+ p = new bcv_parser();
1494
+ p.set_options({
1495
+ book_alone_strategy: "ignore",
1496
+ book_sequence_strategy: "ignore",
1497
+ osis_compaction_strategy: "bc",
1498
+ captive_end_digits_strategy: "delete"
1499
+ });
1500
+ return p.include_apocrypha(true);
1501
+ });
1502
+ return it("should handle book: Hos (de)", function() {
1503
+
1504
+ expect(p.parse("Hosea 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hosea 1:1'")
1505
+ expect(p.parse("Hos 1:1").osis()).toEqual("Hos.1.1", "parsing: 'Hos 1:1'")
1506
+ p.include_apocrypha(false)
1507
+ expect(p.parse("HOSEA 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOSEA 1:1'")
1508
+ expect(p.parse("HOS 1:1").osis()).toEqual("Hos.1.1", "parsing: 'HOS 1:1'")
1509
+ ;
1510
+ return true;
1511
+ });
1512
+ });
1513
+
1514
+ describe("Localized book Joel (de)", function() {
1515
+ var p;
1516
+ p = {};
1517
+ beforeEach(function() {
1518
+ p = new bcv_parser();
1519
+ p.set_options({
1520
+ book_alone_strategy: "ignore",
1521
+ book_sequence_strategy: "ignore",
1522
+ osis_compaction_strategy: "bc",
1523
+ captive_end_digits_strategy: "delete"
1524
+ });
1525
+ return p.include_apocrypha(true);
1526
+ });
1527
+ return it("should handle book: Joel (de)", function() {
1528
+
1529
+ expect(p.parse("Joel 1:1").osis()).toEqual("Joel.1.1", "parsing: 'Joel 1:1'")
1530
+ p.include_apocrypha(false)
1531
+ expect(p.parse("JOEL 1:1").osis()).toEqual("Joel.1.1", "parsing: 'JOEL 1:1'")
1532
+ ;
1533
+ return true;
1534
+ });
1535
+ });
1536
+
1537
+ describe("Localized book Amos (de)", function() {
1538
+ var p;
1539
+ p = {};
1540
+ beforeEach(function() {
1541
+ p = new bcv_parser();
1542
+ p.set_options({
1543
+ book_alone_strategy: "ignore",
1544
+ book_sequence_strategy: "ignore",
1545
+ osis_compaction_strategy: "bc",
1546
+ captive_end_digits_strategy: "delete"
1547
+ });
1548
+ return p.include_apocrypha(true);
1549
+ });
1550
+ return it("should handle book: Amos (de)", function() {
1551
+
1552
+ expect(p.parse("Amos 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Amos 1:1'")
1553
+ expect(p.parse("Am 1:1").osis()).toEqual("Amos.1.1", "parsing: 'Am 1:1'")
1554
+ p.include_apocrypha(false)
1555
+ expect(p.parse("AMOS 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AMOS 1:1'")
1556
+ expect(p.parse("AM 1:1").osis()).toEqual("Amos.1.1", "parsing: 'AM 1:1'")
1557
+ ;
1558
+ return true;
1559
+ });
1560
+ });
1561
+
1562
+ describe("Localized book Obad (de)", function() {
1563
+ var p;
1564
+ p = {};
1565
+ beforeEach(function() {
1566
+ p = new bcv_parser();
1567
+ p.set_options({
1568
+ book_alone_strategy: "ignore",
1569
+ book_sequence_strategy: "ignore",
1570
+ osis_compaction_strategy: "bc",
1571
+ captive_end_digits_strategy: "delete"
1572
+ });
1573
+ return p.include_apocrypha(true);
1574
+ });
1575
+ return it("should handle book: Obad (de)", function() {
1576
+
1577
+ expect(p.parse("Abdias 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Abdias 1:1'")
1578
+ expect(p.parse("Obadja 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obadja 1:1'")
1579
+ expect(p.parse("Obad 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obad 1:1'")
1580
+ expect(p.parse("Obd 1:1").osis()).toEqual("Obad.1.1", "parsing: 'Obd 1:1'")
1581
+ p.include_apocrypha(false)
1582
+ expect(p.parse("ABDIAS 1:1").osis()).toEqual("Obad.1.1", "parsing: 'ABDIAS 1:1'")
1583
+ expect(p.parse("OBADJA 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBADJA 1:1'")
1584
+ expect(p.parse("OBAD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBAD 1:1'")
1585
+ expect(p.parse("OBD 1:1").osis()).toEqual("Obad.1.1", "parsing: 'OBD 1:1'")
1586
+ ;
1587
+ return true;
1588
+ });
1589
+ });
1590
+
1591
+ describe("Localized book Jonah (de)", function() {
1592
+ var p;
1593
+ p = {};
1594
+ beforeEach(function() {
1595
+ p = new bcv_parser();
1596
+ p.set_options({
1597
+ book_alone_strategy: "ignore",
1598
+ book_sequence_strategy: "ignore",
1599
+ osis_compaction_strategy: "bc",
1600
+ captive_end_digits_strategy: "delete"
1601
+ });
1602
+ return p.include_apocrypha(true);
1603
+ });
1604
+ return it("should handle book: Jonah (de)", function() {
1605
+
1606
+ expect(p.parse("Jonah 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonah 1:1'")
1607
+ expect(p.parse("Jonas 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jonas 1:1'")
1608
+ expect(p.parse("Jona 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'Jona 1:1'")
1609
+ p.include_apocrypha(false)
1610
+ expect(p.parse("JONAH 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAH 1:1'")
1611
+ expect(p.parse("JONAS 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONAS 1:1'")
1612
+ expect(p.parse("JONA 1:1").osis()).toEqual("Jonah.1.1", "parsing: 'JONA 1:1'")
1613
+ ;
1614
+ return true;
1615
+ });
1616
+ });
1617
+
1618
+ describe("Localized book Mic (de)", function() {
1619
+ var p;
1620
+ p = {};
1621
+ beforeEach(function() {
1622
+ p = new bcv_parser();
1623
+ p.set_options({
1624
+ book_alone_strategy: "ignore",
1625
+ book_sequence_strategy: "ignore",
1626
+ osis_compaction_strategy: "bc",
1627
+ captive_end_digits_strategy: "delete"
1628
+ });
1629
+ return p.include_apocrypha(true);
1630
+ });
1631
+ return it("should handle book: Mic (de)", function() {
1632
+
1633
+ expect(p.parse("Michaeas 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Michaeas 1:1'")
1634
+ expect(p.parse("Michaas 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Michaas 1:1'")
1635
+ expect(p.parse("Michäas 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Michäas 1:1'")
1636
+ expect(p.parse("Micha 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Micha 1:1'")
1637
+ expect(p.parse("Mich 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mich 1:1'")
1638
+ expect(p.parse("Mic 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mic 1:1'")
1639
+ expect(p.parse("Mi 1:1").osis()).toEqual("Mic.1.1", "parsing: 'Mi 1:1'")
1640
+ p.include_apocrypha(false)
1641
+ expect(p.parse("MICHAEAS 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICHAEAS 1:1'")
1642
+ expect(p.parse("MICHAAS 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICHAAS 1:1'")
1643
+ expect(p.parse("MICHÄAS 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICHÄAS 1:1'")
1644
+ expect(p.parse("MICHA 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICHA 1:1'")
1645
+ expect(p.parse("MICH 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MICH 1:1'")
1646
+ expect(p.parse("MIC 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MIC 1:1'")
1647
+ expect(p.parse("MI 1:1").osis()).toEqual("Mic.1.1", "parsing: 'MI 1:1'")
1648
+ ;
1649
+ return true;
1650
+ });
1651
+ });
1652
+
1653
+ describe("Localized book Nah (de)", function() {
1654
+ var p;
1655
+ p = {};
1656
+ beforeEach(function() {
1657
+ p = new bcv_parser();
1658
+ p.set_options({
1659
+ book_alone_strategy: "ignore",
1660
+ book_sequence_strategy: "ignore",
1661
+ osis_compaction_strategy: "bc",
1662
+ captive_end_digits_strategy: "delete"
1663
+ });
1664
+ return p.include_apocrypha(true);
1665
+ });
1666
+ return it("should handle book: Nah (de)", function() {
1667
+
1668
+ expect(p.parse("Nahum 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nahum 1:1'")
1669
+ expect(p.parse("Nah 1:1").osis()).toEqual("Nah.1.1", "parsing: 'Nah 1:1'")
1670
+ p.include_apocrypha(false)
1671
+ expect(p.parse("NAHUM 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAHUM 1:1'")
1672
+ expect(p.parse("NAH 1:1").osis()).toEqual("Nah.1.1", "parsing: 'NAH 1:1'")
1673
+ ;
1674
+ return true;
1675
+ });
1676
+ });
1677
+
1678
+ describe("Localized book Hab (de)", function() {
1679
+ var p;
1680
+ p = {};
1681
+ beforeEach(function() {
1682
+ p = new bcv_parser();
1683
+ p.set_options({
1684
+ book_alone_strategy: "ignore",
1685
+ book_sequence_strategy: "ignore",
1686
+ osis_compaction_strategy: "bc",
1687
+ captive_end_digits_strategy: "delete"
1688
+ });
1689
+ return p.include_apocrypha(true);
1690
+ });
1691
+ return it("should handle book: Hab (de)", function() {
1692
+
1693
+ expect(p.parse("Habakuk 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Habakuk 1:1'")
1694
+ expect(p.parse("Hab 1:1").osis()).toEqual("Hab.1.1", "parsing: 'Hab 1:1'")
1695
+ p.include_apocrypha(false)
1696
+ expect(p.parse("HABAKUK 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HABAKUK 1:1'")
1697
+ expect(p.parse("HAB 1:1").osis()).toEqual("Hab.1.1", "parsing: 'HAB 1:1'")
1698
+ ;
1699
+ return true;
1700
+ });
1701
+ });
1702
+
1703
+ describe("Localized book Zeph (de)", function() {
1704
+ var p;
1705
+ p = {};
1706
+ beforeEach(function() {
1707
+ p = new bcv_parser();
1708
+ p.set_options({
1709
+ book_alone_strategy: "ignore",
1710
+ book_sequence_strategy: "ignore",
1711
+ osis_compaction_strategy: "bc",
1712
+ captive_end_digits_strategy: "delete"
1713
+ });
1714
+ return p.include_apocrypha(true);
1715
+ });
1716
+ return it("should handle book: Zeph (de)", function() {
1717
+
1718
+ expect(p.parse("Zephanja 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zephanja 1:1'")
1719
+ expect(p.parse("Zefanja 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zefanja 1:1'")
1720
+ expect(p.parse("Zeph 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zeph 1:1'")
1721
+ expect(p.parse("Zef 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'Zef 1:1'")
1722
+ p.include_apocrypha(false)
1723
+ expect(p.parse("ZEPHANJA 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEPHANJA 1:1'")
1724
+ expect(p.parse("ZEFANJA 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEFANJA 1:1'")
1725
+ expect(p.parse("ZEPH 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEPH 1:1'")
1726
+ expect(p.parse("ZEF 1:1").osis()).toEqual("Zeph.1.1", "parsing: 'ZEF 1:1'")
1727
+ ;
1728
+ return true;
1729
+ });
1730
+ });
1731
+
1732
+ describe("Localized book Hag (de)", function() {
1733
+ var p;
1734
+ p = {};
1735
+ beforeEach(function() {
1736
+ p = new bcv_parser();
1737
+ p.set_options({
1738
+ book_alone_strategy: "ignore",
1739
+ book_sequence_strategy: "ignore",
1740
+ osis_compaction_strategy: "bc",
1741
+ captive_end_digits_strategy: "delete"
1742
+ });
1743
+ return p.include_apocrypha(true);
1744
+ });
1745
+ return it("should handle book: Hag (de)", function() {
1746
+
1747
+ expect(p.parse("Haggai 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Haggai 1:1'")
1748
+ expect(p.parse("Hagg 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hagg 1:1'")
1749
+ expect(p.parse("Hag 1:1").osis()).toEqual("Hag.1.1", "parsing: 'Hag 1:1'")
1750
+ p.include_apocrypha(false)
1751
+ expect(p.parse("HAGGAI 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAGGAI 1:1'")
1752
+ expect(p.parse("HAGG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAGG 1:1'")
1753
+ expect(p.parse("HAG 1:1").osis()).toEqual("Hag.1.1", "parsing: 'HAG 1:1'")
1754
+ ;
1755
+ return true;
1756
+ });
1757
+ });
1758
+
1759
+ describe("Localized book Zech (de)", function() {
1760
+ var p;
1761
+ p = {};
1762
+ beforeEach(function() {
1763
+ p = new bcv_parser();
1764
+ p.set_options({
1765
+ book_alone_strategy: "ignore",
1766
+ book_sequence_strategy: "ignore",
1767
+ osis_compaction_strategy: "bc",
1768
+ captive_end_digits_strategy: "delete"
1769
+ });
1770
+ return p.include_apocrypha(true);
1771
+ });
1772
+ return it("should handle book: Zech (de)", function() {
1773
+
1774
+ expect(p.parse("Zacharias 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zacharias 1:1'")
1775
+ expect(p.parse("Sacharja 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Sacharja 1:1'")
1776
+ expect(p.parse("Sach 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Sach 1:1'")
1777
+ expect(p.parse("Zech 1:1").osis()).toEqual("Zech.1.1", "parsing: 'Zech 1:1'")
1778
+ p.include_apocrypha(false)
1779
+ expect(p.parse("ZACHARIAS 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZACHARIAS 1:1'")
1780
+ expect(p.parse("SACHARJA 1:1").osis()).toEqual("Zech.1.1", "parsing: 'SACHARJA 1:1'")
1781
+ expect(p.parse("SACH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'SACH 1:1'")
1782
+ expect(p.parse("ZECH 1:1").osis()).toEqual("Zech.1.1", "parsing: 'ZECH 1:1'")
1783
+ ;
1784
+ return true;
1785
+ });
1786
+ });
1787
+
1788
+ describe("Localized book Mal (de)", function() {
1789
+ var p;
1790
+ p = {};
1791
+ beforeEach(function() {
1792
+ p = new bcv_parser();
1793
+ p.set_options({
1794
+ book_alone_strategy: "ignore",
1795
+ book_sequence_strategy: "ignore",
1796
+ osis_compaction_strategy: "bc",
1797
+ captive_end_digits_strategy: "delete"
1798
+ });
1799
+ return p.include_apocrypha(true);
1800
+ });
1801
+ return it("should handle book: Mal (de)", function() {
1802
+
1803
+ expect(p.parse("Malachias 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Malachias 1:1'")
1804
+ expect(p.parse("Maleachi 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Maleachi 1:1'")
1805
+ expect(p.parse("Mal 1:1").osis()).toEqual("Mal.1.1", "parsing: 'Mal 1:1'")
1806
+ p.include_apocrypha(false)
1807
+ expect(p.parse("MALACHIAS 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALACHIAS 1:1'")
1808
+ expect(p.parse("MALEACHI 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MALEACHI 1:1'")
1809
+ expect(p.parse("MAL 1:1").osis()).toEqual("Mal.1.1", "parsing: 'MAL 1:1'")
1810
+ ;
1811
+ return true;
1812
+ });
1813
+ });
1814
+
1815
+ describe("Localized book Matt (de)", function() {
1816
+ var p;
1817
+ p = {};
1818
+ beforeEach(function() {
1819
+ p = new bcv_parser();
1820
+ p.set_options({
1821
+ book_alone_strategy: "ignore",
1822
+ book_sequence_strategy: "ignore",
1823
+ osis_compaction_strategy: "bc",
1824
+ captive_end_digits_strategy: "delete"
1825
+ });
1826
+ return p.include_apocrypha(true);
1827
+ });
1828
+ return it("should handle book: Matt (de)", function() {
1829
+
1830
+ expect(p.parse("Das Evangelium nach Matthaeus 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Das Evangelium nach Matthaeus 1:1'")
1831
+ expect(p.parse("Das Evangelium nach Matthaus 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Das Evangelium nach Matthaus 1:1'")
1832
+ expect(p.parse("Das Evangelium nach Matthäus 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Das Evangelium nach Matthäus 1:1'")
1833
+ expect(p.parse(" Evangelium nach Matthaeus 1:1").osis()).toEqual("Matt.1.1", "parsing: ' Evangelium nach Matthaeus 1:1'")
1834
+ expect(p.parse(" Evangelium nach Matthaus 1:1").osis()).toEqual("Matt.1.1", "parsing: ' Evangelium nach Matthaus 1:1'")
1835
+ expect(p.parse(" Evangelium nach Matthäus 1:1").osis()).toEqual("Matt.1.1", "parsing: ' Evangelium nach Matthäus 1:1'")
1836
+ expect(p.parse("Matthaeusevangelium 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matthaeusevangelium 1:1'")
1837
+ expect(p.parse("Matthausevangelium 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matthausevangelium 1:1'")
1838
+ expect(p.parse("Matthäusevangelium 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matthäusevangelium 1:1'")
1839
+ expect(p.parse("Matthaeus 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matthaeus 1:1'")
1840
+ expect(p.parse("Matthaus 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matthaus 1:1'")
1841
+ expect(p.parse("Matthäus 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matthäus 1:1'")
1842
+ expect(p.parse("Matt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Matt 1:1'")
1843
+ expect(p.parse("Mt 1:1").osis()).toEqual("Matt.1.1", "parsing: 'Mt 1:1'")
1844
+ p.include_apocrypha(false)
1845
+ expect(p.parse("DAS EVANGELIUM NACH MATTHAEUS 1:1").osis()).toEqual("Matt.1.1", "parsing: 'DAS EVANGELIUM NACH MATTHAEUS 1:1'")
1846
+ expect(p.parse("DAS EVANGELIUM NACH MATTHAUS 1:1").osis()).toEqual("Matt.1.1", "parsing: 'DAS EVANGELIUM NACH MATTHAUS 1:1'")
1847
+ expect(p.parse("DAS EVANGELIUM NACH MATTHÄUS 1:1").osis()).toEqual("Matt.1.1", "parsing: 'DAS EVANGELIUM NACH MATTHÄUS 1:1'")
1848
+ expect(p.parse(" EVANGELIUM NACH MATTHAEUS 1:1").osis()).toEqual("Matt.1.1", "parsing: ' EVANGELIUM NACH MATTHAEUS 1:1'")
1849
+ expect(p.parse(" EVANGELIUM NACH MATTHAUS 1:1").osis()).toEqual("Matt.1.1", "parsing: ' EVANGELIUM NACH MATTHAUS 1:1'")
1850
+ expect(p.parse(" EVANGELIUM NACH MATTHÄUS 1:1").osis()).toEqual("Matt.1.1", "parsing: ' EVANGELIUM NACH MATTHÄUS 1:1'")
1851
+ expect(p.parse("MATTHAEUSEVANGELIUM 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTHAEUSEVANGELIUM 1:1'")
1852
+ expect(p.parse("MATTHAUSEVANGELIUM 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTHAUSEVANGELIUM 1:1'")
1853
+ expect(p.parse("MATTHÄUSEVANGELIUM 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTHÄUSEVANGELIUM 1:1'")
1854
+ expect(p.parse("MATTHAEUS 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTHAEUS 1:1'")
1855
+ expect(p.parse("MATTHAUS 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTHAUS 1:1'")
1856
+ expect(p.parse("MATTHÄUS 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATTHÄUS 1:1'")
1857
+ expect(p.parse("MATT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MATT 1:1'")
1858
+ expect(p.parse("MT 1:1").osis()).toEqual("Matt.1.1", "parsing: 'MT 1:1'")
1859
+ ;
1860
+ return true;
1861
+ });
1862
+ });
1863
+
1864
+ describe("Localized book Mark (de)", function() {
1865
+ var p;
1866
+ p = {};
1867
+ beforeEach(function() {
1868
+ p = new bcv_parser();
1869
+ p.set_options({
1870
+ book_alone_strategy: "ignore",
1871
+ book_sequence_strategy: "ignore",
1872
+ osis_compaction_strategy: "bc",
1873
+ captive_end_digits_strategy: "delete"
1874
+ });
1875
+ return p.include_apocrypha(true);
1876
+ });
1877
+ return it("should handle book: Mark (de)", function() {
1878
+
1879
+ expect(p.parse("Das Evangelium nach Markus 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Das Evangelium nach Markus 1:1'")
1880
+ expect(p.parse(" Evangelium nach Markus 1:1").osis()).toEqual("Mark.1.1", "parsing: ' Evangelium nach Markus 1:1'")
1881
+ expect(p.parse("Markusevangelium 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Markusevangelium 1:1'")
1882
+ expect(p.parse("Markus 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Markus 1:1'")
1883
+ expect(p.parse("Mark 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mark 1:1'")
1884
+ expect(p.parse("Mk 1:1").osis()).toEqual("Mark.1.1", "parsing: 'Mk 1:1'")
1885
+ p.include_apocrypha(false)
1886
+ expect(p.parse("DAS EVANGELIUM NACH MARKUS 1:1").osis()).toEqual("Mark.1.1", "parsing: 'DAS EVANGELIUM NACH MARKUS 1:1'")
1887
+ expect(p.parse(" EVANGELIUM NACH MARKUS 1:1").osis()).toEqual("Mark.1.1", "parsing: ' EVANGELIUM NACH MARKUS 1:1'")
1888
+ expect(p.parse("MARKUSEVANGELIUM 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARKUSEVANGELIUM 1:1'")
1889
+ expect(p.parse("MARKUS 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARKUS 1:1'")
1890
+ expect(p.parse("MARK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MARK 1:1'")
1891
+ expect(p.parse("MK 1:1").osis()).toEqual("Mark.1.1", "parsing: 'MK 1:1'")
1892
+ ;
1893
+ return true;
1894
+ });
1895
+ });
1896
+
1897
+ describe("Localized book Luke (de)", function() {
1898
+ var p;
1899
+ p = {};
1900
+ beforeEach(function() {
1901
+ p = new bcv_parser();
1902
+ p.set_options({
1903
+ book_alone_strategy: "ignore",
1904
+ book_sequence_strategy: "ignore",
1905
+ osis_compaction_strategy: "bc",
1906
+ captive_end_digits_strategy: "delete"
1907
+ });
1908
+ return p.include_apocrypha(true);
1909
+ });
1910
+ return it("should handle book: Luke (de)", function() {
1911
+
1912
+ expect(p.parse("Das Evangelium nach Lukas 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Das Evangelium nach Lukas 1:1'")
1913
+ expect(p.parse(" Evangelium nach Lukas 1:1").osis()).toEqual("Luke.1.1", "parsing: ' Evangelium nach Lukas 1:1'")
1914
+ expect(p.parse("Lukasevangelium 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Lukasevangelium 1:1'")
1915
+ expect(p.parse("Lukas 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Lukas 1:1'")
1916
+ expect(p.parse("Luke 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luke 1:1'")
1917
+ expect(p.parse("Luk 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Luk 1:1'")
1918
+ expect(p.parse("Lk 1:1").osis()).toEqual("Luke.1.1", "parsing: 'Lk 1:1'")
1919
+ p.include_apocrypha(false)
1920
+ expect(p.parse("DAS EVANGELIUM NACH LUKAS 1:1").osis()).toEqual("Luke.1.1", "parsing: 'DAS EVANGELIUM NACH LUKAS 1:1'")
1921
+ expect(p.parse(" EVANGELIUM NACH LUKAS 1:1").osis()).toEqual("Luke.1.1", "parsing: ' EVANGELIUM NACH LUKAS 1:1'")
1922
+ expect(p.parse("LUKASEVANGELIUM 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKASEVANGELIUM 1:1'")
1923
+ expect(p.parse("LUKAS 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKAS 1:1'")
1924
+ expect(p.parse("LUKE 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUKE 1:1'")
1925
+ expect(p.parse("LUK 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LUK 1:1'")
1926
+ expect(p.parse("LK 1:1").osis()).toEqual("Luke.1.1", "parsing: 'LK 1:1'")
1927
+ ;
1928
+ return true;
1929
+ });
1930
+ });
1931
+
1932
+ describe("Localized book 1John (de)", function() {
1933
+ var p;
1934
+ p = {};
1935
+ beforeEach(function() {
1936
+ p = new bcv_parser();
1937
+ p.set_options({
1938
+ book_alone_strategy: "ignore",
1939
+ book_sequence_strategy: "ignore",
1940
+ osis_compaction_strategy: "bc",
1941
+ captive_end_digits_strategy: "delete"
1942
+ });
1943
+ return p.include_apocrypha(true);
1944
+ });
1945
+ return it("should handle book: 1John (de)", function() {
1946
+
1947
+ expect(p.parse("Ersten Johannes 1:1").osis()).toEqual("1John.1.1", "parsing: 'Ersten Johannes 1:1'")
1948
+ expect(p.parse("Erster Johannes 1:1").osis()).toEqual("1John.1.1", "parsing: 'Erster Johannes 1:1'")
1949
+ expect(p.parse("Erstes Johannes 1:1").osis()).toEqual("1John.1.1", "parsing: 'Erstes Johannes 1:1'")
1950
+ expect(p.parse("Erste Johannes 1:1").osis()).toEqual("1John.1.1", "parsing: 'Erste Johannes 1:1'")
1951
+ expect(p.parse("1. Johannes 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Johannes 1:1'")
1952
+ expect(p.parse("1 Johannes 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Johannes 1:1'")
1953
+ expect(p.parse("1. Joh 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Joh 1:1'")
1954
+ expect(p.parse("1 Joh 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Joh 1:1'")
1955
+ expect(p.parse("1. Jo 1:1").osis()).toEqual("1John.1.1", "parsing: '1. Jo 1:1'")
1956
+ expect(p.parse("1John 1:1").osis()).toEqual("1John.1.1", "parsing: '1John 1:1'")
1957
+ expect(p.parse("1 Jo 1:1").osis()).toEqual("1John.1.1", "parsing: '1 Jo 1:1'")
1958
+ p.include_apocrypha(false)
1959
+ expect(p.parse("ERSTEN JOHANNES 1:1").osis()).toEqual("1John.1.1", "parsing: 'ERSTEN JOHANNES 1:1'")
1960
+ expect(p.parse("ERSTER JOHANNES 1:1").osis()).toEqual("1John.1.1", "parsing: 'ERSTER JOHANNES 1:1'")
1961
+ expect(p.parse("ERSTES JOHANNES 1:1").osis()).toEqual("1John.1.1", "parsing: 'ERSTES JOHANNES 1:1'")
1962
+ expect(p.parse("ERSTE JOHANNES 1:1").osis()).toEqual("1John.1.1", "parsing: 'ERSTE JOHANNES 1:1'")
1963
+ expect(p.parse("1. JOHANNES 1:1").osis()).toEqual("1John.1.1", "parsing: '1. JOHANNES 1:1'")
1964
+ expect(p.parse("1 JOHANNES 1:1").osis()).toEqual("1John.1.1", "parsing: '1 JOHANNES 1:1'")
1965
+ expect(p.parse("1. JOH 1:1").osis()).toEqual("1John.1.1", "parsing: '1. JOH 1:1'")
1966
+ expect(p.parse("1 JOH 1:1").osis()).toEqual("1John.1.1", "parsing: '1 JOH 1:1'")
1967
+ expect(p.parse("1. JO 1:1").osis()).toEqual("1John.1.1", "parsing: '1. JO 1:1'")
1968
+ expect(p.parse("1JOHN 1:1").osis()).toEqual("1John.1.1", "parsing: '1JOHN 1:1'")
1969
+ expect(p.parse("1 JO 1:1").osis()).toEqual("1John.1.1", "parsing: '1 JO 1:1'")
1970
+ ;
1971
+ return true;
1972
+ });
1973
+ });
1974
+
1975
+ describe("Localized book 2John (de)", function() {
1976
+ var p;
1977
+ p = {};
1978
+ beforeEach(function() {
1979
+ p = new bcv_parser();
1980
+ p.set_options({
1981
+ book_alone_strategy: "ignore",
1982
+ book_sequence_strategy: "ignore",
1983
+ osis_compaction_strategy: "bc",
1984
+ captive_end_digits_strategy: "delete"
1985
+ });
1986
+ return p.include_apocrypha(true);
1987
+ });
1988
+ return it("should handle book: 2John (de)", function() {
1989
+
1990
+ expect(p.parse("Zweiten Johannes 1:1").osis()).toEqual("2John.1.1", "parsing: 'Zweiten Johannes 1:1'")
1991
+ expect(p.parse("Zweiter Johannes 1:1").osis()).toEqual("2John.1.1", "parsing: 'Zweiter Johannes 1:1'")
1992
+ expect(p.parse("Zweites Johannes 1:1").osis()).toEqual("2John.1.1", "parsing: 'Zweites Johannes 1:1'")
1993
+ expect(p.parse("Zweite Johannes 1:1").osis()).toEqual("2John.1.1", "parsing: 'Zweite Johannes 1:1'")
1994
+ expect(p.parse("2. Johannes 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Johannes 1:1'")
1995
+ expect(p.parse("2 Johannes 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Johannes 1:1'")
1996
+ expect(p.parse("2. Joh 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Joh 1:1'")
1997
+ expect(p.parse("2 Joh 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Joh 1:1'")
1998
+ expect(p.parse("2. Jo 1:1").osis()).toEqual("2John.1.1", "parsing: '2. Jo 1:1'")
1999
+ expect(p.parse("2John 1:1").osis()).toEqual("2John.1.1", "parsing: '2John 1:1'")
2000
+ expect(p.parse("2 Jo 1:1").osis()).toEqual("2John.1.1", "parsing: '2 Jo 1:1'")
2001
+ p.include_apocrypha(false)
2002
+ expect(p.parse("ZWEITEN JOHANNES 1:1").osis()).toEqual("2John.1.1", "parsing: 'ZWEITEN JOHANNES 1:1'")
2003
+ expect(p.parse("ZWEITER JOHANNES 1:1").osis()).toEqual("2John.1.1", "parsing: 'ZWEITER JOHANNES 1:1'")
2004
+ expect(p.parse("ZWEITES JOHANNES 1:1").osis()).toEqual("2John.1.1", "parsing: 'ZWEITES JOHANNES 1:1'")
2005
+ expect(p.parse("ZWEITE JOHANNES 1:1").osis()).toEqual("2John.1.1", "parsing: 'ZWEITE JOHANNES 1:1'")
2006
+ expect(p.parse("2. JOHANNES 1:1").osis()).toEqual("2John.1.1", "parsing: '2. JOHANNES 1:1'")
2007
+ expect(p.parse("2 JOHANNES 1:1").osis()).toEqual("2John.1.1", "parsing: '2 JOHANNES 1:1'")
2008
+ expect(p.parse("2. JOH 1:1").osis()).toEqual("2John.1.1", "parsing: '2. JOH 1:1'")
2009
+ expect(p.parse("2 JOH 1:1").osis()).toEqual("2John.1.1", "parsing: '2 JOH 1:1'")
2010
+ expect(p.parse("2. JO 1:1").osis()).toEqual("2John.1.1", "parsing: '2. JO 1:1'")
2011
+ expect(p.parse("2JOHN 1:1").osis()).toEqual("2John.1.1", "parsing: '2JOHN 1:1'")
2012
+ expect(p.parse("2 JO 1:1").osis()).toEqual("2John.1.1", "parsing: '2 JO 1:1'")
2013
+ ;
2014
+ return true;
2015
+ });
2016
+ });
2017
+
2018
+ describe("Localized book 3John (de)", function() {
2019
+ var p;
2020
+ p = {};
2021
+ beforeEach(function() {
2022
+ p = new bcv_parser();
2023
+ p.set_options({
2024
+ book_alone_strategy: "ignore",
2025
+ book_sequence_strategy: "ignore",
2026
+ osis_compaction_strategy: "bc",
2027
+ captive_end_digits_strategy: "delete"
2028
+ });
2029
+ return p.include_apocrypha(true);
2030
+ });
2031
+ return it("should handle book: 3John (de)", function() {
2032
+
2033
+ expect(p.parse("Dritten Johannes 1:1").osis()).toEqual("3John.1.1", "parsing: 'Dritten Johannes 1:1'")
2034
+ expect(p.parse("Dritter Johannes 1:1").osis()).toEqual("3John.1.1", "parsing: 'Dritter Johannes 1:1'")
2035
+ expect(p.parse("Drittes Johannes 1:1").osis()).toEqual("3John.1.1", "parsing: 'Drittes Johannes 1:1'")
2036
+ expect(p.parse("Dritte Johannes 1:1").osis()).toEqual("3John.1.1", "parsing: 'Dritte Johannes 1:1'")
2037
+ expect(p.parse("3. Johannes 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Johannes 1:1'")
2038
+ expect(p.parse("3 Johannes 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Johannes 1:1'")
2039
+ expect(p.parse("3. Joh 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Joh 1:1'")
2040
+ expect(p.parse("3 Joh 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Joh 1:1'")
2041
+ expect(p.parse("3. Jo 1:1").osis()).toEqual("3John.1.1", "parsing: '3. Jo 1:1'")
2042
+ expect(p.parse("3John 1:1").osis()).toEqual("3John.1.1", "parsing: '3John 1:1'")
2043
+ expect(p.parse("3 Jo 1:1").osis()).toEqual("3John.1.1", "parsing: '3 Jo 1:1'")
2044
+ p.include_apocrypha(false)
2045
+ expect(p.parse("DRITTEN JOHANNES 1:1").osis()).toEqual("3John.1.1", "parsing: 'DRITTEN JOHANNES 1:1'")
2046
+ expect(p.parse("DRITTER JOHANNES 1:1").osis()).toEqual("3John.1.1", "parsing: 'DRITTER JOHANNES 1:1'")
2047
+ expect(p.parse("DRITTES JOHANNES 1:1").osis()).toEqual("3John.1.1", "parsing: 'DRITTES JOHANNES 1:1'")
2048
+ expect(p.parse("DRITTE JOHANNES 1:1").osis()).toEqual("3John.1.1", "parsing: 'DRITTE JOHANNES 1:1'")
2049
+ expect(p.parse("3. JOHANNES 1:1").osis()).toEqual("3John.1.1", "parsing: '3. JOHANNES 1:1'")
2050
+ expect(p.parse("3 JOHANNES 1:1").osis()).toEqual("3John.1.1", "parsing: '3 JOHANNES 1:1'")
2051
+ expect(p.parse("3. JOH 1:1").osis()).toEqual("3John.1.1", "parsing: '3. JOH 1:1'")
2052
+ expect(p.parse("3 JOH 1:1").osis()).toEqual("3John.1.1", "parsing: '3 JOH 1:1'")
2053
+ expect(p.parse("3. JO 1:1").osis()).toEqual("3John.1.1", "parsing: '3. JO 1:1'")
2054
+ expect(p.parse("3JOHN 1:1").osis()).toEqual("3John.1.1", "parsing: '3JOHN 1:1'")
2055
+ expect(p.parse("3 JO 1:1").osis()).toEqual("3John.1.1", "parsing: '3 JO 1:1'")
2056
+ ;
2057
+ return true;
2058
+ });
2059
+ });
2060
+
2061
+ describe("Localized book John (de)", function() {
2062
+ var p;
2063
+ p = {};
2064
+ beforeEach(function() {
2065
+ p = new bcv_parser();
2066
+ p.set_options({
2067
+ book_alone_strategy: "ignore",
2068
+ book_sequence_strategy: "ignore",
2069
+ osis_compaction_strategy: "bc",
2070
+ captive_end_digits_strategy: "delete"
2071
+ });
2072
+ return p.include_apocrypha(true);
2073
+ });
2074
+ return it("should handle book: John (de)", function() {
2075
+
2076
+ expect(p.parse("Das Evangelium nach Johannes 1:1").osis()).toEqual("John.1.1", "parsing: 'Das Evangelium nach Johannes 1:1'")
2077
+ expect(p.parse(" Evangelium nach Johannes 1:1").osis()).toEqual("John.1.1", "parsing: ' Evangelium nach Johannes 1:1'")
2078
+ expect(p.parse("Johannesevangelium 1:1").osis()).toEqual("John.1.1", "parsing: 'Johannesevangelium 1:1'")
2079
+ expect(p.parse("Johannes 1:1").osis()).toEqual("John.1.1", "parsing: 'Johannes 1:1'")
2080
+ expect(p.parse("John 1:1").osis()).toEqual("John.1.1", "parsing: 'John 1:1'")
2081
+ expect(p.parse("Joh 1:1").osis()).toEqual("John.1.1", "parsing: 'Joh 1:1'")
2082
+ p.include_apocrypha(false)
2083
+ expect(p.parse("DAS EVANGELIUM NACH JOHANNES 1:1").osis()).toEqual("John.1.1", "parsing: 'DAS EVANGELIUM NACH JOHANNES 1:1'")
2084
+ expect(p.parse(" EVANGELIUM NACH JOHANNES 1:1").osis()).toEqual("John.1.1", "parsing: ' EVANGELIUM NACH JOHANNES 1:1'")
2085
+ expect(p.parse("JOHANNESEVANGELIUM 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHANNESEVANGELIUM 1:1'")
2086
+ expect(p.parse("JOHANNES 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHANNES 1:1'")
2087
+ expect(p.parse("JOHN 1:1").osis()).toEqual("John.1.1", "parsing: 'JOHN 1:1'")
2088
+ expect(p.parse("JOH 1:1").osis()).toEqual("John.1.1", "parsing: 'JOH 1:1'")
2089
+ ;
2090
+ return true;
2091
+ });
2092
+ });
2093
+
2094
+ describe("Localized book Acts (de)", function() {
2095
+ var p;
2096
+ p = {};
2097
+ beforeEach(function() {
2098
+ p = new bcv_parser();
2099
+ p.set_options({
2100
+ book_alone_strategy: "ignore",
2101
+ book_sequence_strategy: "ignore",
2102
+ osis_compaction_strategy: "bc",
2103
+ captive_end_digits_strategy: "delete"
2104
+ });
2105
+ return p.include_apocrypha(true);
2106
+ });
2107
+ return it("should handle book: Acts (de)", function() {
2108
+
2109
+ expect(p.parse("Apostelgeschichte 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Apostelgeschichte 1:1'")
2110
+ expect(p.parse("Acts 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Acts 1:1'")
2111
+ expect(p.parse("Apg 1:1").osis()).toEqual("Acts.1.1", "parsing: 'Apg 1:1'")
2112
+ p.include_apocrypha(false)
2113
+ expect(p.parse("APOSTELGESCHICHTE 1:1").osis()).toEqual("Acts.1.1", "parsing: 'APOSTELGESCHICHTE 1:1'")
2114
+ expect(p.parse("ACTS 1:1").osis()).toEqual("Acts.1.1", "parsing: 'ACTS 1:1'")
2115
+ expect(p.parse("APG 1:1").osis()).toEqual("Acts.1.1", "parsing: 'APG 1:1'")
2116
+ ;
2117
+ return true;
2118
+ });
2119
+ });
2120
+
2121
+ describe("Localized book Rom (de)", function() {
2122
+ var p;
2123
+ p = {};
2124
+ beforeEach(function() {
2125
+ p = new bcv_parser();
2126
+ p.set_options({
2127
+ book_alone_strategy: "ignore",
2128
+ book_sequence_strategy: "ignore",
2129
+ osis_compaction_strategy: "bc",
2130
+ captive_end_digits_strategy: "delete"
2131
+ });
2132
+ return p.include_apocrypha(true);
2133
+ });
2134
+ return it("should handle book: Rom (de)", function() {
2135
+
2136
+ expect(p.parse("Roemer 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Roemer 1:1'")
2137
+ expect(p.parse("Romer 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Romer 1:1'")
2138
+ expect(p.parse("Römer 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Römer 1:1'")
2139
+ expect(p.parse("Roem 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Roem 1:1'")
2140
+ expect(p.parse("Rom 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rom 1:1'")
2141
+ expect(p.parse("Röm 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Röm 1:1'")
2142
+ expect(p.parse("Rm 1:1").osis()).toEqual("Rom.1.1", "parsing: 'Rm 1:1'")
2143
+ p.include_apocrypha(false)
2144
+ expect(p.parse("ROEMER 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROEMER 1:1'")
2145
+ expect(p.parse("ROMER 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROMER 1:1'")
2146
+ expect(p.parse("RÖMER 1:1").osis()).toEqual("Rom.1.1", "parsing: 'RÖMER 1:1'")
2147
+ expect(p.parse("ROEM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROEM 1:1'")
2148
+ expect(p.parse("ROM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'ROM 1:1'")
2149
+ expect(p.parse("RÖM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'RÖM 1:1'")
2150
+ expect(p.parse("RM 1:1").osis()).toEqual("Rom.1.1", "parsing: 'RM 1:1'")
2151
+ ;
2152
+ return true;
2153
+ });
2154
+ });
2155
+
2156
+ describe("Localized book 2Cor (de)", function() {
2157
+ var p;
2158
+ p = {};
2159
+ beforeEach(function() {
2160
+ p = new bcv_parser();
2161
+ p.set_options({
2162
+ book_alone_strategy: "ignore",
2163
+ book_sequence_strategy: "ignore",
2164
+ osis_compaction_strategy: "bc",
2165
+ captive_end_digits_strategy: "delete"
2166
+ });
2167
+ return p.include_apocrypha(true);
2168
+ });
2169
+ return it("should handle book: 2Cor (de)", function() {
2170
+
2171
+ expect(p.parse("Zweiten Korinther 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Zweiten Korinther 1:1'")
2172
+ expect(p.parse("Zweiter Korinther 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Zweiter Korinther 1:1'")
2173
+ expect(p.parse("Zweites Korinther 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Zweites Korinther 1:1'")
2174
+ expect(p.parse("Zweite Korinther 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'Zweite Korinther 1:1'")
2175
+ expect(p.parse("2. Korinther 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Korinther 1:1'")
2176
+ expect(p.parse("2 Korinther 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Korinther 1:1'")
2177
+ expect(p.parse("2. Kor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. Kor 1:1'")
2178
+ expect(p.parse("2 Kor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 Kor 1:1'")
2179
+ expect(p.parse("2Cor 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2Cor 1:1'")
2180
+ p.include_apocrypha(false)
2181
+ expect(p.parse("ZWEITEN KORINTHER 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'ZWEITEN KORINTHER 1:1'")
2182
+ expect(p.parse("ZWEITER KORINTHER 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'ZWEITER KORINTHER 1:1'")
2183
+ expect(p.parse("ZWEITES KORINTHER 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'ZWEITES KORINTHER 1:1'")
2184
+ expect(p.parse("ZWEITE KORINTHER 1:1").osis()).toEqual("2Cor.1.1", "parsing: 'ZWEITE KORINTHER 1:1'")
2185
+ expect(p.parse("2. KORINTHER 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KORINTHER 1:1'")
2186
+ expect(p.parse("2 KORINTHER 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KORINTHER 1:1'")
2187
+ expect(p.parse("2. KOR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2. KOR 1:1'")
2188
+ expect(p.parse("2 KOR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2 KOR 1:1'")
2189
+ expect(p.parse("2COR 1:1").osis()).toEqual("2Cor.1.1", "parsing: '2COR 1:1'")
2190
+ ;
2191
+ return true;
2192
+ });
2193
+ });
2194
+
2195
+ describe("Localized book 1Cor (de)", function() {
2196
+ var p;
2197
+ p = {};
2198
+ beforeEach(function() {
2199
+ p = new bcv_parser();
2200
+ p.set_options({
2201
+ book_alone_strategy: "ignore",
2202
+ book_sequence_strategy: "ignore",
2203
+ osis_compaction_strategy: "bc",
2204
+ captive_end_digits_strategy: "delete"
2205
+ });
2206
+ return p.include_apocrypha(true);
2207
+ });
2208
+ return it("should handle book: 1Cor (de)", function() {
2209
+
2210
+ expect(p.parse("Ersten Korinther 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Ersten Korinther 1:1'")
2211
+ expect(p.parse("Erster Korinther 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Erster Korinther 1:1'")
2212
+ expect(p.parse("Erstes Korinther 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Erstes Korinther 1:1'")
2213
+ expect(p.parse("Erste Korinther 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'Erste Korinther 1:1'")
2214
+ expect(p.parse("1. Korinther 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Korinther 1:1'")
2215
+ expect(p.parse("1 Korinther 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Korinther 1:1'")
2216
+ expect(p.parse("1. Kor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. Kor 1:1'")
2217
+ expect(p.parse("1 Kor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 Kor 1:1'")
2218
+ expect(p.parse("1Cor 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1Cor 1:1'")
2219
+ p.include_apocrypha(false)
2220
+ expect(p.parse("ERSTEN KORINTHER 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'ERSTEN KORINTHER 1:1'")
2221
+ expect(p.parse("ERSTER KORINTHER 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'ERSTER KORINTHER 1:1'")
2222
+ expect(p.parse("ERSTES KORINTHER 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'ERSTES KORINTHER 1:1'")
2223
+ expect(p.parse("ERSTE KORINTHER 1:1").osis()).toEqual("1Cor.1.1", "parsing: 'ERSTE KORINTHER 1:1'")
2224
+ expect(p.parse("1. KORINTHER 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KORINTHER 1:1'")
2225
+ expect(p.parse("1 KORINTHER 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KORINTHER 1:1'")
2226
+ expect(p.parse("1. KOR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1. KOR 1:1'")
2227
+ expect(p.parse("1 KOR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1 KOR 1:1'")
2228
+ expect(p.parse("1COR 1:1").osis()).toEqual("1Cor.1.1", "parsing: '1COR 1:1'")
2229
+ ;
2230
+ return true;
2231
+ });
2232
+ });
2233
+
2234
+ describe("Localized book Gal (de)", function() {
2235
+ var p;
2236
+ p = {};
2237
+ beforeEach(function() {
2238
+ p = new bcv_parser();
2239
+ p.set_options({
2240
+ book_alone_strategy: "ignore",
2241
+ book_sequence_strategy: "ignore",
2242
+ osis_compaction_strategy: "bc",
2243
+ captive_end_digits_strategy: "delete"
2244
+ });
2245
+ return p.include_apocrypha(true);
2246
+ });
2247
+ return it("should handle book: Gal (de)", function() {
2248
+
2249
+ expect(p.parse("Galater 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Galater 1:1'")
2250
+ expect(p.parse("Gal 1:1").osis()).toEqual("Gal.1.1", "parsing: 'Gal 1:1'")
2251
+ p.include_apocrypha(false)
2252
+ expect(p.parse("GALATER 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GALATER 1:1'")
2253
+ expect(p.parse("GAL 1:1").osis()).toEqual("Gal.1.1", "parsing: 'GAL 1:1'")
2254
+ ;
2255
+ return true;
2256
+ });
2257
+ });
2258
+
2259
+ describe("Localized book Eph (de)", function() {
2260
+ var p;
2261
+ p = {};
2262
+ beforeEach(function() {
2263
+ p = new bcv_parser();
2264
+ p.set_options({
2265
+ book_alone_strategy: "ignore",
2266
+ book_sequence_strategy: "ignore",
2267
+ osis_compaction_strategy: "bc",
2268
+ captive_end_digits_strategy: "delete"
2269
+ });
2270
+ return p.include_apocrypha(true);
2271
+ });
2272
+ return it("should handle book: Eph (de)", function() {
2273
+
2274
+ expect(p.parse("Epheser 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Epheser 1:1'")
2275
+ expect(p.parse("Eph 1:1").osis()).toEqual("Eph.1.1", "parsing: 'Eph 1:1'")
2276
+ p.include_apocrypha(false)
2277
+ expect(p.parse("EPHESER 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPHESER 1:1'")
2278
+ expect(p.parse("EPH 1:1").osis()).toEqual("Eph.1.1", "parsing: 'EPH 1:1'")
2279
+ ;
2280
+ return true;
2281
+ });
2282
+ });
2283
+
2284
+ describe("Localized book Phil (de)", function() {
2285
+ var p;
2286
+ p = {};
2287
+ beforeEach(function() {
2288
+ p = new bcv_parser();
2289
+ p.set_options({
2290
+ book_alone_strategy: "ignore",
2291
+ book_sequence_strategy: "ignore",
2292
+ osis_compaction_strategy: "bc",
2293
+ captive_end_digits_strategy: "delete"
2294
+ });
2295
+ return p.include_apocrypha(true);
2296
+ });
2297
+ return it("should handle book: Phil (de)", function() {
2298
+
2299
+ expect(p.parse("Philipper 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Philipper 1:1'")
2300
+ expect(p.parse("Phil 1:1").osis()).toEqual("Phil.1.1", "parsing: 'Phil 1:1'")
2301
+ p.include_apocrypha(false)
2302
+ expect(p.parse("PHILIPPER 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHILIPPER 1:1'")
2303
+ expect(p.parse("PHIL 1:1").osis()).toEqual("Phil.1.1", "parsing: 'PHIL 1:1'")
2304
+ ;
2305
+ return true;
2306
+ });
2307
+ });
2308
+
2309
+ describe("Localized book Col (de)", function() {
2310
+ var p;
2311
+ p = {};
2312
+ beforeEach(function() {
2313
+ p = new bcv_parser();
2314
+ p.set_options({
2315
+ book_alone_strategy: "ignore",
2316
+ book_sequence_strategy: "ignore",
2317
+ osis_compaction_strategy: "bc",
2318
+ captive_end_digits_strategy: "delete"
2319
+ });
2320
+ return p.include_apocrypha(true);
2321
+ });
2322
+ return it("should handle book: Col (de)", function() {
2323
+
2324
+ expect(p.parse("Kolosser 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kolosser 1:1'")
2325
+ expect(p.parse("Col 1:1").osis()).toEqual("Col.1.1", "parsing: 'Col 1:1'")
2326
+ expect(p.parse("Kol 1:1").osis()).toEqual("Col.1.1", "parsing: 'Kol 1:1'")
2327
+ p.include_apocrypha(false)
2328
+ expect(p.parse("KOLOSSER 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOLOSSER 1:1'")
2329
+ expect(p.parse("COL 1:1").osis()).toEqual("Col.1.1", "parsing: 'COL 1:1'")
2330
+ expect(p.parse("KOL 1:1").osis()).toEqual("Col.1.1", "parsing: 'KOL 1:1'")
2331
+ ;
2332
+ return true;
2333
+ });
2334
+ });
2335
+
2336
+ describe("Localized book 2Thess (de)", function() {
2337
+ var p;
2338
+ p = {};
2339
+ beforeEach(function() {
2340
+ p = new bcv_parser();
2341
+ p.set_options({
2342
+ book_alone_strategy: "ignore",
2343
+ book_sequence_strategy: "ignore",
2344
+ osis_compaction_strategy: "bc",
2345
+ captive_end_digits_strategy: "delete"
2346
+ });
2347
+ return p.include_apocrypha(true);
2348
+ });
2349
+ return it("should handle book: 2Thess (de)", function() {
2350
+
2351
+ expect(p.parse("Zweiten Thessalonicher 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Zweiten Thessalonicher 1:1'")
2352
+ expect(p.parse("Zweiter Thessalonicher 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Zweiter Thessalonicher 1:1'")
2353
+ expect(p.parse("Zweites Thessalonicher 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Zweites Thessalonicher 1:1'")
2354
+ expect(p.parse("Zweite Thessalonicher 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'Zweite Thessalonicher 1:1'")
2355
+ expect(p.parse("2. Thessalonicher 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Thessalonicher 1:1'")
2356
+ expect(p.parse("2 Thessalonicher 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Thessalonicher 1:1'")
2357
+ expect(p.parse("2. Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Thess 1:1'")
2358
+ expect(p.parse("2 Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Thess 1:1'")
2359
+ expect(p.parse("2Thess 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2Thess 1:1'")
2360
+ expect(p.parse("2. Th 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. Th 1:1'")
2361
+ expect(p.parse("2 Th 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 Th 1:1'")
2362
+ p.include_apocrypha(false)
2363
+ expect(p.parse("ZWEITEN THESSALONICHER 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'ZWEITEN THESSALONICHER 1:1'")
2364
+ expect(p.parse("ZWEITER THESSALONICHER 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'ZWEITER THESSALONICHER 1:1'")
2365
+ expect(p.parse("ZWEITES THESSALONICHER 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'ZWEITES THESSALONICHER 1:1'")
2366
+ expect(p.parse("ZWEITE THESSALONICHER 1:1").osis()).toEqual("2Thess.1.1", "parsing: 'ZWEITE THESSALONICHER 1:1'")
2367
+ expect(p.parse("2. THESSALONICHER 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. THESSALONICHER 1:1'")
2368
+ expect(p.parse("2 THESSALONICHER 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 THESSALONICHER 1:1'")
2369
+ expect(p.parse("2. THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. THESS 1:1'")
2370
+ expect(p.parse("2 THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 THESS 1:1'")
2371
+ expect(p.parse("2THESS 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2THESS 1:1'")
2372
+ expect(p.parse("2. TH 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2. TH 1:1'")
2373
+ expect(p.parse("2 TH 1:1").osis()).toEqual("2Thess.1.1", "parsing: '2 TH 1:1'")
2374
+ ;
2375
+ return true;
2376
+ });
2377
+ });
2378
+
2379
+ describe("Localized book 1Thess (de)", function() {
2380
+ var p;
2381
+ p = {};
2382
+ beforeEach(function() {
2383
+ p = new bcv_parser();
2384
+ p.set_options({
2385
+ book_alone_strategy: "ignore",
2386
+ book_sequence_strategy: "ignore",
2387
+ osis_compaction_strategy: "bc",
2388
+ captive_end_digits_strategy: "delete"
2389
+ });
2390
+ return p.include_apocrypha(true);
2391
+ });
2392
+ return it("should handle book: 1Thess (de)", function() {
2393
+
2394
+ expect(p.parse("Ersten Thessalonicher 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Ersten Thessalonicher 1:1'")
2395
+ expect(p.parse("Erster Thessalonicher 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Erster Thessalonicher 1:1'")
2396
+ expect(p.parse("Erstes Thessalonicher 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Erstes Thessalonicher 1:1'")
2397
+ expect(p.parse("Erste Thessalonicher 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'Erste Thessalonicher 1:1'")
2398
+ expect(p.parse("1. Thessalonicher 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Thessalonicher 1:1'")
2399
+ expect(p.parse("1 Thessalonicher 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Thessalonicher 1:1'")
2400
+ expect(p.parse("1. Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Thess 1:1'")
2401
+ expect(p.parse("1 Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Thess 1:1'")
2402
+ expect(p.parse("1Thess 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1Thess 1:1'")
2403
+ expect(p.parse("1. Th 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. Th 1:1'")
2404
+ expect(p.parse("1 Th 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 Th 1:1'")
2405
+ p.include_apocrypha(false)
2406
+ expect(p.parse("ERSTEN THESSALONICHER 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'ERSTEN THESSALONICHER 1:1'")
2407
+ expect(p.parse("ERSTER THESSALONICHER 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'ERSTER THESSALONICHER 1:1'")
2408
+ expect(p.parse("ERSTES THESSALONICHER 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'ERSTES THESSALONICHER 1:1'")
2409
+ expect(p.parse("ERSTE THESSALONICHER 1:1").osis()).toEqual("1Thess.1.1", "parsing: 'ERSTE THESSALONICHER 1:1'")
2410
+ expect(p.parse("1. THESSALONICHER 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. THESSALONICHER 1:1'")
2411
+ expect(p.parse("1 THESSALONICHER 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 THESSALONICHER 1:1'")
2412
+ expect(p.parse("1. THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. THESS 1:1'")
2413
+ expect(p.parse("1 THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 THESS 1:1'")
2414
+ expect(p.parse("1THESS 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1THESS 1:1'")
2415
+ expect(p.parse("1. TH 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1. TH 1:1'")
2416
+ expect(p.parse("1 TH 1:1").osis()).toEqual("1Thess.1.1", "parsing: '1 TH 1:1'")
2417
+ ;
2418
+ return true;
2419
+ });
2420
+ });
2421
+
2422
+ describe("Localized book 2Tim (de)", function() {
2423
+ var p;
2424
+ p = {};
2425
+ beforeEach(function() {
2426
+ p = new bcv_parser();
2427
+ p.set_options({
2428
+ book_alone_strategy: "ignore",
2429
+ book_sequence_strategy: "ignore",
2430
+ osis_compaction_strategy: "bc",
2431
+ captive_end_digits_strategy: "delete"
2432
+ });
2433
+ return p.include_apocrypha(true);
2434
+ });
2435
+ return it("should handle book: 2Tim (de)", function() {
2436
+
2437
+ expect(p.parse("Zweiten Timotheus 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Zweiten Timotheus 1:1'")
2438
+ expect(p.parse("Zweiter Timotheus 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Zweiter Timotheus 1:1'")
2439
+ expect(p.parse("Zweites Timotheus 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Zweites Timotheus 1:1'")
2440
+ expect(p.parse("Zweite Timotheus 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'Zweite Timotheus 1:1'")
2441
+ expect(p.parse("2. Timotheus 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Timotheus 1:1'")
2442
+ expect(p.parse("2 Timotheus 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Timotheus 1:1'")
2443
+ expect(p.parse("2. Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. Tim 1:1'")
2444
+ expect(p.parse("2 Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 Tim 1:1'")
2445
+ expect(p.parse("2Tim 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2Tim 1:1'")
2446
+ p.include_apocrypha(false)
2447
+ expect(p.parse("ZWEITEN TIMOTHEUS 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'ZWEITEN TIMOTHEUS 1:1'")
2448
+ expect(p.parse("ZWEITER TIMOTHEUS 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'ZWEITER TIMOTHEUS 1:1'")
2449
+ expect(p.parse("ZWEITES TIMOTHEUS 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'ZWEITES TIMOTHEUS 1:1'")
2450
+ expect(p.parse("ZWEITE TIMOTHEUS 1:1").osis()).toEqual("2Tim.1.1", "parsing: 'ZWEITE TIMOTHEUS 1:1'")
2451
+ expect(p.parse("2. TIMOTHEUS 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIMOTHEUS 1:1'")
2452
+ expect(p.parse("2 TIMOTHEUS 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIMOTHEUS 1:1'")
2453
+ expect(p.parse("2. TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2. TIM 1:1'")
2454
+ expect(p.parse("2 TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2 TIM 1:1'")
2455
+ expect(p.parse("2TIM 1:1").osis()).toEqual("2Tim.1.1", "parsing: '2TIM 1:1'")
2456
+ ;
2457
+ return true;
2458
+ });
2459
+ });
2460
+
2461
+ describe("Localized book 1Tim (de)", function() {
2462
+ var p;
2463
+ p = {};
2464
+ beforeEach(function() {
2465
+ p = new bcv_parser();
2466
+ p.set_options({
2467
+ book_alone_strategy: "ignore",
2468
+ book_sequence_strategy: "ignore",
2469
+ osis_compaction_strategy: "bc",
2470
+ captive_end_digits_strategy: "delete"
2471
+ });
2472
+ return p.include_apocrypha(true);
2473
+ });
2474
+ return it("should handle book: 1Tim (de)", function() {
2475
+
2476
+ expect(p.parse("Ersten Timotheus 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Ersten Timotheus 1:1'")
2477
+ expect(p.parse("Erster Timotheus 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Erster Timotheus 1:1'")
2478
+ expect(p.parse("Erstes Timotheus 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Erstes Timotheus 1:1'")
2479
+ expect(p.parse("Erste Timotheus 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'Erste Timotheus 1:1'")
2480
+ expect(p.parse("1. Timotheus 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Timotheus 1:1'")
2481
+ expect(p.parse("1 Timotheus 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Timotheus 1:1'")
2482
+ expect(p.parse("1. Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. Tim 1:1'")
2483
+ expect(p.parse("1 Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 Tim 1:1'")
2484
+ expect(p.parse("1Tim 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1Tim 1:1'")
2485
+ p.include_apocrypha(false)
2486
+ expect(p.parse("ERSTEN TIMOTHEUS 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'ERSTEN TIMOTHEUS 1:1'")
2487
+ expect(p.parse("ERSTER TIMOTHEUS 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'ERSTER TIMOTHEUS 1:1'")
2488
+ expect(p.parse("ERSTES TIMOTHEUS 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'ERSTES TIMOTHEUS 1:1'")
2489
+ expect(p.parse("ERSTE TIMOTHEUS 1:1").osis()).toEqual("1Tim.1.1", "parsing: 'ERSTE TIMOTHEUS 1:1'")
2490
+ expect(p.parse("1. TIMOTHEUS 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TIMOTHEUS 1:1'")
2491
+ expect(p.parse("1 TIMOTHEUS 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIMOTHEUS 1:1'")
2492
+ expect(p.parse("1. TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1. TIM 1:1'")
2493
+ expect(p.parse("1 TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1 TIM 1:1'")
2494
+ expect(p.parse("1TIM 1:1").osis()).toEqual("1Tim.1.1", "parsing: '1TIM 1:1'")
2495
+ ;
2496
+ return true;
2497
+ });
2498
+ });
2499
+
2500
+ describe("Localized book Titus (de)", function() {
2501
+ var p;
2502
+ p = {};
2503
+ beforeEach(function() {
2504
+ p = new bcv_parser();
2505
+ p.set_options({
2506
+ book_alone_strategy: "ignore",
2507
+ book_sequence_strategy: "ignore",
2508
+ osis_compaction_strategy: "bc",
2509
+ captive_end_digits_strategy: "delete"
2510
+ });
2511
+ return p.include_apocrypha(true);
2512
+ });
2513
+ return it("should handle book: Titus (de)", function() {
2514
+
2515
+ expect(p.parse("Titus 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Titus 1:1'")
2516
+ expect(p.parse("Tit 1:1").osis()).toEqual("Titus.1.1", "parsing: 'Tit 1:1'")
2517
+ p.include_apocrypha(false)
2518
+ expect(p.parse("TITUS 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TITUS 1:1'")
2519
+ expect(p.parse("TIT 1:1").osis()).toEqual("Titus.1.1", "parsing: 'TIT 1:1'")
2520
+ ;
2521
+ return true;
2522
+ });
2523
+ });
2524
+
2525
+ describe("Localized book Phlm (de)", function() {
2526
+ var p;
2527
+ p = {};
2528
+ beforeEach(function() {
2529
+ p = new bcv_parser();
2530
+ p.set_options({
2531
+ book_alone_strategy: "ignore",
2532
+ book_sequence_strategy: "ignore",
2533
+ osis_compaction_strategy: "bc",
2534
+ captive_end_digits_strategy: "delete"
2535
+ });
2536
+ return p.include_apocrypha(true);
2537
+ });
2538
+ return it("should handle book: Phlm (de)", function() {
2539
+
2540
+ expect(p.parse("Philemon 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Philemon 1:1'")
2541
+ expect(p.parse("Phlm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phlm 1:1'")
2542
+ expect(p.parse("Phm 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'Phm 1:1'")
2543
+ p.include_apocrypha(false)
2544
+ expect(p.parse("PHILEMON 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHILEMON 1:1'")
2545
+ expect(p.parse("PHLM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHLM 1:1'")
2546
+ expect(p.parse("PHM 1:1").osis()).toEqual("Phlm.1.1", "parsing: 'PHM 1:1'")
2547
+ ;
2548
+ return true;
2549
+ });
2550
+ });
2551
+
2552
+ describe("Localized book Heb (de)", function() {
2553
+ var p;
2554
+ p = {};
2555
+ beforeEach(function() {
2556
+ p = new bcv_parser();
2557
+ p.set_options({
2558
+ book_alone_strategy: "ignore",
2559
+ book_sequence_strategy: "ignore",
2560
+ osis_compaction_strategy: "bc",
2561
+ captive_end_digits_strategy: "delete"
2562
+ });
2563
+ return p.include_apocrypha(true);
2564
+ });
2565
+ return it("should handle book: Heb (de)", function() {
2566
+
2567
+ expect(p.parse("Hebraeer 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hebraeer 1:1'")
2568
+ expect(p.parse("Hebraer 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hebraer 1:1'")
2569
+ expect(p.parse("Hebräer 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hebräer 1:1'")
2570
+ expect(p.parse("Hebr 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hebr 1:1'")
2571
+ expect(p.parse("Heb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Heb 1:1'")
2572
+ expect(p.parse("Hb 1:1").osis()).toEqual("Heb.1.1", "parsing: 'Hb 1:1'")
2573
+ p.include_apocrypha(false)
2574
+ expect(p.parse("HEBRAEER 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEBRAEER 1:1'")
2575
+ expect(p.parse("HEBRAER 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEBRAER 1:1'")
2576
+ expect(p.parse("HEBRÄER 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEBRÄER 1:1'")
2577
+ expect(p.parse("HEBR 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEBR 1:1'")
2578
+ expect(p.parse("HEB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HEB 1:1'")
2579
+ expect(p.parse("HB 1:1").osis()).toEqual("Heb.1.1", "parsing: 'HB 1:1'")
2580
+ ;
2581
+ return true;
2582
+ });
2583
+ });
2584
+
2585
+ describe("Localized book Jas (de)", function() {
2586
+ var p;
2587
+ p = {};
2588
+ beforeEach(function() {
2589
+ p = new bcv_parser();
2590
+ p.set_options({
2591
+ book_alone_strategy: "ignore",
2592
+ book_sequence_strategy: "ignore",
2593
+ osis_compaction_strategy: "bc",
2594
+ captive_end_digits_strategy: "delete"
2595
+ });
2596
+ return p.include_apocrypha(true);
2597
+ });
2598
+ return it("should handle book: Jas (de)", function() {
2599
+
2600
+ expect(p.parse("Jakobusbrief 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jakobusbrief 1:1'")
2601
+ expect(p.parse("Jakobus 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jakobus 1:1'")
2602
+ expect(p.parse("Jak 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jak 1:1'")
2603
+ expect(p.parse("Jas 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jas 1:1'")
2604
+ expect(p.parse("Jk 1:1").osis()).toEqual("Jas.1.1", "parsing: 'Jk 1:1'")
2605
+ p.include_apocrypha(false)
2606
+ expect(p.parse("JAKOBUSBRIEF 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAKOBUSBRIEF 1:1'")
2607
+ expect(p.parse("JAKOBUS 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAKOBUS 1:1'")
2608
+ expect(p.parse("JAK 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAK 1:1'")
2609
+ expect(p.parse("JAS 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JAS 1:1'")
2610
+ expect(p.parse("JK 1:1").osis()).toEqual("Jas.1.1", "parsing: 'JK 1:1'")
2611
+ ;
2612
+ return true;
2613
+ });
2614
+ });
2615
+
2616
+ describe("Localized book 2Pet (de)", function() {
2617
+ var p;
2618
+ p = {};
2619
+ beforeEach(function() {
2620
+ p = new bcv_parser();
2621
+ p.set_options({
2622
+ book_alone_strategy: "ignore",
2623
+ book_sequence_strategy: "ignore",
2624
+ osis_compaction_strategy: "bc",
2625
+ captive_end_digits_strategy: "delete"
2626
+ });
2627
+ return p.include_apocrypha(true);
2628
+ });
2629
+ return it("should handle book: 2Pet (de)", function() {
2630
+
2631
+ expect(p.parse("Zweiten Petrus 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Zweiten Petrus 1:1'")
2632
+ expect(p.parse("Zweiter Petrus 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Zweiter Petrus 1:1'")
2633
+ expect(p.parse("Zweites Petrus 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Zweites Petrus 1:1'")
2634
+ expect(p.parse("Zweite Petrus 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'Zweite Petrus 1:1'")
2635
+ expect(p.parse("2. Petrus 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Petrus 1:1'")
2636
+ expect(p.parse("2 Petrus 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Petrus 1:1'")
2637
+ expect(p.parse("2. Petr 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Petr 1:1'")
2638
+ expect(p.parse("2 Petr 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Petr 1:1'")
2639
+ expect(p.parse("2. Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Pet 1:1'")
2640
+ expect(p.parse("2 Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Pet 1:1'")
2641
+ expect(p.parse("2. Pt 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. Pt 1:1'")
2642
+ expect(p.parse("2 Pt 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 Pt 1:1'")
2643
+ expect(p.parse("2Pet 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2Pet 1:1'")
2644
+ p.include_apocrypha(false)
2645
+ expect(p.parse("ZWEITEN PETRUS 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'ZWEITEN PETRUS 1:1'")
2646
+ expect(p.parse("ZWEITER PETRUS 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'ZWEITER PETRUS 1:1'")
2647
+ expect(p.parse("ZWEITES PETRUS 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'ZWEITES PETRUS 1:1'")
2648
+ expect(p.parse("ZWEITE PETRUS 1:1").osis()).toEqual("2Pet.1.1", "parsing: 'ZWEITE PETRUS 1:1'")
2649
+ expect(p.parse("2. PETRUS 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PETRUS 1:1'")
2650
+ expect(p.parse("2 PETRUS 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PETRUS 1:1'")
2651
+ expect(p.parse("2. PETR 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PETR 1:1'")
2652
+ expect(p.parse("2 PETR 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PETR 1:1'")
2653
+ expect(p.parse("2. PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PET 1:1'")
2654
+ expect(p.parse("2 PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PET 1:1'")
2655
+ expect(p.parse("2. PT 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2. PT 1:1'")
2656
+ expect(p.parse("2 PT 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2 PT 1:1'")
2657
+ expect(p.parse("2PET 1:1").osis()).toEqual("2Pet.1.1", "parsing: '2PET 1:1'")
2658
+ ;
2659
+ return true;
2660
+ });
2661
+ });
2662
+
2663
+ describe("Localized book 1Pet (de)", function() {
2664
+ var p;
2665
+ p = {};
2666
+ beforeEach(function() {
2667
+ p = new bcv_parser();
2668
+ p.set_options({
2669
+ book_alone_strategy: "ignore",
2670
+ book_sequence_strategy: "ignore",
2671
+ osis_compaction_strategy: "bc",
2672
+ captive_end_digits_strategy: "delete"
2673
+ });
2674
+ return p.include_apocrypha(true);
2675
+ });
2676
+ return it("should handle book: 1Pet (de)", function() {
2677
+
2678
+ expect(p.parse("Ersten Petrus 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Ersten Petrus 1:1'")
2679
+ expect(p.parse("Erster Petrus 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Erster Petrus 1:1'")
2680
+ expect(p.parse("Erstes Petrus 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Erstes Petrus 1:1'")
2681
+ expect(p.parse("Erste Petrus 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'Erste Petrus 1:1'")
2682
+ expect(p.parse("1. Petrus 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Petrus 1:1'")
2683
+ expect(p.parse("1 Petrus 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Petrus 1:1'")
2684
+ expect(p.parse("1. Petr 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Petr 1:1'")
2685
+ expect(p.parse("1 Petr 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Petr 1:1'")
2686
+ expect(p.parse("1. Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Pet 1:1'")
2687
+ expect(p.parse("1 Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Pet 1:1'")
2688
+ expect(p.parse("1. Pt 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. Pt 1:1'")
2689
+ expect(p.parse("1 Pt 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 Pt 1:1'")
2690
+ expect(p.parse("1Pet 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1Pet 1:1'")
2691
+ p.include_apocrypha(false)
2692
+ expect(p.parse("ERSTEN PETRUS 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'ERSTEN PETRUS 1:1'")
2693
+ expect(p.parse("ERSTER PETRUS 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'ERSTER PETRUS 1:1'")
2694
+ expect(p.parse("ERSTES PETRUS 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'ERSTES PETRUS 1:1'")
2695
+ expect(p.parse("ERSTE PETRUS 1:1").osis()).toEqual("1Pet.1.1", "parsing: 'ERSTE PETRUS 1:1'")
2696
+ expect(p.parse("1. PETRUS 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PETRUS 1:1'")
2697
+ expect(p.parse("1 PETRUS 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PETRUS 1:1'")
2698
+ expect(p.parse("1. PETR 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PETR 1:1'")
2699
+ expect(p.parse("1 PETR 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PETR 1:1'")
2700
+ expect(p.parse("1. PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PET 1:1'")
2701
+ expect(p.parse("1 PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PET 1:1'")
2702
+ expect(p.parse("1. PT 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1. PT 1:1'")
2703
+ expect(p.parse("1 PT 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1 PT 1:1'")
2704
+ expect(p.parse("1PET 1:1").osis()).toEqual("1Pet.1.1", "parsing: '1PET 1:1'")
2705
+ ;
2706
+ return true;
2707
+ });
2708
+ });
2709
+
2710
+ describe("Localized book Jude (de)", function() {
2711
+ var p;
2712
+ p = {};
2713
+ beforeEach(function() {
2714
+ p = new bcv_parser();
2715
+ p.set_options({
2716
+ book_alone_strategy: "ignore",
2717
+ book_sequence_strategy: "ignore",
2718
+ osis_compaction_strategy: "bc",
2719
+ captive_end_digits_strategy: "delete"
2720
+ });
2721
+ return p.include_apocrypha(true);
2722
+ });
2723
+ return it("should handle book: Jude (de)", function() {
2724
+
2725
+ expect(p.parse("Judas 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Judas 1:1'")
2726
+ expect(p.parse("Jude 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jude 1:1'")
2727
+ expect(p.parse("Jud 1:1").osis()).toEqual("Jude.1.1", "parsing: 'Jud 1:1'")
2728
+ p.include_apocrypha(false)
2729
+ expect(p.parse("JUDAS 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDAS 1:1'")
2730
+ expect(p.parse("JUDE 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUDE 1:1'")
2731
+ expect(p.parse("JUD 1:1").osis()).toEqual("Jude.1.1", "parsing: 'JUD 1:1'")
2732
+ ;
2733
+ return true;
2734
+ });
2735
+ });
2736
+
2737
+ describe("Localized book Tob (de)", 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: Tob (de)", function() {
2751
+
2752
+ expect(p.parse("Tobias 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tobias 1:1'")
2753
+ expect(p.parse("Tobit 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tobit 1:1'")
2754
+ expect(p.parse("Tob 1:1").osis()).toEqual("Tob.1.1", "parsing: 'Tob 1:1'")
2755
+ ;
2756
+ return true;
2757
+ });
2758
+ });
2759
+
2760
+ describe("Localized book Jdt (de)", function() {
2761
+ var p;
2762
+ p = {};
2763
+ beforeEach(function() {
2764
+ p = new bcv_parser();
2765
+ p.set_options({
2766
+ book_alone_strategy: "ignore",
2767
+ book_sequence_strategy: "ignore",
2768
+ osis_compaction_strategy: "bc",
2769
+ captive_end_digits_strategy: "delete"
2770
+ });
2771
+ return p.include_apocrypha(true);
2772
+ });
2773
+ return it("should handle book: Jdt (de)", function() {
2774
+
2775
+ expect(p.parse("Judit 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Judit 1:1'")
2776
+ expect(p.parse("Jdt 1:1").osis()).toEqual("Jdt.1.1", "parsing: 'Jdt 1:1'")
2777
+ ;
2778
+ return true;
2779
+ });
2780
+ });
2781
+
2782
+ describe("Localized book Bar (de)", function() {
2783
+ var p;
2784
+ p = {};
2785
+ beforeEach(function() {
2786
+ p = new bcv_parser();
2787
+ p.set_options({
2788
+ book_alone_strategy: "ignore",
2789
+ book_sequence_strategy: "ignore",
2790
+ osis_compaction_strategy: "bc",
2791
+ captive_end_digits_strategy: "delete"
2792
+ });
2793
+ return p.include_apocrypha(true);
2794
+ });
2795
+ return it("should handle book: Bar (de)", function() {
2796
+
2797
+ expect(p.parse("Baruch 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Baruch 1:1'")
2798
+ expect(p.parse("Bar 1:1").osis()).toEqual("Bar.1.1", "parsing: 'Bar 1:1'")
2799
+ ;
2800
+ return true;
2801
+ });
2802
+ });
2803
+
2804
+ describe("Localized book Sus (de)", function() {
2805
+ var p;
2806
+ p = {};
2807
+ beforeEach(function() {
2808
+ p = new bcv_parser();
2809
+ p.set_options({
2810
+ book_alone_strategy: "ignore",
2811
+ book_sequence_strategy: "ignore",
2812
+ osis_compaction_strategy: "bc",
2813
+ captive_end_digits_strategy: "delete"
2814
+ });
2815
+ return p.include_apocrypha(true);
2816
+ });
2817
+ return it("should handle book: Sus (de)", function() {
2818
+
2819
+ expect(p.parse("Susanna 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Susanna 1:1'")
2820
+ expect(p.parse("Sus 1:1").osis()).toEqual("Sus.1.1", "parsing: 'Sus 1:1'")
2821
+ ;
2822
+ return true;
2823
+ });
2824
+ });
2825
+
2826
+ describe("Localized book 2Macc (de)", function() {
2827
+ var p;
2828
+ p = {};
2829
+ beforeEach(function() {
2830
+ p = new bcv_parser();
2831
+ p.set_options({
2832
+ book_alone_strategy: "ignore",
2833
+ book_sequence_strategy: "ignore",
2834
+ osis_compaction_strategy: "bc",
2835
+ captive_end_digits_strategy: "delete"
2836
+ });
2837
+ return p.include_apocrypha(true);
2838
+ });
2839
+ return it("should handle book: 2Macc (de)", function() {
2840
+
2841
+ expect(p.parse("Zweiten Makkabaeer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweiten Makkabaeer 1:1'")
2842
+ expect(p.parse("Zweiter Makkabaeer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweiter Makkabaeer 1:1'")
2843
+ expect(p.parse("Zweites Makkabaeer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweites Makkabaeer 1:1'")
2844
+ expect(p.parse("Zweite Makkabaeer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweite Makkabaeer 1:1'")
2845
+ expect(p.parse("Zweiten Makkabaer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweiten Makkabaer 1:1'")
2846
+ expect(p.parse("Zweiten Makkabäer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweiten Makkabäer 1:1'")
2847
+ expect(p.parse("Zweiter Makkabaer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweiter Makkabaer 1:1'")
2848
+ expect(p.parse("Zweiter Makkabäer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweiter Makkabäer 1:1'")
2849
+ expect(p.parse("Zweites Makkabaer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweites Makkabaer 1:1'")
2850
+ expect(p.parse("Zweites Makkabäer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweites Makkabäer 1:1'")
2851
+ expect(p.parse("Zweite Makkabaer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweite Makkabaer 1:1'")
2852
+ expect(p.parse("Zweite Makkabäer 1:1").osis()).toEqual("2Macc.1.1", "parsing: 'Zweite Makkabäer 1:1'")
2853
+ expect(p.parse("2. Makkabaeer 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2. Makkabaeer 1:1'")
2854
+ expect(p.parse("2 Makkabaeer 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Makkabaeer 1:1'")
2855
+ expect(p.parse("2. Makkabaer 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2. Makkabaer 1:1'")
2856
+ expect(p.parse("2. Makkabäer 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2. Makkabäer 1:1'")
2857
+ expect(p.parse("2 Makkabaer 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Makkabaer 1:1'")
2858
+ expect(p.parse("2 Makkabäer 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Makkabäer 1:1'")
2859
+ expect(p.parse("2. Makk 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2. Makk 1:1'")
2860
+ expect(p.parse("2 Makk 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2 Makk 1:1'")
2861
+ expect(p.parse("2Macc 1:1").osis()).toEqual("2Macc.1.1", "parsing: '2Macc 1:1'")
2862
+ ;
2863
+ return true;
2864
+ });
2865
+ });
2866
+
2867
+ describe("Localized book 3Macc (de)", function() {
2868
+ var p;
2869
+ p = {};
2870
+ beforeEach(function() {
2871
+ p = new bcv_parser();
2872
+ p.set_options({
2873
+ book_alone_strategy: "ignore",
2874
+ book_sequence_strategy: "ignore",
2875
+ osis_compaction_strategy: "bc",
2876
+ captive_end_digits_strategy: "delete"
2877
+ });
2878
+ return p.include_apocrypha(true);
2879
+ });
2880
+ return it("should handle book: 3Macc (de)", function() {
2881
+
2882
+ expect(p.parse("Dritten Makkabaeer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritten Makkabaeer 1:1'")
2883
+ expect(p.parse("Dritter Makkabaeer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritter Makkabaeer 1:1'")
2884
+ expect(p.parse("Drittes Makkabaeer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Drittes Makkabaeer 1:1'")
2885
+ expect(p.parse("Dritte Makkabaeer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritte Makkabaeer 1:1'")
2886
+ expect(p.parse("Dritten Makkabaer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritten Makkabaer 1:1'")
2887
+ expect(p.parse("Dritten Makkabäer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritten Makkabäer 1:1'")
2888
+ expect(p.parse("Dritter Makkabaer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritter Makkabaer 1:1'")
2889
+ expect(p.parse("Dritter Makkabäer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritter Makkabäer 1:1'")
2890
+ expect(p.parse("Drittes Makkabaer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Drittes Makkabaer 1:1'")
2891
+ expect(p.parse("Drittes Makkabäer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Drittes Makkabäer 1:1'")
2892
+ expect(p.parse("Dritte Makkabaer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritte Makkabaer 1:1'")
2893
+ expect(p.parse("Dritte Makkabäer 1:1").osis()).toEqual("3Macc.1.1", "parsing: 'Dritte Makkabäer 1:1'")
2894
+ expect(p.parse("3. Makkabaeer 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3. Makkabaeer 1:1'")
2895
+ expect(p.parse("3 Makkabaeer 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Makkabaeer 1:1'")
2896
+ expect(p.parse("3. Makkabaer 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3. Makkabaer 1:1'")
2897
+ expect(p.parse("3. Makkabäer 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3. Makkabäer 1:1'")
2898
+ expect(p.parse("3 Makkabaer 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Makkabaer 1:1'")
2899
+ expect(p.parse("3 Makkabäer 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Makkabäer 1:1'")
2900
+ expect(p.parse("3. Makk 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3. Makk 1:1'")
2901
+ expect(p.parse("3 Makk 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3 Makk 1:1'")
2902
+ expect(p.parse("3Macc 1:1").osis()).toEqual("3Macc.1.1", "parsing: '3Macc 1:1'")
2903
+ ;
2904
+ return true;
2905
+ });
2906
+ });
2907
+
2908
+ describe("Localized book 4Macc (de)", function() {
2909
+ var p;
2910
+ p = {};
2911
+ beforeEach(function() {
2912
+ p = new bcv_parser();
2913
+ p.set_options({
2914
+ book_alone_strategy: "ignore",
2915
+ book_sequence_strategy: "ignore",
2916
+ osis_compaction_strategy: "bc",
2917
+ captive_end_digits_strategy: "delete"
2918
+ });
2919
+ return p.include_apocrypha(true);
2920
+ });
2921
+ return it("should handle book: 4Macc (de)", function() {
2922
+
2923
+ expect(p.parse("Vierten Makkabaeer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Vierten Makkabaeer 1:1'")
2924
+ expect(p.parse("Viertes Makkabaeer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Viertes Makkabaeer 1:1'")
2925
+ expect(p.parse("Vierte Makkabaeer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Vierte Makkabaeer 1:1'")
2926
+ expect(p.parse("Vierten Makkabaer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Vierten Makkabaer 1:1'")
2927
+ expect(p.parse("Vierten Makkabäer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Vierten Makkabäer 1:1'")
2928
+ expect(p.parse("Viertes Makkabaer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Viertes Makkabaer 1:1'")
2929
+ expect(p.parse("Viertes Makkabäer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Viertes Makkabäer 1:1'")
2930
+ expect(p.parse("Vierte Makkabaer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Vierte Makkabaer 1:1'")
2931
+ expect(p.parse("Vierte Makkabäer 1:1").osis()).toEqual("4Macc.1.1", "parsing: 'Vierte Makkabäer 1:1'")
2932
+ expect(p.parse("4. Makkabaeer 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4. Makkabaeer 1:1'")
2933
+ expect(p.parse("4 Makkabaeer 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Makkabaeer 1:1'")
2934
+ expect(p.parse("4. Makkabaer 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4. Makkabaer 1:1'")
2935
+ expect(p.parse("4. Makkabäer 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4. Makkabäer 1:1'")
2936
+ expect(p.parse("4 Makkabaer 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Makkabaer 1:1'")
2937
+ expect(p.parse("4 Makkabäer 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Makkabäer 1:1'")
2938
+ expect(p.parse("4. Makk 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4. Makk 1:1'")
2939
+ expect(p.parse("4 Makk 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4 Makk 1:1'")
2940
+ expect(p.parse("4Macc 1:1").osis()).toEqual("4Macc.1.1", "parsing: '4Macc 1:1'")
2941
+ ;
2942
+ return true;
2943
+ });
2944
+ });
2945
+
2946
+ describe("Localized book 1Macc (de)", function() {
2947
+ var p;
2948
+ p = {};
2949
+ beforeEach(function() {
2950
+ p = new bcv_parser();
2951
+ p.set_options({
2952
+ book_alone_strategy: "ignore",
2953
+ book_sequence_strategy: "ignore",
2954
+ osis_compaction_strategy: "bc",
2955
+ captive_end_digits_strategy: "delete"
2956
+ });
2957
+ return p.include_apocrypha(true);
2958
+ });
2959
+ return it("should handle book: 1Macc (de)", function() {
2960
+
2961
+ expect(p.parse("Ersten Makkabaeer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Ersten Makkabaeer 1:1'")
2962
+ expect(p.parse("Erster Makkabaeer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erster Makkabaeer 1:1'")
2963
+ expect(p.parse("Erstes Makkabaeer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erstes Makkabaeer 1:1'")
2964
+ expect(p.parse("Erste Makkabaeer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erste Makkabaeer 1:1'")
2965
+ expect(p.parse("Ersten Makkabaer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Ersten Makkabaer 1:1'")
2966
+ expect(p.parse("Ersten Makkabäer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Ersten Makkabäer 1:1'")
2967
+ expect(p.parse("Erster Makkabaer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erster Makkabaer 1:1'")
2968
+ expect(p.parse("Erster Makkabäer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erster Makkabäer 1:1'")
2969
+ expect(p.parse("Erstes Makkabaer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erstes Makkabaer 1:1'")
2970
+ expect(p.parse("Erstes Makkabäer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erstes Makkabäer 1:1'")
2971
+ expect(p.parse("Erste Makkabaer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erste Makkabaer 1:1'")
2972
+ expect(p.parse("Erste Makkabäer 1:1").osis()).toEqual("1Macc.1.1", "parsing: 'Erste Makkabäer 1:1'")
2973
+ expect(p.parse("1. Makkabaeer 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1. Makkabaeer 1:1'")
2974
+ expect(p.parse("1 Makkabaeer 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Makkabaeer 1:1'")
2975
+ expect(p.parse("1. Makkabaer 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1. Makkabaer 1:1'")
2976
+ expect(p.parse("1. Makkabäer 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1. Makkabäer 1:1'")
2977
+ expect(p.parse("1 Makkabaer 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Makkabaer 1:1'")
2978
+ expect(p.parse("1 Makkabäer 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Makkabäer 1:1'")
2979
+ expect(p.parse("1. Makk 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1. Makk 1:1'")
2980
+ expect(p.parse("1 Makk 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1 Makk 1:1'")
2981
+ expect(p.parse("1Macc 1:1").osis()).toEqual("1Macc.1.1", "parsing: '1Macc 1:1'")
2982
+ ;
2983
+ return true;
2984
+ });
2985
+ });
2986
+
2987
+ describe("Miscellaneous tests", function() {
2988
+ var p;
2989
+ p = {};
2990
+ beforeEach(function() {
2991
+ p = new bcv_parser();
2992
+ p.set_options({
2993
+ book_alone_strategy: "ignore",
2994
+ book_sequence_strategy: "ignore",
2995
+ osis_compaction_strategy: "bc",
2996
+ captive_end_digits_strategy: "delete"
2997
+ });
2998
+ return p.include_apocrypha(true);
2999
+ });
3000
+ it("should return the expected language", function() {
3001
+ return expect(p.languages).toEqual(["de"]);
3002
+ });
3003
+ it("should handle ranges (de)", function() {
3004
+ expect(p.parse("Titus 1:1 bis 2").osis()).toEqual("Titus.1.1-Titus.1.2", "parsing: 'Titus 1:1 bis 2'");
3005
+ expect(p.parse("Matt 1bis2").osis()).toEqual("Matt.1-Matt.2", "parsing: 'Matt 1bis2'");
3006
+ return expect(p.parse("Phlm 2 BIS 3").osis()).toEqual("Phlm.1.2-Phlm.1.3", "parsing: 'Phlm 2 BIS 3'");
3007
+ });
3008
+ it("should handle chapters (de)", function() {
3009
+ expect(p.parse("Titus 1:1, Kapiteln 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, Kapiteln 2'");
3010
+ expect(p.parse("Matt 3:4 KAPITELN 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 KAPITELN 6'");
3011
+ expect(p.parse("Titus 1:1, Kapiteln 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, Kapiteln 2'");
3012
+ expect(p.parse("Matt 3:4 KAPITELN 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 KAPITELN 6'");
3013
+ expect(p.parse("Titus 1:1, Kapitel 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, Kapitel 2'");
3014
+ expect(p.parse("Matt 3:4 KAPITEL 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 KAPITEL 6'");
3015
+ expect(p.parse("Titus 1:1, Kap. 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, Kap. 2'");
3016
+ expect(p.parse("Matt 3:4 KAP. 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 KAP. 6'");
3017
+ expect(p.parse("Titus 1:1, Kap 2").osis()).toEqual("Titus.1.1,Titus.2", "parsing: 'Titus 1:1, Kap 2'");
3018
+ return expect(p.parse("Matt 3:4 KAP 6").osis()).toEqual("Matt.3.4,Matt.6", "parsing: 'Matt 3:4 KAP 6'");
3019
+ });
3020
+ it("should handle verses (de)", function() {
3021
+ expect(p.parse("Exod 1:1 Versen 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Versen 3'");
3022
+ expect(p.parse("Phlm VERSEN 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERSEN 6'");
3023
+ expect(p.parse("Exod 1:1 Verses 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Verses 3'");
3024
+ expect(p.parse("Phlm VERSES 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERSES 6'");
3025
+ expect(p.parse("Exod 1:1 Verse 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Verse 3'");
3026
+ expect(p.parse("Phlm VERSE 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERSE 6'");
3027
+ expect(p.parse("Exod 1:1 Vers. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Vers. 3'");
3028
+ expect(p.parse("Phlm VERS. 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERS. 6'");
3029
+ expect(p.parse("Exod 1:1 Vers 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Vers 3'");
3030
+ expect(p.parse("Phlm VERS 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERS 6'");
3031
+ expect(p.parse("Exod 1:1 Vers 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Vers 3'");
3032
+ expect(p.parse("Phlm VERS 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VERS 6'");
3033
+ expect(p.parse("Exod 1:1 Vs. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Vs. 3'");
3034
+ expect(p.parse("Phlm VS. 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VS. 6'");
3035
+ expect(p.parse("Exod 1:1 Vs 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 Vs 3'");
3036
+ return expect(p.parse("Phlm VS 6").osis()).toEqual("Phlm.1.6", "parsing: 'Phlm VS 6'");
3037
+ });
3038
+ it("should handle 'and' (de)", function() {
3039
+ expect(p.parse("Exod 1:1 und siehe auch 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 und siehe auch 3'");
3040
+ expect(p.parse("Phlm 2 UND SIEHE AUCH 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 UND SIEHE AUCH 6'");
3041
+ expect(p.parse("Exod 1:1 und siehe 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 und siehe 3'");
3042
+ expect(p.parse("Phlm 2 UND SIEHE 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 UND SIEHE 6'");
3043
+ expect(p.parse("Exod 1:1 und auch 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 und auch 3'");
3044
+ expect(p.parse("Phlm 2 UND AUCH 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 UND AUCH 6'");
3045
+ expect(p.parse("Exod 1:1 sowie auch 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 sowie auch 3'");
3046
+ expect(p.parse("Phlm 2 SOWIE AUCH 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 SOWIE AUCH 6'");
3047
+ expect(p.parse("Exod 1:1 siehe auch 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 siehe auch 3'");
3048
+ expect(p.parse("Phlm 2 SIEHE AUCH 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 SIEHE AUCH 6'");
3049
+ expect(p.parse("Exod 1:1 siehe 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 siehe 3'");
3050
+ expect(p.parse("Phlm 2 SIEHE 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 SIEHE 6'");
3051
+ expect(p.parse("Exod 1:1 sowie 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 sowie 3'");
3052
+ expect(p.parse("Phlm 2 SOWIE 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 SOWIE 6'");
3053
+ expect(p.parse("Exod 1:1 und 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 und 3'");
3054
+ expect(p.parse("Phlm 2 UND 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 UND 6'");
3055
+ expect(p.parse("Exod 1:1 u. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 u. 3'");
3056
+ expect(p.parse("Phlm 2 U. 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 U. 6'");
3057
+ expect(p.parse("Exod 1:1 u 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 u 3'");
3058
+ expect(p.parse("Phlm 2 U 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 U 6'");
3059
+ expect(p.parse("Exod 1:1 & 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 & 3'");
3060
+ expect(p.parse("Phlm 2 & 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 & 6'");
3061
+ expect(p.parse("Exod 1:1 vgl. 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vgl. 3'");
3062
+ expect(p.parse("Phlm 2 VGL. 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 VGL. 6'");
3063
+ expect(p.parse("Exod 1:1 vgl 3").osis()).toEqual("Exod.1.1,Exod.1.3", "parsing: 'Exod 1:1 vgl 3'");
3064
+ return expect(p.parse("Phlm 2 VGL 6").osis()).toEqual("Phlm.1.2,Phlm.1.6", "parsing: 'Phlm 2 VGL 6'");
3065
+ });
3066
+ it("should handle titles (de)", function() {
3067
+ expect(p.parse("Ps 3 Titel, 4:2, 5:Titel").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'Ps 3 Titel, 4:2, 5:Titel'");
3068
+ return expect(p.parse("PS 3 TITEL, 4:2, 5:TITEL").osis()).toEqual("Ps.3.1,Ps.4.2,Ps.5.1", "parsing: 'PS 3 TITEL, 4:2, 5:TITEL'");
3069
+ });
3070
+ it("should handle 'ff' (de)", function() {
3071
+ expect(p.parse("Rev 3ff, 4:2ff").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'Rev 3ff, 4:2ff'");
3072
+ return expect(p.parse("REV 3 FF, 4:2 FF").osis()).toEqual("Rev.3-Rev.22,Rev.4.2-Rev.4.11", "parsing: 'REV 3 FF, 4:2 FF'");
3073
+ });
3074
+ it("should handle 'next' (de)", function() {
3075
+ expect(p.parse("Rev 3:1f, 4:2f").osis()).toEqual("Rev.3.1-Rev.3.2,Rev.4.2-Rev.4.3", "parsing: 'Rev 3:1f, 4:2f'");
3076
+ expect(p.parse("REV 3 F, 4:2 F").osis()).toEqual("Rev.3-Rev.4,Rev.4.2-Rev.4.3", "parsing: 'REV 3 F, 4:2 F'");
3077
+ expect(p.parse("Jude 1f, 2f").osis()).toEqual("Jude.1.1-Jude.1.2,Jude.1.2-Jude.1.3", "parsing: 'Jude 1f, 2f'");
3078
+ expect(p.parse("Gen 1:31f").osis()).toEqual("Gen.1.31-Gen.2.1", "parsing: 'Gen 1:31f'");
3079
+ expect(p.parse("Gen 1:2-31f").osis()).toEqual("Gen.1.2-Gen.2.1", "parsing: 'Gen 1:2-31f'");
3080
+ expect(p.parse("Gen 1:2f-30").osis()).toEqual("Gen.1.2-Gen.1.3,Gen.1.30", "parsing: 'Gen 1:2f-30'");
3081
+ expect(p.parse("Gen 50f, Gen 50:26f").osis()).toEqual("Gen.50,Gen.50.26", "parsing: 'Gen 50f, Gen 50:26f'");
3082
+ return expect(p.parse("Gen 1:32f, Gen 51f").osis()).toEqual("", "parsing: 'Gen 1:32f, Gen 51f'");
3083
+ });
3084
+ it("should handle translations (de)", function() {
3085
+ expect(p.parse("Lev 1 (ELB)").osis_and_translations()).toEqual([["Lev.1", "ELB"]]);
3086
+ expect(p.parse("lev 1 elb").osis_and_translations()).toEqual([["Lev.1", "ELB"]]);
3087
+ expect(p.parse("Lev 1 (HFA)").osis_and_translations()).toEqual([["Lev.1", "HFA"]]);
3088
+ expect(p.parse("lev 1 hfa").osis_and_translations()).toEqual([["Lev.1", "HFA"]]);
3089
+ expect(p.parse("Lev 1 (LUTH1545)").osis_and_translations()).toEqual([["Lev.1", "LUTH1545"]]);
3090
+ expect(p.parse("lev 1 luth1545").osis_and_translations()).toEqual([["Lev.1", "LUTH1545"]]);
3091
+ expect(p.parse("Lev 1 (LUTHER)").osis_and_translations()).toEqual([["Lev.1", "LUTHER"]]);
3092
+ expect(p.parse("lev 1 luther").osis_and_translations()).toEqual([["Lev.1", "LUTHER"]]);
3093
+ expect(p.parse("Lev 1 (SCH1950)").osis_and_translations()).toEqual([["Lev.1", "SCH1950"]]);
3094
+ expect(p.parse("lev 1 sch1950").osis_and_translations()).toEqual([["Lev.1", "SCH1950"]]);
3095
+ expect(p.parse("Lev 1 (SCH2000)").osis_and_translations()).toEqual([["Lev.1", "SCH2000"]]);
3096
+ return expect(p.parse("lev 1 sch2000").osis_and_translations()).toEqual([["Lev.1", "SCH2000"]]);
3097
+ });
3098
+ it("should handle book ranges (de)", function() {
3099
+ p.set_options({
3100
+ book_alone_strategy: "full",
3101
+ book_range_strategy: "include"
3102
+ });
3103
+ return expect(p.parse("Ersten bis Dritten Johannes").osis()).toEqual("1John.1-3John.1", "parsing: 'Ersten bis Dritten Johannes'");
3104
+ });
3105
+ return it("should handle boundaries (de)", function() {
3106
+ p.set_options({
3107
+ book_alone_strategy: "full"
3108
+ });
3109
+ expect(p.parse("\u2014Matt\u2014").osis()).toEqual("Matt.1-Matt.28", "parsing: '\u2014Matt\u2014'");
3110
+ return expect(p.parse("\u201cMatt 1:1\u201d").osis()).toEqual("Matt.1.1", "parsing: '\u201cMatt 1:1\u201d'");
3111
+ });
3112
+ });
3113
+
3114
+ }).call(this);