bible-ref-parse
Version:
Identifies and parses Bible references (like John 3:16) in over 40 languages.
923 lines (877 loc) • 216 kB
JavaScript
(function() {
var bcv_parser;
bcv_parser = require("../../dist/fr-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 (fr)", 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 (fr)", function() {
expect(p.parse("Genese 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Genese 1:1'")
expect(p.parse("Genèse 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Genèse 1:1'")
expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'")
expect(p.parse("Ge 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Ge 1:1'")
expect(p.parse("Gn 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gn 1:1'")
p.include_apocrypha(false)
expect(p.parse("GENESE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GENESE 1:1'")
expect(p.parse("GENÈSE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GENÈSE 1:1'")
expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'")
expect(p.parse("GE 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GE 1:1'")
expect(p.parse("GN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GN 1:1'")
;
return true;
});
});
describe("Localized book Exod (fr)", 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 (fr)", function() {
expect(p.parse("Exode 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exode 1:1'")
expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'")
expect(p.parse("Exo 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exo 1:1'")
expect(p.parse("Ex 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Ex 1:1'")
p.include_apocrypha(false)
expect(p.parse("EXODE 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXODE 1:1'")
expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'")
expect(p.parse("EXO 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXO 1:1'")
expect(p.parse("EX 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EX 1:1'")
;
return true;
});
});
describe("Localized book Bel (fr)", 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 (fr)", function() {
expect(p.parse("Bel et le Serpent 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le Serpent 1:1'")
expect(p.parse("Bel et le serpent 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le serpent 1:1'")
expect(p.parse("Bel et le Dragon 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le Dragon 1:1'")
expect(p.parse("Bel et le dragon 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel et le dragon 1:1'")
expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'")
;
return true;
});
});
describe("Localized book Lev (fr)", 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 (fr)", function() {
expect(p.parse("Levitique 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Levitique 1:1'")
expect(p.parse("Lévitique 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lévitique 1:1'")
expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'")
expect(p.parse("Lév 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lév 1:1'")
expect(p.parse("Le 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Le 1:1'")
expect(p.parse("Lv 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lv 1:1'")
expect(p.parse("Lé 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lé 1:1'")
p.include_apocrypha(false)
expect(p.parse("LEVITIQUE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEVITIQUE 1:1'")
expect(p.parse("LÉVITIQUE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LÉVITIQUE 1:1'")
expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'")
expect(p.parse("LÉV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LÉV 1:1'")
expect(p.parse("LE 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LE 1:1'")
expect(p.parse("LV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LV 1:1'")
expect(p.parse("LÉ 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LÉ 1:1'")
;
return true;
});
});
describe("Localized book Num (fr)", 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 (fr)", function() {
expect(p.parse("Nombres 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nombres 1:1'")
expect(p.parse("Nomb 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nomb 1:1'")
expect(p.parse("Nom 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nom 1:1'")
expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'")
expect(p.parse("Nb 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nb 1:1'")
expect(p.parse("Nm 1:1").osis()).toEqual("Num.1.1", "parsing: 'Nm 1:1'")
expect(p.parse("No 1:1").osis()).toEqual("Num.1.1", "parsing: 'No 1:1'")
p.include_apocrypha(false)
expect(p.parse("NOMBRES 1:1").osis()).toEqual("Num.1.1", "parsing: 'NOMBRES 1:1'")
expect(p.parse("NOMB 1:1").osis()).toEqual("Num.1.1", "parsing: 'NOMB 1:1'")
expect(p.parse("NOM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NOM 1:1'")
expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'")
expect(p.parse("NB 1:1").osis()).toEqual("Num.1.1", "parsing: 'NB 1:1'")
expect(p.parse("NM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NM 1:1'")
expect(p.parse("NO 1:1").osis()).toEqual("Num.1.1", "parsing: 'NO 1:1'")
;
return true;
});
});
describe("Localized book Sir (fr)", 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 (fr)", function() {
expect(p.parse("La Sagesse de Ben Sira 1:1").osis()).toEqual("Sir.1.1", "parsing: 'La Sagesse de Ben Sira 1:1'")
expect(p.parse("Sagesse de Ben Sira 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sagesse de Ben Sira 1:1'")
expect(p.parse("Ecclesiastique 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Ecclesiastique 1:1'")
expect(p.parse("Ecclésiastique 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Ecclésiastique 1:1'")
expect(p.parse("Siracide 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Siracide 1:1'")
expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'")
expect(p.parse("Si 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Si 1:1'")
;
return true;
});
});
describe("Localized book Wis (fr)", 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 (fr)", function() {
expect(p.parse("Sagesse de Salomon 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Sagesse de Salomon 1:1'")
expect(p.parse("Sagesse 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Sagesse 1:1'")
expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'")
expect(p.parse("Sg 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Sg 1:1'")
;
return true;
});
});
describe("Localized book Lam (fr)", 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 (fr)", function() {
expect(p.parse("Lamentations de Jeremie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jeremie 1:1'")
expect(p.parse("Lamentations de Jerémie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jerémie 1:1'")
expect(p.parse("Lamentations de Jéremie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jéremie 1:1'")
expect(p.parse("Lamentations de Jérémie 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations de Jérémie 1:1'")
expect(p.parse("Lamentations 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lamentations 1:1'")
expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'")
expect(p.parse("La 1:1").osis()).toEqual("Lam.1.1", "parsing: 'La 1:1'")
expect(p.parse("Lm 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lm 1:1'")
p.include_apocrypha(false)
expect(p.parse("LAMENTATIONS DE JEREMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JEREMIE 1:1'")
expect(p.parse("LAMENTATIONS DE JERÉMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JERÉMIE 1:1'")
expect(p.parse("LAMENTATIONS DE JÉREMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JÉREMIE 1:1'")
expect(p.parse("LAMENTATIONS DE JÉRÉMIE 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS DE JÉRÉMIE 1:1'")
expect(p.parse("LAMENTATIONS 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAMENTATIONS 1:1'")
expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'")
expect(p.parse("LA 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LA 1:1'")
expect(p.parse("LM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LM 1:1'")
;
return true;
});
});
describe("Localized book EpJer (fr)", 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 (fr)", function() {
expect(p.parse("Epitre de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jeremie 1:1'")
expect(p.parse("Epitre de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jerémie 1:1'")
expect(p.parse("Epitre de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jéremie 1:1'")
expect(p.parse("Epitre de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epitre de Jérémie 1:1'")
expect(p.parse("Epître de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jeremie 1:1'")
expect(p.parse("Epître de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jerémie 1:1'")
expect(p.parse("Epître de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jéremie 1:1'")
expect(p.parse("Epître de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Epître de Jérémie 1:1'")
expect(p.parse("Épitre de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jeremie 1:1'")
expect(p.parse("Épitre de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jerémie 1:1'")
expect(p.parse("Épitre de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jéremie 1:1'")
expect(p.parse("Épitre de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épitre de Jérémie 1:1'")
expect(p.parse("Épître de Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jeremie 1:1'")
expect(p.parse("Épître de Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jerémie 1:1'")
expect(p.parse("Épître de Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jéremie 1:1'")
expect(p.parse("Épître de Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Épître de Jérémie 1:1'")
expect(p.parse("Ep. Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jeremie 1:1'")
expect(p.parse("Ep. Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jerémie 1:1'")
expect(p.parse("Ep. Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jéremie 1:1'")
expect(p.parse("Ep. Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jérémie 1:1'")
expect(p.parse("Ép. Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jeremie 1:1'")
expect(p.parse("Ép. Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jerémie 1:1'")
expect(p.parse("Ép. Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jéremie 1:1'")
expect(p.parse("Ép. Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jérémie 1:1'")
expect(p.parse("Ep Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jeremie 1:1'")
expect(p.parse("Ep Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jerémie 1:1'")
expect(p.parse("Ep Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jéremie 1:1'")
expect(p.parse("Ep Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jérémie 1:1'")
expect(p.parse("Ép Jeremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jeremie 1:1'")
expect(p.parse("Ép Jerémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jerémie 1:1'")
expect(p.parse("Ép Jéremie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jéremie 1:1'")
expect(p.parse("Ép Jérémie 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jérémie 1:1'")
expect(p.parse("Ep. Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jer 1:1'")
expect(p.parse("Ep. Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep. Jér 1:1'")
expect(p.parse("Ép. Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jer 1:1'")
expect(p.parse("Ép. Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép. Jér 1:1'")
expect(p.parse("Ep Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jer 1:1'")
expect(p.parse("Ep Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ep Jér 1:1'")
expect(p.parse("Ép Jer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jer 1:1'")
expect(p.parse("Ép Jér 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'Ép Jér 1:1'")
expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'")
;
return true;
});
});
describe("Localized book Rev (fr)", 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 (fr)", function() {
expect(p.parse("Apocalypse de Jean 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apocalypse de Jean 1:1'")
expect(p.parse("Apocalypse 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apocalypse 1:1'")
expect(p.parse("Apoc 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apoc 1:1'")
expect(p.parse("Apc 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apc 1:1'")
expect(p.parse("Apo 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Apo 1:1'")
expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'")
expect(p.parse("Ap 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Ap 1:1'")
p.include_apocrypha(false)
expect(p.parse("APOCALYPSE DE JEAN 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APOCALYPSE DE JEAN 1:1'")
expect(p.parse("APOCALYPSE 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APOCALYPSE 1:1'")
expect(p.parse("APOC 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APOC 1:1'")
expect(p.parse("APC 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APC 1:1'")
expect(p.parse("APO 1:1").osis()).toEqual("Rev.1.1", "parsing: 'APO 1:1'")
expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'")
expect(p.parse("AP 1:1").osis()).toEqual("Rev.1.1", "parsing: 'AP 1:1'")
;
return true;
});
});
describe("Localized book PrMan (fr)", 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 (fr)", function() {
expect(p.parse("La Priere de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Priere de Manasse 1:1'")
expect(p.parse("La Priere de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Priere de Manassé 1:1'")
expect(p.parse("La Prière de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Prière de Manasse 1:1'")
expect(p.parse("La Prière de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'La Prière de Manassé 1:1'")
expect(p.parse("Priere de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Priere de Manasse 1:1'")
expect(p.parse("Priere de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Priere de Manassé 1:1'")
expect(p.parse("Prière de Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Prière de Manasse 1:1'")
expect(p.parse("Prière de Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Prière de Manassé 1:1'")
expect(p.parse("Pr. Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr. Manasse 1:1'")
expect(p.parse("Pr. Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr. Manassé 1:1'")
expect(p.parse("Pr Manasse 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr Manasse 1:1'")
expect(p.parse("Pr Manassé 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr Manassé 1:1'")
expect(p.parse("Pr. Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr. Man 1:1'")
expect(p.parse("Pr Man 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'Pr Man 1:1'")
expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'")
;
return true;
});
});
describe("Localized book Deut (fr)", 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 (fr)", function() {
expect(p.parse("Deuteronome 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deuteronome 1:1'")
expect(p.parse("Deutéronome 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deutéronome 1:1'")
expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'")
expect(p.parse("Deu 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deu 1:1'")
expect(p.parse("Dt 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Dt 1:1'")
p.include_apocrypha(false)
expect(p.parse("DEUTERONOME 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUTERONOME 1:1'")
expect(p.parse("DEUTÉRONOME 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUTÉRONOME 1:1'")
expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'")
expect(p.parse("DEU 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEU 1:1'")
expect(p.parse("DT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DT 1:1'")
;
return true;
});
});
describe("Localized book Josh (fr)", 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 (fr)", function() {
expect(p.parse("Josue 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josue 1:1'")
expect(p.parse("Josué 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josué 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("JOSUE 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSUE 1:1'")
expect(p.parse("JOSUÉ 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSUÉ 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 (fr)", 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 (fr)", function() {
expect(p.parse("Juges 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Juges 1:1'")
expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'")
expect(p.parse("Jug 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Jug 1:1'")
expect(p.parse("Jg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Jg 1:1'")
p.include_apocrypha(false)
expect(p.parse("JUGES 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUGES 1:1'")
expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'")
expect(p.parse("JUG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUG 1:1'")
expect(p.parse("JG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JG 1:1'")
;
return true;
});
});
describe("Localized book Ruth (fr)", 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 (fr)", 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("Rt 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Rt 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("RT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RT 1:1'")
expect(p.parse("RU 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RU 1:1'")
;
return true;
});
});
describe("Localized book 1Esd (fr)", 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 (fr)", function() {
expect(p.parse("Premieres Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premieres Esdras 1:1'")
expect(p.parse("Premières Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premières Esdras 1:1'")
expect(p.parse("Premiere Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premiere Esdras 1:1'")
expect(p.parse("Premiers Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premiers Esdras 1:1'")
expect(p.parse("Première Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Première Esdras 1:1'")
expect(p.parse("Premier Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'Premier Esdras 1:1'")
expect(p.parse("1ere. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ere. Esdras 1:1'")
expect(p.parse("1ère. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ère. Esdras 1:1'")
expect(p.parse("1er. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1er. Esdras 1:1'")
expect(p.parse("1ere Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ere Esdras 1:1'")
expect(p.parse("1re. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1re. Esdras 1:1'")
expect(p.parse("1ère Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1ère Esdras 1:1'")
expect(p.parse("1er Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1er Esdras 1:1'")
expect(p.parse("1re Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1re Esdras 1:1'")
expect(p.parse("1. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1. Esdras 1:1'")
expect(p.parse("I. Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'I. Esdras 1:1'")
expect(p.parse("1 Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdras 1:1'")
expect(p.parse("I Esdras 1:1").osis()).toEqual("1Esd.1.1", "parsing: 'I Esdras 1:1'")
expect(p.parse("1 Esdr 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esdr 1:1'")
expect(p.parse("1 Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1 Esd 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 (fr)", 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 (fr)", function() {
expect(p.parse("Deuxiemes Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxiemes Esdras 1:1'")
expect(p.parse("Deuxièmes Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxièmes Esdras 1:1'")
expect(p.parse("Deuxieme Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxieme Esdras 1:1'")
expect(p.parse("Deuxième Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'Deuxième Esdras 1:1'")
expect(p.parse("2eme. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2eme. Esdras 1:1'")
expect(p.parse("2ème. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2ème. Esdras 1:1'")
expect(p.parse("2de. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2de. Esdras 1:1'")
expect(p.parse("2eme Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2eme Esdras 1:1'")
expect(p.parse("2ème Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2ème Esdras 1:1'")
expect(p.parse("2d. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2d. Esdras 1:1'")
expect(p.parse("2de Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2de Esdras 1:1'")
expect(p.parse("2e. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2e. Esdras 1:1'")
expect(p.parse("II. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'II. Esdras 1:1'")
expect(p.parse("2. Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2. Esdras 1:1'")
expect(p.parse("2d Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2d Esdras 1:1'")
expect(p.parse("2e Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2e Esdras 1:1'")
expect(p.parse("II Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: 'II Esdras 1:1'")
expect(p.parse("2 Esdras 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdras 1:1'")
expect(p.parse("2 Esdr 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esdr 1:1'")
expect(p.parse("2 Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2 Esd 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 (fr)", 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 (fr)", function() {
expect(p.parse("Esaie 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esaie 1:1'")
expect(p.parse("Esaïe 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esaïe 1:1'")
expect(p.parse("Isaie 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isaie 1:1'")
expect(p.parse("Isaïe 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isaïe 1:1'")
expect(p.parse("Ésaie 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Ésaie 1:1'")
expect(p.parse("Ésaïe 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Ésaïe 1:1'")
expect(p.parse("Esa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Esa 1:1'")
expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'")
expect(p.parse("Ésa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Ésa 1:1'")
expect(p.parse("Es 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Es 1:1'")
expect(p.parse("Is 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Is 1:1'")
expect(p.parse("És 1:1").osis()).toEqual("Isa.1.1", "parsing: 'És 1:1'")
p.include_apocrypha(false)
expect(p.parse("ESAIE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESAIE 1:1'")
expect(p.parse("ESAÏE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESAÏE 1:1'")
expect(p.parse("ISAIE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISAIE 1:1'")
expect(p.parse("ISAÏE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISAÏE 1:1'")
expect(p.parse("ÉSAIE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉSAIE 1:1'")
expect(p.parse("ÉSAÏE 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉSAÏE 1:1'")
expect(p.parse("ESA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ESA 1:1'")
expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'")
expect(p.parse("ÉSA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉSA 1:1'")
expect(p.parse("ES 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ES 1:1'")
expect(p.parse("IS 1:1").osis()).toEqual("Isa.1.1", "parsing: 'IS 1:1'")
expect(p.parse("ÉS 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ÉS 1:1'")
;
return true;
});
});
describe("Localized book 2Sam (fr)", 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 (fr)", function() {
expect(p.parse("Deuxiemes Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxiemes Samuel 1:1'")
expect(p.parse("Deuxièmes Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxièmes Samuel 1:1'")
expect(p.parse("Deuxieme Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxieme Samuel 1:1'")
expect(p.parse("Deuxième Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'Deuxième Samuel 1:1'")
expect(p.parse("2eme. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2eme. Samuel 1:1'")
expect(p.parse("2ème. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ème. Samuel 1:1'")
expect(p.parse("2de. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2de. Samuel 1:1'")
expect(p.parse("2eme Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2eme Samuel 1:1'")
expect(p.parse("2ème Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ème Samuel 1:1'")
expect(p.parse("2d. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2d. Samuel 1:1'")
expect(p.parse("2de Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2de Samuel 1:1'")
expect(p.parse("2e. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2e. Samuel 1:1'")
expect(p.parse("II. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II. Samuel 1:1'")
expect(p.parse("2. Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Samuel 1:1'")
expect(p.parse("2d Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2d Samuel 1:1'")
expect(p.parse("2e Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2e Samuel 1:1'")
expect(p.parse("II Samuel 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II 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 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'")
expect(p.parse("2 S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 S 1:1'")
p.include_apocrypha(false)
expect(p.parse("DEUXIEMES SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIEMES SAMUEL 1:1'")
expect(p.parse("DEUXIÈMES SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIÈMES SAMUEL 1:1'")
expect(p.parse("DEUXIEME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIEME SAMUEL 1:1'")
expect(p.parse("DEUXIÈME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'DEUXIÈME SAMUEL 1:1'")
expect(p.parse("2EME. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2EME. SAMUEL 1:1'")
expect(p.parse("2ÈME. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ÈME. SAMUEL 1:1'")
expect(p.parse("2DE. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2DE. SAMUEL 1:1'")
expect(p.parse("2EME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2EME SAMUEL 1:1'")
expect(p.parse("2ÈME SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2ÈME SAMUEL 1:1'")
expect(p.parse("2D. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2D. SAMUEL 1:1'")
expect(p.parse("2DE SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2DE SAMUEL 1:1'")
expect(p.parse("2E. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2E. SAMUEL 1:1'")
expect(p.parse("II. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II. SAMUEL 1:1'")
expect(p.parse("2. SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SAMUEL 1:1'")
expect(p.parse("2D SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2D SAMUEL 1:1'")
expect(p.parse("2E SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2E SAMUEL 1:1'")
expect(p.parse("II SAMUEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'II 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 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'")
expect(p.parse("2 S 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 S 1:1'")
;
return true;
});
});
describe("Localized book 1Sam (fr)", 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 (fr)", function() {
expect(p.parse("Premieres Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premieres Samuel 1:1'")
expect(p.parse("Premières Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premières Samuel 1:1'")
expect(p.parse("Premiere Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premiere Samuel 1:1'")
expect(p.parse("Premiers Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premiers Samuel 1:1'")
expect(p.parse("Première Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Première Samuel 1:1'")
expect(p.parse("Premier Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'Premier Samuel 1:1'")
expect(p.parse("1ere. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ere. Samuel 1:1'")
expect(p.parse("1ère. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ère. Samuel 1:1'")
expect(p.parse("1er. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1er. Samuel 1:1'")
expect(p.parse("1ere Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ere Samuel 1:1'")
expect(p.parse("1re. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1re. Samuel 1:1'")
expect(p.parse("1ère Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ère Samuel 1:1'")
expect(p.parse("1er Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1er Samuel 1:1'")
expect(p.parse("1re Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1re Samuel 1:1'")
expect(p.parse("1. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Samuel 1:1'")
expect(p.parse("I. Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I. Samuel 1:1'")
expect(p.parse("1 Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Samuel 1:1'")
expect(p.parse("I Samuel 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I Samuel 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("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'")
expect(p.parse("1 S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 S 1:1'")
p.include_apocrypha(false)
expect(p.parse("PREMIERES SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIERES SAMUEL 1:1'")
expect(p.parse("PREMIÈRES SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIÈRES SAMUEL 1:1'")
expect(p.parse("PREMIERE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIERE SAMUEL 1:1'")
expect(p.parse("PREMIERS SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIERS SAMUEL 1:1'")
expect(p.parse("PREMIÈRE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIÈRE SAMUEL 1:1'")
expect(p.parse("PREMIER SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'PREMIER SAMUEL 1:1'")
expect(p.parse("1ERE. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ERE. SAMUEL 1:1'")
expect(p.parse("1ÈRE. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ÈRE. SAMUEL 1:1'")
expect(p.parse("1ER. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ER. SAMUEL 1:1'")
expect(p.parse("1ERE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ERE SAMUEL 1:1'")
expect(p.parse("1RE. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1RE. SAMUEL 1:1'")
expect(p.parse("1ÈRE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ÈRE SAMUEL 1:1'")
expect(p.parse("1ER SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1ER SAMUEL 1:1'")
expect(p.parse("1RE SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1RE SAMUEL 1:1'")
expect(p.parse("1. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SAMUEL 1:1'")
expect(p.parse("I. SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I. SAMUEL 1:1'")
expect(p.parse("1 SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SAMUEL 1:1'")
expect(p.parse("I SAMUEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'I SAMUEL 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("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'")
expect(p.parse("1 S 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 S 1:1'")
;
return true;
});
});
describe("Localized book 2Kgs (fr)", 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 (fr)", function() {
expect(p.parse("Deuxiemes Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxiemes Rois 1:1'")
expect(p.parse("Deuxièmes Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxièmes Rois 1:1'")
expect(p.parse("Deuxieme Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxieme Rois 1:1'")
expect(p.parse("Deuxième Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'Deuxième Rois 1:1'")
expect(p.parse("2eme. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2eme. Rois 1:1'")
expect(p.parse("2ème. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ème. Rois 1:1'")
expect(p.parse("2de. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2de. Rois 1:1'")
expect(p.parse("2eme Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2eme Rois 1:1'")
expect(p.parse("2ème Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ème Rois 1:1'")
expect(p.parse("2d. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2d. Rois 1:1'")
expect(p.parse("2de Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2de Rois 1:1'")
expect(p.parse("2e. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2e. Rois 1:1'")
expect(p.parse("II. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II. Rois 1:1'")
expect(p.parse("2. Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Rois 1:1'")
expect(p.parse("2d Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2d Rois 1:1'")
expect(p.parse("2e Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2e Rois 1:1'")
expect(p.parse("II Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II Rois 1:1'")
expect(p.parse("2 Rois 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Rois 1:1'")
expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'")
expect(p.parse("2 R 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 R 1:1'")
p.include_apocrypha(false)
expect(p.parse("DEUXIEMES ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIEMES ROIS 1:1'")
expect(p.parse("DEUXIÈMES ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIÈMES ROIS 1:1'")
expect(p.parse("DEUXIEME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIEME ROIS 1:1'")
expect(p.parse("DEUXIÈME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'DEUXIÈME ROIS 1:1'")
expect(p.parse("2EME. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2EME. ROIS 1:1'")
expect(p.parse("2ÈME. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ÈME. ROIS 1:1'")
expect(p.parse("2DE. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2DE. ROIS 1:1'")
expect(p.parse("2EME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2EME ROIS 1:1'")
expect(p.parse("2ÈME ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2ÈME ROIS 1:1'")
expect(p.parse("2D. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2D. ROIS 1:1'")
expect(p.parse("2DE ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2DE ROIS 1:1'")
expect(p.parse("2E. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2E. ROIS 1:1'")
expect(p.parse("II. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II. ROIS 1:1'")
expect(p.parse("2. ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. ROIS 1:1'")
expect(p.parse("2D ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2D ROIS 1:1'")
expect(p.parse("2E ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2E ROIS 1:1'")
expect(p.parse("II ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'II ROIS 1:1'")
expect(p.parse("2 ROIS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 ROIS 1:1'")
expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'")
expect(p.parse("2 R 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 R 1:1'")
;
return true;
});
});
describe("Localized book 1Kgs (fr)", 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 (fr)", function() {
expect(p.parse("Premieres Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premieres Rois 1:1'")
expect(p.parse("Premières Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premières Rois 1:1'")
expect(p.parse("Premiere Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premiere Rois 1:1'")
expect(p.parse("Premiers Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premiers Rois 1:1'")
expect(p.parse("Première Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Première Rois 1:1'")
expect(p.parse("Premier Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'Premier Rois 1:1'")
expect(p.parse("1ere. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ere. Rois 1:1'")
expect(p.parse("1ère. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ère. Rois 1:1'")
expect(p.parse("1er. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1er. Rois 1:1'")
expect(p.parse("1ere Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ere Rois 1:1'")
expect(p.parse("1re. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1re. Rois 1:1'")
expect(p.parse("1ère Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1ère Rois 1:1'")
expect(p.parse("1er Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1er Rois 1:1'")
expect(p.parse("1re Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1re Rois 1:1'")
expect(p.parse("1. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Rois 1:1'")
expect(p.parse("I. Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I. Rois 1:1'")
expect(p.parse("1 Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Rois 1:1'")
expect(p.parse("I Rois 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'I Rois 1:1'")
expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'")
expect(p.parse("1 R 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 R 1:1'")
p.include_apocrypha(false)
expect(p.parse("PREMIERES ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIERES ROIS 1:1'")
expect(p.parse("PREMIÈRES ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIÈRES ROIS 1:1'")
expect(p.parse("PREMIERE ROIS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'PREMIERE ROIS 1:1'")
expect(p.parse("PREMIERS ROIS 1:1").