UNPKG

bible-ref-parse

Version:

Identifies and parses Bible references (like John 3:16) in over 40 languages.

923 lines (877 loc) 162 kB
(function() { var bcv_parser; bcv_parser = require("../../dist/de-bcv-parser.js").bcv_parser; describe("Parsing", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.options.osis_compaction_strategy = "b"; return p.options.sequence_combination_strategy = "combine"; }); it("should round-trip OSIS references", function() { var bc, bcv, bcv_range, book, books, i, len, results; p.set_options({ osis_compaction_strategy: "bc" }); 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"]; results = []; for (i = 0, len = books.length; i < len; i++) { book = books[i]; bc = book + ".1"; bcv = bc + ".1"; bcv_range = bcv + "-" + bc + ".2"; expect(p.parse(bc).osis()).toEqual(bc); expect(p.parse(bcv).osis()).toEqual(bcv); results.push(expect(p.parse(bcv_range).osis()).toEqual(bcv_range)); } return results; }); it("should round-trip OSIS Apocrypha references", function() { var bc, bcv, bcv_range, book, books, i, j, len, len1, results; p.set_options({ osis_compaction_strategy: "bc", ps151_strategy: "b" }); p.include_apocrypha(true); books = ["Tob", "Jdt", "GkEsth", "Wis", "Sir", "Bar", "PrAzar", "Sus", "Bel", "SgThree", "EpJer", "1Macc", "2Macc", "3Macc", "4Macc", "1Esd", "2Esd", "PrMan", "Ps151"]; for (i = 0, len = books.length; i < len; i++) { book = books[i]; bc = book + ".1"; bcv = bc + ".1"; bcv_range = bcv + "-" + bc + ".2"; expect(p.parse(bc).osis()).toEqual(bc); expect(p.parse(bcv).osis()).toEqual(bcv); expect(p.parse(bcv_range).osis()).toEqual(bcv_range); } p.set_options({ ps151_strategy: "bc" }); expect(p.parse("Ps151.1").osis()).toEqual("Ps.151"); expect(p.parse("Ps151.1.1").osis()).toEqual("Ps.151.1"); expect(p.parse("Ps151.1-Ps151.2").osis()).toEqual("Ps.151.1-Ps.151.2"); p.include_apocrypha(false); results = []; for (j = 0, len1 = books.length; j < len1; j++) { book = books[j]; bc = book + ".1"; results.push(expect(p.parse(bc).osis()).toEqual("")); } return results; }); return it("should handle a preceding character", function() { expect(p.parse(" Gen 1").osis()).toEqual("Gen.1"); expect(p.parse("Matt5John3").osis()).toEqual("Matt.5,John.3"); expect(p.parse("1Ps 1").osis()).toEqual(""); return expect(p.parse("11Sam 1").osis()).toEqual(""); }); }); describe("Localized book Gen (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Gen (de)", function() { expect(p.parse("Ersten Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ersten Buch Mose 1:1'") expect(p.parse("Erster Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erster Buch Mose 1:1'") expect(p.parse("Erstes Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erstes Buch Mose 1:1'") expect(p.parse("Erste Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erste Buch Mose 1:1'") expect(p.parse("1. Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Buch Mose 1:1'") expect(p.parse("1 Buch Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Buch Mose 1:1'") expect(p.parse("Ersten Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ersten Mose 1:1'") expect(p.parse("Erster Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erster Mose 1:1'") expect(p.parse("Erstes Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erstes Mose 1:1'") expect(p.parse("Erste Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Erste Mose 1:1'") expect(p.parse("1. Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mose 1:1'") expect(p.parse("Genesis 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Genesis 1:1'") expect(p.parse("1 Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mose 1:1'") expect(p.parse("1. Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mos 1:1'") expect(p.parse("1 Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mos 1:1'") expect(p.parse("1. Mo 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mo 1:1'") expect(p.parse("1 Mo 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mo 1:1'") expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'") expect(p.parse("Gn 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gn 1:1'") p.include_apocrypha(false) expect(p.parse("ERSTEN BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTEN BUCH MOSE 1:1'") expect(p.parse("ERSTER BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTER BUCH MOSE 1:1'") expect(p.parse("ERSTES BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTES BUCH MOSE 1:1'") expect(p.parse("ERSTE BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTE BUCH MOSE 1:1'") expect(p.parse("1. BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. BUCH MOSE 1:1'") expect(p.parse("1 BUCH MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 BUCH MOSE 1:1'") expect(p.parse("ERSTEN MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTEN MOSE 1:1'") expect(p.parse("ERSTER MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTER MOSE 1:1'") expect(p.parse("ERSTES MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTES MOSE 1:1'") expect(p.parse("ERSTE MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'ERSTE MOSE 1:1'") expect(p.parse("1. MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MOSE 1:1'") expect(p.parse("GENESIS 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GENESIS 1:1'") expect(p.parse("1 MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MOSE 1:1'") expect(p.parse("1. MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MOS 1:1'") expect(p.parse("1 MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MOS 1:1'") expect(p.parse("1. MO 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MO 1:1'") expect(p.parse("1 MO 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MO 1:1'") expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'") expect(p.parse("GN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GN 1:1'") ; return true; }); }); describe("Localized book Exod (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Exod (de)", function() { expect(p.parse("Zweiten Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiten Buch Mose 1:1'") expect(p.parse("Zweiter Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiter Buch Mose 1:1'") expect(p.parse("Zweites Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweites Buch Mose 1:1'") expect(p.parse("Zweite Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweite Buch Mose 1:1'") expect(p.parse("2. Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Buch Mose 1:1'") expect(p.parse("Zweiten Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiten Mose 1:1'") expect(p.parse("Zweiter Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweiter Mose 1:1'") expect(p.parse("Zweites Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweites Mose 1:1'") expect(p.parse("2 Buch Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Buch Mose 1:1'") expect(p.parse("Zweite Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Zweite Mose 1:1'") expect(p.parse("2. Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mose 1:1'") expect(p.parse("2 Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mose 1:1'") expect(p.parse("2. Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mos 1:1'") expect(p.parse("Exodus 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exodus 1:1'") expect(p.parse("2 Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mos 1:1'") expect(p.parse("2. Mo 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mo 1:1'") expect(p.parse("2 Mo 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mo 1:1'") expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'") expect(p.parse("Ex 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Ex 1:1'") p.include_apocrypha(false) expect(p.parse("ZWEITEN BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITEN BUCH MOSE 1:1'") expect(p.parse("ZWEITER BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITER BUCH MOSE 1:1'") expect(p.parse("ZWEITES BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITES BUCH MOSE 1:1'") expect(p.parse("ZWEITE BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITE BUCH MOSE 1:1'") expect(p.parse("2. BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. BUCH MOSE 1:1'") expect(p.parse("ZWEITEN MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITEN MOSE 1:1'") expect(p.parse("ZWEITER MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITER MOSE 1:1'") expect(p.parse("ZWEITES MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITES MOSE 1:1'") expect(p.parse("2 BUCH MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 BUCH MOSE 1:1'") expect(p.parse("ZWEITE MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ZWEITE MOSE 1:1'") expect(p.parse("2. MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MOSE 1:1'") expect(p.parse("2 MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MOSE 1:1'") expect(p.parse("2. MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MOS 1:1'") expect(p.parse("EXODUS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXODUS 1:1'") expect(p.parse("2 MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MOS 1:1'") expect(p.parse("2. MO 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MO 1:1'") expect(p.parse("2 MO 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MO 1:1'") expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'") expect(p.parse("EX 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EX 1:1'") ; return true; }); }); describe("Localized book Bel (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Bel (de)", function() { expect(p.parse("Bel und Vom Drachen 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel und Vom Drachen 1:1'") expect(p.parse("Bel und der Drache 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel und der Drache 1:1'") expect(p.parse("Bel und de Drache 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel und de Drache 1:1'") expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'") ; return true; }); }); describe("Localized book Lev (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Lev (de)", function() { expect(p.parse("Dritten Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritten Buch Mose 1:1'") expect(p.parse("Dritter Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritter Buch Mose 1:1'") expect(p.parse("Drittes Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Drittes Buch Mose 1:1'") expect(p.parse("Dritte Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritte Buch Mose 1:1'") expect(p.parse("3. Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Buch Mose 1:1'") expect(p.parse("Dritten Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritten Mose 1:1'") expect(p.parse("Dritter Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritter Mose 1:1'") expect(p.parse("Drittes Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Drittes Mose 1:1'") expect(p.parse("3 Buch Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Buch Mose 1:1'") expect(p.parse("Dritte Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Dritte Mose 1:1'") expect(p.parse("Levitikus 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Levitikus 1:1'") expect(p.parse("3. Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mose 1:1'") expect(p.parse("3 Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mose 1:1'") expect(p.parse("3. Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mos 1:1'") expect(p.parse("3 Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mos 1:1'") expect(p.parse("3. Mo 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mo 1:1'") expect(p.parse("3 Mo 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mo 1:1'") expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'") expect(p.parse("Lv 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lv 1:1'") p.include_apocrypha(false) expect(p.parse("DRITTEN BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTEN BUCH MOSE 1:1'") expect(p.parse("DRITTER BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTER BUCH MOSE 1:1'") expect(p.parse("DRITTES BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTES BUCH MOSE 1:1'") expect(p.parse("DRITTE BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTE BUCH MOSE 1:1'") expect(p.parse("3. BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. BUCH MOSE 1:1'") expect(p.parse("DRITTEN MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTEN MOSE 1:1'") expect(p.parse("DRITTER MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTER MOSE 1:1'") expect(p.parse("DRITTES MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTES MOSE 1:1'") expect(p.parse("3 BUCH MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 BUCH MOSE 1:1'") expect(p.parse("DRITTE MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'DRITTE MOSE 1:1'") expect(p.parse("LEVITIKUS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEVITIKUS 1:1'") expect(p.parse("3. MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MOSE 1:1'") expect(p.parse("3 MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MOSE 1:1'") expect(p.parse("3. MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MOS 1:1'") expect(p.parse("3 MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MOS 1:1'") expect(p.parse("3. MO 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MO 1:1'") expect(p.parse("3 MO 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MO 1:1'") expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'") expect(p.parse("LV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LV 1:1'") ; return true; }); }); describe("Localized book Num (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Num (de)", function() { expect(p.parse("Vierten Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierten Buch Mose 1:1'") expect(p.parse("Viertes Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Viertes Buch Mose 1:1'") expect(p.parse("Vierte Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierte Buch Mose 1:1'") expect(p.parse("4. Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Buch Mose 1:1'") expect(p.parse("Vierten Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierten Mose 1:1'") expect(p.parse("Viertes Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Viertes Mose 1:1'") expect(p.parse("4 Buch Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Buch Mose 1:1'") expect(p.parse("Vierte Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Vierte Mose 1:1'") expect(p.parse("4. Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mose 1:1'") expect(p.parse("4 Mose 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mose 1:1'") expect(p.parse("4. Mos 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mos 1:1'") expect(p.parse("Numeri 1:1").osis()).toEqual("Num.1.1", "parsing: 'Numeri 1:1'") expect(p.parse("4 Mos 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mos 1:1'") expect(p.parse("4. Mo 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mo 1:1'") expect(p.parse("4 Mo 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mo 1:1'") expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'") expect(p.parse("Nm 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nm 1:1'") p.include_apocrypha(false) expect(p.parse("VIERTEN BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTEN BUCH MOSE 1:1'") expect(p.parse("VIERTES BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTES BUCH MOSE 1:1'") expect(p.parse("VIERTE BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTE BUCH MOSE 1:1'") expect(p.parse("4. BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4. BUCH MOSE 1:1'") expect(p.parse("VIERTEN MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTEN MOSE 1:1'") expect(p.parse("VIERTES MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTES MOSE 1:1'") expect(p.parse("4 BUCH MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4 BUCH MOSE 1:1'") expect(p.parse("VIERTE MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'VIERTE MOSE 1:1'") expect(p.parse("4. MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MOSE 1:1'") expect(p.parse("4 MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MOSE 1:1'") expect(p.parse("4. MOS 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MOS 1:1'") expect(p.parse("NUMERI 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUMERI 1:1'") expect(p.parse("4 MOS 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MOS 1:1'") expect(p.parse("4. MO 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MO 1:1'") expect(p.parse("4 MO 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MO 1:1'") expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'") expect(p.parse("NM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NM 1:1'") ; return true; }); }); describe("Localized book Sir (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Sir (de)", function() { expect(p.parse("Ecclesiasticus 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Ecclesiasticus 1:1'") expect(p.parse("Jesus Sirach 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Jesus Sirach 1:1'") expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'") ; return true; }); }); describe("Localized book Wis (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Wis (de)", function() { expect(p.parse("Weisheit Salomos 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Weisheit Salomos 1:1'") expect(p.parse("Weisheit 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Weisheit 1:1'") expect(p.parse("Weish 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Weish 1:1'") expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'") ; return true; }); }); describe("Localized book Lam (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Lam (de)", function() { expect(p.parse("Klagelieder Jeremias 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klagelieder Jeremias 1:1'") expect(p.parse("Klagelieder 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klagelieder 1:1'") expect(p.parse("Klag 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klag 1:1'") expect(p.parse("Klgl 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Klgl 1:1'") expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'") p.include_apocrypha(false) expect(p.parse("KLAGELIEDER JEREMIAS 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLAGELIEDER JEREMIAS 1:1'") expect(p.parse("KLAGELIEDER 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLAGELIEDER 1:1'") expect(p.parse("KLAG 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLAG 1:1'") expect(p.parse("KLGL 1:1").osis()).toEqual("Lam.1.1", "parsing: 'KLGL 1:1'") expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'") ; return true; }); }); describe("Localized book EpJer (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: EpJer (de)", function() { expect(p.parse("Brief des Jeremia 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Brief des Jeremia 1:1'") expect(p.parse("Br Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Br Jer 1:1'") expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'") ; return true; }); }); describe("Localized book Rev (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Rev (de)", function() { expect(p.parse("Offenbarung 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Offenbarung 1:1'") expect(p.parse("Offb 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Offb 1:1'") expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'") p.include_apocrypha(false) expect(p.parse("OFFENBARUNG 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OFFENBARUNG 1:1'") expect(p.parse("OFFB 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OFFB 1:1'") expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'") ; return true; }); }); describe("Localized book PrMan (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: PrMan (de)", function() { expect(p.parse("Das Gebet des Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Das Gebet des Manasse 1:1'") expect(p.parse("Das Gebet Manasses 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Das Gebet Manasses 1:1'") expect(p.parse("Gebet des Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Gebet des Manasse 1:1'") expect(p.parse("Gebet Manasses 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Gebet Manasses 1:1'") expect(p.parse("Gebet Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Gebet Manasse 1:1'") expect(p.parse("Geb Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Geb Man 1:1'") expect(p.parse("Or Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Or Man 1:1'") expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'") ; return true; }); }); describe("Localized book Deut (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Deut (de)", function() { expect(p.parse("Funftes Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Funftes Buch Mose 1:1'") expect(p.parse("Fünftes Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fünftes Buch Mose 1:1'") expect(p.parse("Deuteronomium 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deuteronomium 1:1'") expect(p.parse("5. Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Buch Mose 1:1'") expect(p.parse("Funftes Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Funftes Mose 1:1'") expect(p.parse("Fünftes Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fünftes Mose 1:1'") expect(p.parse("5 Buch Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Buch Mose 1:1'") expect(p.parse("5. Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mose 1:1'") expect(p.parse("5 Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mose 1:1'") expect(p.parse("5. Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mos 1:1'") expect(p.parse("5 Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mos 1:1'") expect(p.parse("5. Mo 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mo 1:1'") expect(p.parse("5 Mo 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mo 1:1'") expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'") expect(p.parse("Dtn 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Dtn 1:1'") expect(p.parse("Dt 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Dt 1:1'") p.include_apocrypha(false) expect(p.parse("FUNFTES BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FUNFTES BUCH MOSE 1:1'") expect(p.parse("FÜNFTES BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FÜNFTES BUCH MOSE 1:1'") expect(p.parse("DEUTERONOMIUM 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUTERONOMIUM 1:1'") expect(p.parse("5. BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. BUCH MOSE 1:1'") expect(p.parse("FUNFTES MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FUNFTES MOSE 1:1'") expect(p.parse("FÜNFTES MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FÜNFTES MOSE 1:1'") expect(p.parse("5 BUCH MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 BUCH MOSE 1:1'") expect(p.parse("5. MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MOSE 1:1'") expect(p.parse("5 MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MOSE 1:1'") expect(p.parse("5. MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MOS 1:1'") expect(p.parse("5 MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MOS 1:1'") expect(p.parse("5. MO 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MO 1:1'") expect(p.parse("5 MO 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MO 1:1'") expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'") expect(p.parse("DTN 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DTN 1:1'") expect(p.parse("DT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DT 1:1'") ; return true; }); }); describe("Localized book Josh (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Josh (de)", function() { expect(p.parse("Josua 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josua 1:1'") expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'") expect(p.parse("Jos 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jos 1:1'") p.include_apocrypha(false) expect(p.parse("JOSUA 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSUA 1:1'") expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'") expect(p.parse("JOS 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOS 1:1'") ; return true; }); }); describe("Localized book Judg (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Judg (de)", function() { expect(p.parse("Richter 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Richter 1:1'") expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'") expect(p.parse("Rich 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Rich 1:1'") expect(p.parse("Ri 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Ri 1:1'") p.include_apocrypha(false) expect(p.parse("RICHTER 1:1").osis()).toEqual("Judg.1.1", "parsing: 'RICHTER 1:1'") expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'") expect(p.parse("RICH 1:1").osis()).toEqual("Judg.1.1", "parsing: 'RICH 1:1'") expect(p.parse("RI 1:1").osis()).toEqual("Judg.1.1", "parsing: 'RI 1:1'") ; return true; }); }); describe("Localized book Ruth (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Ruth (de)", function() { expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'") expect(p.parse("Rut 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rut 1:1'") expect(p.parse("Ru 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ru 1:1'") p.include_apocrypha(false) expect(p.parse("RUTH 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTH 1:1'") expect(p.parse("RUT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUT 1:1'") expect(p.parse("RU 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RU 1:1'") ; return true; }); }); describe("Localized book 1Esd (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: 1Esd (de)", function() { expect(p.parse("Ersten Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Ersten Esdra 1:1'") expect(p.parse("Erster Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erster Esdra 1:1'") expect(p.parse("Erstes Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erstes Esdra 1:1'") expect(p.parse("Erste Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erste Esdra 1:1'") expect(p.parse("Ersten Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Ersten Esra 1:1'") expect(p.parse("Erster Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erster Esra 1:1'") expect(p.parse("Erstes Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erstes Esra 1:1'") expect(p.parse("Erste Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Erste Esra 1:1'") expect(p.parse("1. Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esdra 1:1'") expect(p.parse("1 Esdra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdra 1:1'") expect(p.parse("1. Esdr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esdr 1:1'") expect(p.parse("1. Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esra 1:1'") expect(p.parse("1 Esdr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdr 1:1'") expect(p.parse("1 Esra 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esra 1:1'") expect(p.parse("1. Esr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esr 1:1'") expect(p.parse("1 Esr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esr 1:1'") expect(p.parse("1. Es 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Es 1:1'") expect(p.parse("1 Es 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Es 1:1'") expect(p.parse("1Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1Esd 1:1'") ; return true; }); }); describe("Localized book 2Esd (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: 2Esd (de)", function() { expect(p.parse("Zweiten Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiten Esdra 1:1'") expect(p.parse("Zweiter Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiter Esdra 1:1'") expect(p.parse("Zweites Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweites Esdra 1:1'") expect(p.parse("Zweite Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweite Esdra 1:1'") expect(p.parse("Zweiten Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiten Esra 1:1'") expect(p.parse("Zweiter Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweiter Esra 1:1'") expect(p.parse("Zweites Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweites Esra 1:1'") expect(p.parse("Zweite Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Zweite Esra 1:1'") expect(p.parse("2. Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esdra 1:1'") expect(p.parse("2 Esdra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdra 1:1'") expect(p.parse("2. Esdr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esdr 1:1'") expect(p.parse("2. Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esra 1:1'") expect(p.parse("2 Esdr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdr 1:1'") expect(p.parse("2 Esra 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esra 1:1'") expect(p.parse("2. Esr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esr 1:1'") expect(p.parse("2 Esr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esr 1:1'") expect(p.parse("2. Es 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Es 1:1'") expect(p.parse("2 Es 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Es 1:1'") expect(p.parse("2Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2Esd 1:1'") ; return true; }); }); describe("Localized book Isa (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: Isa (de)", function() { expect(p.parse("Isaias 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isaias 1:1'") expect(p.parse("Jesaja 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Jesaja 1:1'") expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'") expect(p.parse("Jes 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Jes 1:1'") p.include_apocrypha(false) expect(p.parse("ISAIAS 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISAIAS 1:1'") expect(p.parse("JESAJA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'JESAJA 1:1'") expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'") expect(p.parse("JES 1:1").osis()).toEqual("Isa.1.1", "parsing: 'JES 1:1'") ; return true; }); }); describe("Localized book 2Sam (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: 2Sam (de)", function() { expect(p.parse("Zweiten Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweiten Samuel 1:1'") expect(p.parse("Zweiter Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweiter Samuel 1:1'") expect(p.parse("Zweites Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweites Samuel 1:1'") expect(p.parse("Zweite Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Zweite Samuel 1:1'") expect(p.parse("2. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Samuel 1:1'") expect(p.parse("2 Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Samuel 1:1'") expect(p.parse("2. Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Sam 1:1'") expect(p.parse("2 Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Sam 1:1'") expect(p.parse("2. Sa 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Sa 1:1'") expect(p.parse("2 Sa 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Sa 1:1'") expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'") p.include_apocrypha(false) expect(p.parse("ZWEITEN SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITEN SAMUEL 1:1'") expect(p.parse("ZWEITER SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITER SAMUEL 1:1'") expect(p.parse("ZWEITES SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITES SAMUEL 1:1'") expect(p.parse("ZWEITE SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'ZWEITE SAMUEL 1:1'") expect(p.parse("2. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAMUEL 1:1'") expect(p.parse("2 SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAMUEL 1:1'") expect(p.parse("2. SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAM 1:1'") expect(p.parse("2 SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SAM 1:1'") expect(p.parse("2. SA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SA 1:1'") expect(p.parse("2 SA 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SA 1:1'") expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'") ; return true; }); }); describe("Localized book 1Sam (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: 1Sam (de)", function() { expect(p.parse("Ersten Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Ersten Samuel 1:1'") expect(p.parse("Erster Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Erster Samuel 1:1'") expect(p.parse("Erstes Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Erstes Samuel 1:1'") expect(p.parse("Erste Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Erste Samuel 1:1'") expect(p.parse("1. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Samuel 1:1'") expect(p.parse("1 Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Samuel 1:1'") expect(p.parse("1. Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Sam 1:1'") expect(p.parse("1 Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sam 1:1'") expect(p.parse("1. Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Sa 1:1'") expect(p.parse("1 Sa 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Sa 1:1'") expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'") p.include_apocrypha(false) expect(p.parse("ERSTEN SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTEN SAMUEL 1:1'") expect(p.parse("ERSTER SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTER SAMUEL 1:1'") expect(p.parse("ERSTES SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTES SAMUEL 1:1'") expect(p.parse("ERSTE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'ERSTE SAMUEL 1:1'") expect(p.parse("1. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAMUEL 1:1'") expect(p.parse("1 SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAMUEL 1:1'") expect(p.parse("1. SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAM 1:1'") expect(p.parse("1 SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAM 1:1'") expect(p.parse("1. SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SA 1:1'") expect(p.parse("1 SA 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SA 1:1'") expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'") ; return true; }); }); describe("Localized book 2Kgs (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: 2Kgs (de)", function() { expect(p.parse("Zweiten Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiten Koenige 1:1'") expect(p.parse("Zweiter Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiter Koenige 1:1'") expect(p.parse("Zweites Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweites Koenige 1:1'") expect(p.parse("Zweite Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweite Koenige 1:1'") expect(p.parse("Zweiten Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiten Konige 1:1'") expect(p.parse("Zweiten Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiten Könige 1:1'") expect(p.parse("Zweiter Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiter Konige 1:1'") expect(p.parse("Zweiter Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweiter Könige 1:1'") expect(p.parse("Zweites Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweites Konige 1:1'") expect(p.parse("Zweites Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweites Könige 1:1'") expect(p.parse("Zweite Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweite Konige 1:1'") expect(p.parse("Zweite Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Zweite Könige 1:1'") expect(p.parse("2. Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Koenige 1:1'") expect(p.parse("2 Koenige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Koenige 1:1'") expect(p.parse("2. Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Konige 1:1'") expect(p.parse("2. Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Könige 1:1'") expect(p.parse("2 Konige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Konige 1:1'") expect(p.parse("2 Könige 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Könige 1:1'") expect(p.parse("2. Koen 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Koen 1:1'") expect(p.parse("2 Koen 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Koen 1:1'") expect(p.parse("2. Kng 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kng 1:1'") expect(p.parse("2. Koe 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Koe 1:1'") expect(p.parse("2. Kon 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kon 1:1'") expect(p.parse("2. Kön 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kön 1:1'") expect(p.parse("2 Kng 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kng 1:1'") expect(p.parse("2 Koe 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Koe 1:1'") expect(p.parse("2 Kon 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kon 1:1'") expect(p.parse("2 Kön 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kön 1:1'") expect(p.parse("2. Ko 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Ko 1:1'") expect(p.parse("2. Kö 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Kö 1:1'") expect(p.parse("2 Ko 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Ko 1:1'") expect(p.parse("2 Kö 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Kö 1:1'") expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'") p.include_apocrypha(false) expect(p.parse("ZWEITEN KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITEN KOENIGE 1:1'") expect(p.parse("ZWEITER KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITER KOENIGE 1:1'") expect(p.parse("ZWEITES KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITES KOENIGE 1:1'") expect(p.parse("ZWEITE KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITE KOENIGE 1:1'") expect(p.parse("ZWEITEN KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITEN KONIGE 1:1'") expect(p.parse("ZWEITEN KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITEN KÖNIGE 1:1'") expect(p.parse("ZWEITER KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITER KONIGE 1:1'") expect(p.parse("ZWEITER KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITER KÖNIGE 1:1'") expect(p.parse("ZWEITES KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITES KONIGE 1:1'") expect(p.parse("ZWEITES KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITES KÖNIGE 1:1'") expect(p.parse("ZWEITE KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITE KONIGE 1:1'") expect(p.parse("ZWEITE KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'ZWEITE KÖNIGE 1:1'") expect(p.parse("2. KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KOENIGE 1:1'") expect(p.parse("2 KOENIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KOENIGE 1:1'") expect(p.parse("2. KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KONIGE 1:1'") expect(p.parse("2. KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KÖNIGE 1:1'") expect(p.parse("2 KONIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KONIGE 1:1'") expect(p.parse("2 KÖNIGE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KÖNIGE 1:1'") expect(p.parse("2. KOEN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KOEN 1:1'") expect(p.parse("2 KOEN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KOEN 1:1'") expect(p.parse("2. KNG 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KNG 1:1'") expect(p.parse("2. KOE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KOE 1:1'") expect(p.parse("2. KON 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KON 1:1'") expect(p.parse("2. KÖN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KÖN 1:1'") expect(p.parse("2 KNG 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KNG 1:1'") expect(p.parse("2 KOE 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KOE 1:1'") expect(p.parse("2 KON 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KON 1:1'") expect(p.parse("2 KÖN 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KÖN 1:1'") expect(p.parse("2. KO 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KO 1:1'") expect(p.parse("2. KÖ 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. KÖ 1:1'") expect(p.parse("2 KO 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KO 1:1'") expect(p.parse("2 KÖ 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 KÖ 1:1'") expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'") ; return true; }); }); describe("Localized book 1Kgs (de)", function() { var p; p = {}; beforeEach(function() { p = new bcv_parser(); p.set_options({ book_alone_strategy: "ignore", book_sequence_strategy: "ignore", osis_compaction_strategy: "bc", captive_end_digits_strategy: "delete" }); return p.include_apocrypha(true); }); return it("should handle book: 1Kgs (de)", function() { expect(p.parse("Ersten Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Ersten Koenige 1:1'") expect(p.parse("Erster Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erster Koenige 1:1'") expect(p.parse("Erstes Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erstes Koenige 1:1'") expect(p.parse("Erste Koenige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erste Koenige 1:1'") expect(p.parse("Ersten Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Ersten Konige 1:1'") expect(p.parse("Ersten Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Ersten Könige 1:1'") expect(p.parse("Erster Konige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erster Konige 1:1'") expect(p.parse("Erster Könige 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Erster Könige 1:1'") expect(p.parse("Erstes Konige 1:1").osis()).toEqu