UNPKG

bible-ref-parse

Version:

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

776 lines (748 loc) 244 kB
(function() { var bcv_parser; bcv_parser = require("../../dist/is-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 (is)", 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 (is)", function() { expect(p.parse("Fyrsta bok Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta bok Mose 1:1'") expect(p.parse("Fyrsta bok Móse 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta bok Móse 1:1'") expect(p.parse("Fyrsta bók Mose 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta bók Mose 1:1'") expect(p.parse("Fyrsta bók Móse 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta bók Móse 1:1'") expect(p.parse("Fyrsta Mosebok 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta Mosebok 1:1'") expect(p.parse("Fyrsta Mosebók 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta Mosebók 1:1'") expect(p.parse("Fyrsta Mósebok 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta Mósebok 1:1'") expect(p.parse("Fyrsta Mósebók 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Fyrsta Mósebók 1:1'") expect(p.parse("1. Mosebok 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mosebok 1:1'") expect(p.parse("1. Mosebók 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mosebók 1:1'") expect(p.parse("1. Mósebok 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mósebok 1:1'") expect(p.parse("1. Mósebók 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mósebók 1:1'") expect(p.parse("I. Mosebok 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. Mosebok 1:1'") expect(p.parse("I. Mosebók 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. Mosebók 1:1'") expect(p.parse("I. Mósebok 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. Mósebok 1:1'") expect(p.parse("I. Mósebók 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. Mósebók 1:1'") expect(p.parse("1 Mosebok 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mosebok 1:1'") expect(p.parse("1 Mosebók 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mosebók 1:1'") expect(p.parse("1 Mósebok 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mósebok 1:1'") expect(p.parse("1 Mósebók 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mósebók 1:1'") expect(p.parse("I Mosebok 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I Mosebok 1:1'") expect(p.parse("I Mosebók 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I Mosebók 1:1'") expect(p.parse("I Mósebok 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I Mósebok 1:1'") expect(p.parse("I Mósebók 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I Mósebók 1:1'") expect(p.parse("Genesis 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Genesis 1:1'") expect(p.parse("1. Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mos 1:1'") expect(p.parse("1. Mós 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. Mós 1:1'") expect(p.parse("I. Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. Mos 1:1'") expect(p.parse("I. Mós 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. Mós 1:1'") expect(p.parse("1 Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mos 1:1'") expect(p.parse("1 Mós 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 Mós 1:1'") expect(p.parse("I Mos 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I Mos 1:1'") expect(p.parse("I Mós 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I Mós 1:1'") expect(p.parse("1Mós 1:1").osis()).toEqual("Gen.1.1", "parsing: '1Mós 1:1'") expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'") p.include_apocrypha(false) expect(p.parse("FYRSTA BOK MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA BOK MOSE 1:1'") expect(p.parse("FYRSTA BOK MÓSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA BOK MÓSE 1:1'") expect(p.parse("FYRSTA BÓK MOSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA BÓK MOSE 1:1'") expect(p.parse("FYRSTA BÓK MÓSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA BÓK MÓSE 1:1'") expect(p.parse("FYRSTA MOSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA MOSEBOK 1:1'") expect(p.parse("FYRSTA MOSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA MOSEBÓK 1:1'") expect(p.parse("FYRSTA MÓSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA MÓSEBOK 1:1'") expect(p.parse("FYRSTA MÓSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'FYRSTA MÓSEBÓK 1:1'") expect(p.parse("1. MOSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MOSEBOK 1:1'") expect(p.parse("1. MOSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MOSEBÓK 1:1'") expect(p.parse("1. MÓSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MÓSEBOK 1:1'") expect(p.parse("1. MÓSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MÓSEBÓK 1:1'") expect(p.parse("I. MOSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. MOSEBOK 1:1'") expect(p.parse("I. MOSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. MOSEBÓK 1:1'") expect(p.parse("I. MÓSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. MÓSEBOK 1:1'") expect(p.parse("I. MÓSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. MÓSEBÓK 1:1'") expect(p.parse("1 MOSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MOSEBOK 1:1'") expect(p.parse("1 MOSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MOSEBÓK 1:1'") expect(p.parse("1 MÓSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MÓSEBOK 1:1'") expect(p.parse("1 MÓSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MÓSEBÓK 1:1'") expect(p.parse("I MOSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I MOSEBOK 1:1'") expect(p.parse("I MOSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I MOSEBÓK 1:1'") expect(p.parse("I MÓSEBOK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I MÓSEBOK 1:1'") expect(p.parse("I MÓSEBÓK 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I MÓSEBÓK 1:1'") expect(p.parse("GENESIS 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GENESIS 1:1'") expect(p.parse("1. MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MOS 1:1'") expect(p.parse("1. MÓS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1. MÓS 1:1'") expect(p.parse("I. MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. MOS 1:1'") expect(p.parse("I. MÓS 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I. MÓS 1:1'") expect(p.parse("1 MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MOS 1:1'") expect(p.parse("1 MÓS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1 MÓS 1:1'") expect(p.parse("I MOS 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I MOS 1:1'") expect(p.parse("I MÓS 1:1").osis()).toEqual("Gen.1.1", "parsing: 'I MÓS 1:1'") expect(p.parse("1MÓS 1:1").osis()).toEqual("Gen.1.1", "parsing: '1MÓS 1:1'") expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'") ; return true; }); }); describe("Localized book Exod (is)", 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 (is)", function() { expect(p.parse("Onnur bok Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur bok Mose 1:1'") expect(p.parse("Onnur bok Móse 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur bok Móse 1:1'") expect(p.parse("Onnur bók Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur bók Mose 1:1'") expect(p.parse("Onnur bók Móse 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur bók Móse 1:1'") expect(p.parse("Önnur bok Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur bok Mose 1:1'") expect(p.parse("Önnur bok Móse 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur bok Móse 1:1'") expect(p.parse("Önnur bók Mose 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur bók Mose 1:1'") expect(p.parse("Önnur bók Móse 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur bók Móse 1:1'") expect(p.parse("Onnur Mosebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur Mosebok 1:1'") expect(p.parse("Onnur Mosebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur Mosebók 1:1'") expect(p.parse("Onnur Mósebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur Mósebok 1:1'") expect(p.parse("Onnur Mósebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Onnur Mósebók 1:1'") expect(p.parse("Önnur Mosebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur Mosebok 1:1'") expect(p.parse("Önnur Mosebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur Mosebók 1:1'") expect(p.parse("Önnur Mósebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur Mósebok 1:1'") expect(p.parse("Önnur Mósebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Önnur Mósebók 1:1'") expect(p.parse("II. Mosebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. Mosebok 1:1'") expect(p.parse("II. Mosebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. Mosebók 1:1'") expect(p.parse("II. Mósebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. Mósebok 1:1'") expect(p.parse("II. Mósebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. Mósebók 1:1'") expect(p.parse("2. Mosebok 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mosebok 1:1'") expect(p.parse("2. Mosebók 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mosebók 1:1'") expect(p.parse("2. Mósebok 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mósebok 1:1'") expect(p.parse("2. Mósebók 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mósebók 1:1'") expect(p.parse("II Mosebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II Mosebok 1:1'") expect(p.parse("II Mosebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II Mosebók 1:1'") expect(p.parse("II Mósebok 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II Mósebok 1:1'") expect(p.parse("II Mósebók 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II Mósebók 1:1'") expect(p.parse("2 Mosebok 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mosebok 1:1'") expect(p.parse("2 Mosebók 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mosebók 1:1'") expect(p.parse("2 Mósebok 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mósebok 1:1'") expect(p.parse("2 Mósebók 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mósebók 1:1'") expect(p.parse("II. Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. Mos 1:1'") expect(p.parse("II. Mós 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. Mós 1:1'") expect(p.parse("2. Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mos 1:1'") expect(p.parse("2. Mós 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. Mós 1:1'") expect(p.parse("Exodus 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exodus 1:1'") expect(p.parse("II Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II Mos 1:1'") expect(p.parse("II Mós 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II Mós 1:1'") expect(p.parse("2 Mos 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mos 1:1'") expect(p.parse("2 Mós 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 Mós 1:1'") expect(p.parse("2Mós 1:1").osis()).toEqual("Exod.1.1", "parsing: '2Mós 1:1'") expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'") p.include_apocrypha(false) expect(p.parse("ONNUR BOK MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR BOK MOSE 1:1'") expect(p.parse("ONNUR BOK MÓSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR BOK MÓSE 1:1'") expect(p.parse("ONNUR BÓK MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR BÓK MOSE 1:1'") expect(p.parse("ONNUR BÓK MÓSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR BÓK MÓSE 1:1'") expect(p.parse("ÖNNUR BOK MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR BOK MOSE 1:1'") expect(p.parse("ÖNNUR BOK MÓSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR BOK MÓSE 1:1'") expect(p.parse("ÖNNUR BÓK MOSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR BÓK MOSE 1:1'") expect(p.parse("ÖNNUR BÓK MÓSE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR BÓK MÓSE 1:1'") expect(p.parse("ONNUR MOSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR MOSEBOK 1:1'") expect(p.parse("ONNUR MOSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR MOSEBÓK 1:1'") expect(p.parse("ONNUR MÓSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR MÓSEBOK 1:1'") expect(p.parse("ONNUR MÓSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ONNUR MÓSEBÓK 1:1'") expect(p.parse("ÖNNUR MOSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR MOSEBOK 1:1'") expect(p.parse("ÖNNUR MOSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR MOSEBÓK 1:1'") expect(p.parse("ÖNNUR MÓSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR MÓSEBOK 1:1'") expect(p.parse("ÖNNUR MÓSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'ÖNNUR MÓSEBÓK 1:1'") expect(p.parse("II. MOSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. MOSEBOK 1:1'") expect(p.parse("II. MOSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. MOSEBÓK 1:1'") expect(p.parse("II. MÓSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. MÓSEBOK 1:1'") expect(p.parse("II. MÓSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. MÓSEBÓK 1:1'") expect(p.parse("2. MOSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MOSEBOK 1:1'") expect(p.parse("2. MOSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MOSEBÓK 1:1'") expect(p.parse("2. MÓSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MÓSEBOK 1:1'") expect(p.parse("2. MÓSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MÓSEBÓK 1:1'") expect(p.parse("II MOSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II MOSEBOK 1:1'") expect(p.parse("II MOSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II MOSEBÓK 1:1'") expect(p.parse("II MÓSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II MÓSEBOK 1:1'") expect(p.parse("II MÓSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II MÓSEBÓK 1:1'") expect(p.parse("2 MOSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MOSEBOK 1:1'") expect(p.parse("2 MOSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MOSEBÓK 1:1'") expect(p.parse("2 MÓSEBOK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MÓSEBOK 1:1'") expect(p.parse("2 MÓSEBÓK 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MÓSEBÓK 1:1'") expect(p.parse("II. MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. MOS 1:1'") expect(p.parse("II. MÓS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II. MÓS 1:1'") expect(p.parse("2. MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MOS 1:1'") expect(p.parse("2. MÓS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2. MÓS 1:1'") expect(p.parse("EXODUS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXODUS 1:1'") expect(p.parse("II MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II MOS 1:1'") expect(p.parse("II MÓS 1:1").osis()).toEqual("Exod.1.1", "parsing: 'II MÓS 1:1'") expect(p.parse("2 MOS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MOS 1:1'") expect(p.parse("2 MÓS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2 MÓS 1:1'") expect(p.parse("2MÓS 1:1").osis()).toEqual("Exod.1.1", "parsing: '2MÓS 1:1'") expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'") ; return true; }); }); describe("Localized book Bel (is)", 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 (is)", function() { expect(p.parse("Bel og drekinn 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel og drekinn 1:1'") expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'") ; return true; }); }); describe("Localized book Lev (is)", 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 (is)", function() { expect(p.parse("Þriðja bok Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja bok Mose 1:1'") expect(p.parse("Þriðja bok Móse 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja bok Móse 1:1'") expect(p.parse("Þriðja bók Mose 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja bók Mose 1:1'") expect(p.parse("Þriðja bók Móse 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja bók Móse 1:1'") expect(p.parse("Þriðja Mosebok 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja Mosebok 1:1'") expect(p.parse("Þriðja Mosebók 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja Mosebók 1:1'") expect(p.parse("Þriðja Mósebok 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja Mósebok 1:1'") expect(p.parse("Þriðja Mósebók 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Þriðja Mósebók 1:1'") expect(p.parse("III. Mosebok 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. Mosebok 1:1'") expect(p.parse("III. Mosebók 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. Mosebók 1:1'") expect(p.parse("III. Mósebok 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. Mósebok 1:1'") expect(p.parse("III. Mósebók 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. Mósebók 1:1'") expect(p.parse("III Mosebok 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III Mosebok 1:1'") expect(p.parse("III Mosebók 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III Mosebók 1:1'") expect(p.parse("III Mósebok 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III Mósebok 1:1'") expect(p.parse("III Mósebók 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III Mósebók 1:1'") expect(p.parse("3. Mosebok 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mosebok 1:1'") expect(p.parse("3. Mosebók 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mosebók 1:1'") expect(p.parse("3. Mósebok 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mósebok 1:1'") expect(p.parse("3. Mósebók 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mósebók 1:1'") expect(p.parse("3 Mosebok 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mosebok 1:1'") expect(p.parse("3 Mosebók 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mosebók 1:1'") expect(p.parse("3 Mósebok 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mósebok 1:1'") expect(p.parse("3 Mósebók 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mósebók 1:1'") expect(p.parse("Leviticus 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Leviticus 1:1'") expect(p.parse("III. Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. Mos 1:1'") expect(p.parse("III. Mós 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. Mós 1:1'") expect(p.parse("III Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III Mos 1:1'") expect(p.parse("III Mós 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III Mós 1:1'") expect(p.parse("3. Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mos 1:1'") expect(p.parse("3. Mós 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. Mós 1:1'") expect(p.parse("3 Mos 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mos 1:1'") expect(p.parse("3 Mós 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 Mós 1:1'") expect(p.parse("3Mós 1:1").osis()).toEqual("Lev.1.1", "parsing: '3Mós 1:1'") expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'") p.include_apocrypha(false) expect(p.parse("ÞRIÐJA BOK MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA BOK MOSE 1:1'") expect(p.parse("ÞRIÐJA BOK MÓSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA BOK MÓSE 1:1'") expect(p.parse("ÞRIÐJA BÓK MOSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA BÓK MOSE 1:1'") expect(p.parse("ÞRIÐJA BÓK MÓSE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA BÓK MÓSE 1:1'") expect(p.parse("ÞRIÐJA MOSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA MOSEBOK 1:1'") expect(p.parse("ÞRIÐJA MOSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA MOSEBÓK 1:1'") expect(p.parse("ÞRIÐJA MÓSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA MÓSEBOK 1:1'") expect(p.parse("ÞRIÐJA MÓSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'ÞRIÐJA MÓSEBÓK 1:1'") expect(p.parse("III. MOSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. MOSEBOK 1:1'") expect(p.parse("III. MOSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. MOSEBÓK 1:1'") expect(p.parse("III. MÓSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. MÓSEBOK 1:1'") expect(p.parse("III. MÓSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. MÓSEBÓK 1:1'") expect(p.parse("III MOSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III MOSEBOK 1:1'") expect(p.parse("III MOSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III MOSEBÓK 1:1'") expect(p.parse("III MÓSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III MÓSEBOK 1:1'") expect(p.parse("III MÓSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III MÓSEBÓK 1:1'") expect(p.parse("3. MOSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MOSEBOK 1:1'") expect(p.parse("3. MOSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MOSEBÓK 1:1'") expect(p.parse("3. MÓSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MÓSEBOK 1:1'") expect(p.parse("3. MÓSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MÓSEBÓK 1:1'") expect(p.parse("3 MOSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MOSEBOK 1:1'") expect(p.parse("3 MOSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MOSEBÓK 1:1'") expect(p.parse("3 MÓSEBOK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MÓSEBOK 1:1'") expect(p.parse("3 MÓSEBÓK 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MÓSEBÓK 1:1'") expect(p.parse("LEVITICUS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEVITICUS 1:1'") expect(p.parse("III. MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. MOS 1:1'") expect(p.parse("III. MÓS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III. MÓS 1:1'") expect(p.parse("III MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III MOS 1:1'") expect(p.parse("III MÓS 1:1").osis()).toEqual("Lev.1.1", "parsing: 'III MÓS 1:1'") expect(p.parse("3. MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MOS 1:1'") expect(p.parse("3. MÓS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3. MÓS 1:1'") expect(p.parse("3 MOS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MOS 1:1'") expect(p.parse("3 MÓS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3 MÓS 1:1'") expect(p.parse("3MÓS 1:1").osis()).toEqual("Lev.1.1", "parsing: '3MÓS 1:1'") expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'") ; return true; }); }); describe("Localized book Num (is)", 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 (is)", function() { expect(p.parse("Fjorða bok Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða bok Mose 1:1'") expect(p.parse("Fjorða bok Móse 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða bok Móse 1:1'") expect(p.parse("Fjorða bók Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða bók Mose 1:1'") expect(p.parse("Fjorða bók Móse 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða bók Móse 1:1'") expect(p.parse("Fjórða bok Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða bok Mose 1:1'") expect(p.parse("Fjórða bok Móse 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða bok Móse 1:1'") expect(p.parse("Fjórða bók Mose 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða bók Mose 1:1'") expect(p.parse("Fjórða bók Móse 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða bók Móse 1:1'") expect(p.parse("Fjorða Mosebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða Mosebok 1:1'") expect(p.parse("Fjorða Mosebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða Mosebók 1:1'") expect(p.parse("Fjorða Mósebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða Mósebok 1:1'") expect(p.parse("Fjorða Mósebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjorða Mósebók 1:1'") expect(p.parse("Fjórða Mosebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða Mosebok 1:1'") expect(p.parse("Fjórða Mosebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða Mosebók 1:1'") expect(p.parse("Fjórða Mósebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða Mósebok 1:1'") expect(p.parse("Fjórða Mósebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'Fjórða Mósebók 1:1'") expect(p.parse("IV. Mosebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. Mosebok 1:1'") expect(p.parse("IV. Mosebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. Mosebók 1:1'") expect(p.parse("IV. Mósebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. Mósebok 1:1'") expect(p.parse("IV. Mósebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. Mósebók 1:1'") expect(p.parse("4. Mosebok 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mosebok 1:1'") expect(p.parse("4. Mosebók 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mosebók 1:1'") expect(p.parse("4. Mósebok 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mósebok 1:1'") expect(p.parse("4. Mósebók 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mósebók 1:1'") expect(p.parse("IV Mosebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV Mosebok 1:1'") expect(p.parse("IV Mosebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV Mosebók 1:1'") expect(p.parse("IV Mósebok 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV Mósebok 1:1'") expect(p.parse("IV Mósebók 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV Mósebók 1:1'") expect(p.parse("4 Mosebok 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mosebok 1:1'") expect(p.parse("4 Mosebók 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mosebók 1:1'") expect(p.parse("4 Mósebok 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mósebok 1:1'") expect(p.parse("4 Mósebók 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mósebók 1:1'") expect(p.parse("IV. Mos 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. Mos 1:1'") expect(p.parse("IV. Mós 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. Mós 1:1'") expect(p.parse("4. Mos 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mos 1:1'") expect(p.parse("4. Mós 1:1").osis()).toEqual("Num.1.1", "parsing: '4. Mós 1:1'") expect(p.parse("IV Mos 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV Mos 1:1'") expect(p.parse("IV Mós 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV Mós 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 Mós 1:1").osis()).toEqual("Num.1.1", "parsing: '4 Mós 1:1'") expect(p.parse("4Mós 1:1").osis()).toEqual("Num.1.1", "parsing: '4Mós 1:1'") expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'") p.include_apocrypha(false) expect(p.parse("FJORÐA BOK MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA BOK MOSE 1:1'") expect(p.parse("FJORÐA BOK MÓSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA BOK MÓSE 1:1'") expect(p.parse("FJORÐA BÓK MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA BÓK MOSE 1:1'") expect(p.parse("FJORÐA BÓK MÓSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA BÓK MÓSE 1:1'") expect(p.parse("FJÓRÐA BOK MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA BOK MOSE 1:1'") expect(p.parse("FJÓRÐA BOK MÓSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA BOK MÓSE 1:1'") expect(p.parse("FJÓRÐA BÓK MOSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA BÓK MOSE 1:1'") expect(p.parse("FJÓRÐA BÓK MÓSE 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA BÓK MÓSE 1:1'") expect(p.parse("FJORÐA MOSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA MOSEBOK 1:1'") expect(p.parse("FJORÐA MOSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA MOSEBÓK 1:1'") expect(p.parse("FJORÐA MÓSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA MÓSEBOK 1:1'") expect(p.parse("FJORÐA MÓSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJORÐA MÓSEBÓK 1:1'") expect(p.parse("FJÓRÐA MOSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA MOSEBOK 1:1'") expect(p.parse("FJÓRÐA MOSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA MOSEBÓK 1:1'") expect(p.parse("FJÓRÐA MÓSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA MÓSEBOK 1:1'") expect(p.parse("FJÓRÐA MÓSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'FJÓRÐA MÓSEBÓK 1:1'") expect(p.parse("IV. MOSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. MOSEBOK 1:1'") expect(p.parse("IV. MOSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. MOSEBÓK 1:1'") expect(p.parse("IV. MÓSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. MÓSEBOK 1:1'") expect(p.parse("IV. MÓSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. MÓSEBÓK 1:1'") expect(p.parse("4. MOSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MOSEBOK 1:1'") expect(p.parse("4. MOSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MOSEBÓK 1:1'") expect(p.parse("4. MÓSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MÓSEBOK 1:1'") expect(p.parse("4. MÓSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MÓSEBÓK 1:1'") expect(p.parse("IV MOSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV MOSEBOK 1:1'") expect(p.parse("IV MOSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV MOSEBÓK 1:1'") expect(p.parse("IV MÓSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV MÓSEBOK 1:1'") expect(p.parse("IV MÓSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV MÓSEBÓK 1:1'") expect(p.parse("4 MOSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MOSEBOK 1:1'") expect(p.parse("4 MOSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MOSEBÓK 1:1'") expect(p.parse("4 MÓSEBOK 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MÓSEBOK 1:1'") expect(p.parse("4 MÓSEBÓK 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MÓSEBÓK 1:1'") expect(p.parse("IV. MOS 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. MOS 1:1'") expect(p.parse("IV. MÓS 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV. MÓS 1:1'") expect(p.parse("4. MOS 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MOS 1:1'") expect(p.parse("4. MÓS 1:1").osis()).toEqual("Num.1.1", "parsing: '4. MÓS 1:1'") expect(p.parse("IV MOS 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV MOS 1:1'") expect(p.parse("IV MÓS 1:1").osis()).toEqual("Num.1.1", "parsing: 'IV MÓS 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 MÓS 1:1").osis()).toEqual("Num.1.1", "parsing: '4 MÓS 1:1'") expect(p.parse("4MÓS 1:1").osis()).toEqual("Num.1.1", "parsing: '4MÓS 1:1'") expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'") ; return true; }); }); describe("Localized book Sir (is)", 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 (is)", function() { expect(p.parse("Siraksbok 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Siraksbok 1:1'") expect(p.parse("Siraksbók 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Siraksbók 1:1'") expect(p.parse("Síraksbok 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Síraksbok 1:1'") expect(p.parse("Síraksbók 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Síraksbók 1:1'") expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'") expect(p.parse("Sír 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sír 1:1'") ; return true; }); }); describe("Localized book Wis (is)", 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 (is)", function() { expect(p.parse("Speki Salomons 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Speki Salomons 1:1'") expect(p.parse("Speki Salómons 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Speki Salómons 1:1'") expect(p.parse("SSal 1:1").osis()).toEqual("Wis.1.1", "parsing: 'SSal 1:1'") expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'") ; return true; }); }); describe("Localized book Lam (is)", 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 (is)", function() { expect(p.parse("Harmljoðin 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Harmljoðin 1:1'") expect(p.parse("Harmljóðin 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Harmljóðin 1:1'") expect(p.parse("Hlj 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Hlj 1:1'") expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'") p.include_apocrypha(false) expect(p.parse("HARMLJOÐIN 1:1").osis()).toEqual("Lam.1.1", "parsing: 'HARMLJOÐIN 1:1'") expect(p.parse("HARMLJÓÐIN 1:1").osis()).toEqual("Lam.1.1", "parsing: 'HARMLJÓÐIN 1:1'") expect(p.parse("HLJ 1:1").osis()).toEqual("Lam.1.1", "parsing: 'HLJ 1:1'") expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'") ; return true; }); }); describe("Localized book EpJer (is)", 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 (is)", function() { expect(p.parse("Bref Jeremia 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Bref Jeremia 1:1'") expect(p.parse("Bref Jeremía 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Bref Jeremía 1:1'") expect(p.parse("Bréf Jeremia 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Bréf Jeremia 1:1'") expect(p.parse("Bréf Jeremía 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Bréf Jeremía 1:1'") expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'") expect(p.parse("BJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'BJer 1:1'") ; return true; }); }); describe("Localized book Rev (is)", 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 (is)", function() { expect(p.parse("Opinberunarbok Johannesar 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberunarbok Johannesar 1:1'") expect(p.parse("Opinberunarbok Jóhannesar 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberunarbok Jóhannesar 1:1'") expect(p.parse("Opinberunarbók Johannesar 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberunarbók Johannesar 1:1'") expect(p.parse("Opinberunarbók Jóhannesar 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberunarbók Jóhannesar 1:1'") expect(p.parse("Opinberun Johannesar 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberun Johannesar 1:1'") expect(p.parse("Opinberun Jóhannesar 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberun Jóhannesar 1:1'") expect(p.parse("Opinberunarbokin 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberunarbokin 1:1'") expect(p.parse("Opinberunarbókin 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opinberunarbókin 1:1'") expect(p.parse("Opb 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Opb 1:1'") expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'") p.include_apocrypha(false) expect(p.parse("OPINBERUNARBOK JOHANNESAR 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUNARBOK JOHANNESAR 1:1'") expect(p.parse("OPINBERUNARBOK JÓHANNESAR 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUNARBOK JÓHANNESAR 1:1'") expect(p.parse("OPINBERUNARBÓK JOHANNESAR 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUNARBÓK JOHANNESAR 1:1'") expect(p.parse("OPINBERUNARBÓK JÓHANNESAR 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUNARBÓK JÓHANNESAR 1:1'") expect(p.parse("OPINBERUN JOHANNESAR 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUN JOHANNESAR 1:1'") expect(p.parse("OPINBERUN JÓHANNESAR 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUN JÓHANNESAR 1:1'") expect(p.parse("OPINBERUNARBOKIN 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUNARBOKIN 1:1'") expect(p.parse("OPINBERUNARBÓKIN 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPINBERUNARBÓKIN 1:1'") expect(p.parse("OPB 1:1").osis()).toEqual("Rev.1.1", "parsing: 'OPB 1:1'") expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'") ; return true; }); }); describe("Localized book PrMan (is)", 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 (is)", function() { expect(p.parse("Bæn Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Bæn Manasse 1:1'") expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'") expect(p.parse("BMn 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'BMn 1:1'") ; return true; }); }); describe("Localized book Deut (is)", 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 (is)", function() { expect(p.parse("Fimmta bok Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta bok Mose 1:1'") expect(p.parse("Fimmta bok Móse 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta bok Móse 1:1'") expect(p.parse("Fimmta bók Mose 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta bók Mose 1:1'") expect(p.parse("Fimmta bók Móse 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta bók Móse 1:1'") expect(p.parse("Fimmta Mosebok 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta Mosebok 1:1'") expect(p.parse("Fimmta Mosebók 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta Mosebók 1:1'") expect(p.parse("Fimmta Mósebok 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta Mósebok 1:1'") expect(p.parse("Fimmta Mósebók 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Fimmta Mósebók 1:1'") expect(p.parse("Deuteronomium 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deuteronomium 1:1'") expect(p.parse("5. Mosebok 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mosebok 1:1'") expect(p.parse("5. Mosebók 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mosebók 1:1'") expect(p.parse("5. Mósebok 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mósebok 1:1'") expect(p.parse("5. Mósebók 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mósebók 1:1'") expect(p.parse("V. Mosebok 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. Mosebok 1:1'") expect(p.parse("V. Mosebók 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. Mosebók 1:1'") expect(p.parse("V. Mósebok 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. Mósebok 1:1'") expect(p.parse("V. Mósebók 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. Mósebók 1:1'") expect(p.parse("5 Mosebok 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mosebok 1:1'") expect(p.parse("5 Mosebók 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mosebók 1:1'") expect(p.parse("5 Mósebok 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mósebok 1:1'") expect(p.parse("5 Mósebók 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mósebók 1:1'") expect(p.parse("V Mosebok 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V Mosebok 1:1'") expect(p.parse("V Mosebók 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V Mosebók 1:1'") expect(p.parse("V Mósebok 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V Mósebok 1:1'") expect(p.parse("V Mósebók 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V Mósebók 1:1'") expect(p.parse("5. Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mos 1:1'") expect(p.parse("5. Mós 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. Mós 1:1'") expect(p.parse("V. Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. Mos 1:1'") expect(p.parse("V. Mós 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. Mós 1:1'") expect(p.parse("5 Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mos 1:1'") expect(p.parse("5 Mós 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 Mós 1:1'") expect(p.parse("V Mos 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V Mos 1:1'") expect(p.parse("V Mós 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V Mós 1:1'") expect(p.parse("5Mós 1:1").osis()).toEqual("Deut.1.1", "parsing: '5Mós 1:1'") expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'") p.include_apocrypha(false) expect(p.parse("FIMMTA BOK MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA BOK MOSE 1:1'") expect(p.parse("FIMMTA BOK MÓSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA BOK MÓSE 1:1'") expect(p.parse("FIMMTA BÓK MOSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA BÓK MOSE 1:1'") expect(p.parse("FIMMTA BÓK MÓSE 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA BÓK MÓSE 1:1'") expect(p.parse("FIMMTA MOSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA MOSEBOK 1:1'") expect(p.parse("FIMMTA MOSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA MOSEBÓK 1:1'") expect(p.parse("FIMMTA MÓSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA MÓSEBOK 1:1'") expect(p.parse("FIMMTA MÓSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'FIMMTA MÓSEBÓK 1:1'") expect(p.parse("DEUTERONOMIUM 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUTERONOMIUM 1:1'") expect(p.parse("5. MOSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MOSEBOK 1:1'") expect(p.parse("5. MOSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MOSEBÓK 1:1'") expect(p.parse("5. MÓSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MÓSEBOK 1:1'") expect(p.parse("5. MÓSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MÓSEBÓK 1:1'") expect(p.parse("V. MOSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. MOSEBOK 1:1'") expect(p.parse("V. MOSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. MOSEBÓK 1:1'") expect(p.parse("V. MÓSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. MÓSEBOK 1:1'") expect(p.parse("V. MÓSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. MÓSEBÓK 1:1'") expect(p.parse("5 MOSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MOSEBOK 1:1'") expect(p.parse("5 MOSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MOSEBÓK 1:1'") expect(p.parse("5 MÓSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MÓSEBOK 1:1'") expect(p.parse("5 MÓSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MÓSEBÓK 1:1'") expect(p.parse("V MOSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V MOSEBOK 1:1'") expect(p.parse("V MOSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V MOSEBÓK 1:1'") expect(p.parse("V MÓSEBOK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V MÓSEBOK 1:1'") expect(p.parse("V MÓSEBÓK 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V MÓSEBÓK 1:1'") expect(p.parse("5. MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MOS 1:1'") expect(p.parse("5. MÓS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5. MÓS 1:1'") expect(p.parse("V. MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. MOS 1:1'") expect(p.parse("V. MÓS 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V. MÓS 1:1'") expect(p.parse("5 MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MOS 1:1'") expect(p.parse("5 MÓS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5 MÓS 1:1'") expect(p.parse("V MOS 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V MOS 1:1'") expect(p.parse("V MÓS 1:1").osis()).toEqual("Deut.1.1", "parsing: 'V MÓS 1:1'") expect(p.parse("5MÓS 1:1").osis()).toEqual("Deut.1.1", "parsing: '5MÓS 1:1'") expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'") ; return true; }); }); describe("Localized book Josh (is)", 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 (is)", function() { expect(p.parse("Josuabok 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josuabok 1:1'") expect(p.parse("Josuabók 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josuabók 1:1'") expect(p.parse("Josúabok 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josúabok 1:1'") expect(p.parse("Josúabók 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josúabók 1:1'") expect(p.parse("Jósuabok 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jósuabok 1:1'") expect(p.parse("Jósuabók 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jósuabók 1:1'") expect(p.parse("Jósúabok 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jósúabok 1:1'") expect(p.parse("Jósúabók 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jósúabók 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'") expect(p.parse("Jós 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Jós 1:1'") p.in