bible-ref-parse
Version:
Identifies and parses Bible references (like John 3:16) in over 40 languages.
1,117 lines (1,044 loc) • 138 kB
JavaScript
(function() {
var bcv_parser;
bcv_parser = require("../../dist/hi-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 (hi)", 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 (hi)", function() {
expect(p.parse("उत्पत्ति 1:1").osis()).toEqual("Gen.1.1", "parsing: 'उत्पत्ति 1:1'")
expect(p.parse("Utpaati 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Utpaati 1:1'")
expect(p.parse("उत्पाति 1:1").osis()).toEqual("Gen.1.1", "parsing: 'उत्पाति 1:1'")
expect(p.parse("Gen 1:1").osis()).toEqual("Gen.1.1", "parsing: 'Gen 1:1'")
p.include_apocrypha(false)
expect(p.parse("उत्पत्ति 1:1").osis()).toEqual("Gen.1.1", "parsing: 'उत्पत्ति 1:1'")
expect(p.parse("UTPAATI 1:1").osis()).toEqual("Gen.1.1", "parsing: 'UTPAATI 1:1'")
expect(p.parse("उत्पाति 1:1").osis()).toEqual("Gen.1.1", "parsing: 'उत्पाति 1:1'")
expect(p.parse("GEN 1:1").osis()).toEqual("Gen.1.1", "parsing: 'GEN 1:1'")
;
return true;
});
});
describe("Localized book Exod (hi)", 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 (hi)", function() {
expect(p.parse("Nirgaman 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Nirgaman 1:1'")
expect(p.parse("निर्गमन 1:1").osis()).toEqual("Exod.1.1", "parsing: 'निर्गमन 1:1'")
expect(p.parse("Exod 1:1").osis()).toEqual("Exod.1.1", "parsing: 'Exod 1:1'")
p.include_apocrypha(false)
expect(p.parse("NIRGAMAN 1:1").osis()).toEqual("Exod.1.1", "parsing: 'NIRGAMAN 1:1'")
expect(p.parse("निर्गमन 1:1").osis()).toEqual("Exod.1.1", "parsing: 'निर्गमन 1:1'")
expect(p.parse("EXOD 1:1").osis()).toEqual("Exod.1.1", "parsing: 'EXOD 1:1'")
;
return true;
});
});
describe("Localized book Bel (hi)", 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 (hi)", function() {
expect(p.parse("Bel 1:1").osis()).toEqual("Bel.1.1", "parsing: 'Bel 1:1'")
;
return true;
});
});
describe("Localized book Lev (hi)", 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 (hi)", function() {
expect(p.parse("Laaivyavyavastha 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Laaivyavyavastha 1:1'")
expect(p.parse("लैव्य्व्य्वस्था 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्य्व्य्वस्था 1:1'")
expect(p.parse("लैव्यव्यवस्था 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्यव्यवस्था 1:1'")
expect(p.parse("लैव्यव्यवस्थ 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्यव्यवस्थ 1:1'")
expect(p.parse("लैव्यवस्था 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्यवस्था 1:1'")
expect(p.parse("लैव्य 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्य 1:1'")
expect(p.parse("Lev 1:1").osis()).toEqual("Lev.1.1", "parsing: 'Lev 1:1'")
p.include_apocrypha(false)
expect(p.parse("LAAIVYAVYAVASTHA 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LAAIVYAVYAVASTHA 1:1'")
expect(p.parse("लैव्य्व्य्वस्था 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्य्व्य्वस्था 1:1'")
expect(p.parse("लैव्यव्यवस्था 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्यव्यवस्था 1:1'")
expect(p.parse("लैव्यव्यवस्थ 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्यव्यवस्थ 1:1'")
expect(p.parse("लैव्यवस्था 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्यवस्था 1:1'")
expect(p.parse("लैव्य 1:1").osis()).toEqual("Lev.1.1", "parsing: 'लैव्य 1:1'")
expect(p.parse("LEV 1:1").osis()).toEqual("Lev.1.1", "parsing: 'LEV 1:1'")
;
return true;
});
});
describe("Localized book Num (hi)", 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 (hi)", function() {
expect(p.parse("Ginatee 1:1").osis()).toEqual("Num.1.1", "parsing: 'Ginatee 1:1'")
expect(p.parse("गिनती 1:1").osis()).toEqual("Num.1.1", "parsing: 'गिनती 1:1'")
expect(p.parse("Num 1:1").osis()).toEqual("Num.1.1", "parsing: 'Num 1:1'")
p.include_apocrypha(false)
expect(p.parse("GINATEE 1:1").osis()).toEqual("Num.1.1", "parsing: 'GINATEE 1:1'")
expect(p.parse("गिनती 1:1").osis()).toEqual("Num.1.1", "parsing: 'गिनती 1:1'")
expect(p.parse("NUM 1:1").osis()).toEqual("Num.1.1", "parsing: 'NUM 1:1'")
;
return true;
});
});
describe("Localized book Sir (hi)", 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 (hi)", function() {
expect(p.parse("Sir 1:1").osis()).toEqual("Sir.1.1", "parsing: 'Sir 1:1'")
;
return true;
});
});
describe("Localized book Wis (hi)", 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 (hi)", function() {
expect(p.parse("Wis 1:1").osis()).toEqual("Wis.1.1", "parsing: 'Wis 1:1'")
;
return true;
});
});
describe("Localized book Lam (hi)", 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 (hi)", function() {
expect(p.parse("Vilapageet 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Vilapageet 1:1'")
expect(p.parse("विलापगीत 1:1").osis()).toEqual("Lam.1.1", "parsing: 'विलापगीत 1:1'")
expect(p.parse("विलापगेत 1:1").osis()).toEqual("Lam.1.1", "parsing: 'विलापगेत 1:1'")
expect(p.parse("विलाप 1:1").osis()).toEqual("Lam.1.1", "parsing: 'विलाप 1:1'")
expect(p.parse("Lam 1:1").osis()).toEqual("Lam.1.1", "parsing: 'Lam 1:1'")
p.include_apocrypha(false)
expect(p.parse("VILAPAGEET 1:1").osis()).toEqual("Lam.1.1", "parsing: 'VILAPAGEET 1:1'")
expect(p.parse("विलापगीत 1:1").osis()).toEqual("Lam.1.1", "parsing: 'विलापगीत 1:1'")
expect(p.parse("विलापगेत 1:1").osis()).toEqual("Lam.1.1", "parsing: 'विलापगेत 1:1'")
expect(p.parse("विलाप 1:1").osis()).toEqual("Lam.1.1", "parsing: 'विलाप 1:1'")
expect(p.parse("LAM 1:1").osis()).toEqual("Lam.1.1", "parsing: 'LAM 1:1'")
;
return true;
});
});
describe("Localized book EpJer (hi)", 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 (hi)", function() {
expect(p.parse("EpJer 1:1").osis()).toEqual("EpJer.1.1", "parsing: 'EpJer 1:1'")
;
return true;
});
});
describe("Localized book Rev (hi)", 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 (hi)", function() {
expect(p.parse("Prakashaitavakya 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Prakashaitavakya 1:1'")
expect(p.parse("प्रकाशित-वाक्य 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्रकाशित-वाक्य 1:1'")
expect(p.parse("प्रकाशित वाक्य 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्रकाशित वाक्य 1:1'")
expect(p.parse("प्रकाशितवाक्य 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्रकाशितवाक्य 1:1'")
expect(p.parse("प्र. व 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्र. व 1:1'")
expect(p.parse("प्र व 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्र व 1:1'")
expect(p.parse("Rev 1:1").osis()).toEqual("Rev.1.1", "parsing: 'Rev 1:1'")
p.include_apocrypha(false)
expect(p.parse("PRAKASHAITAVAKYA 1:1").osis()).toEqual("Rev.1.1", "parsing: 'PRAKASHAITAVAKYA 1:1'")
expect(p.parse("प्रकाशित-वाक्य 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्रकाशित-वाक्य 1:1'")
expect(p.parse("प्रकाशित वाक्य 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्रकाशित वाक्य 1:1'")
expect(p.parse("प्रकाशितवाक्य 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्रकाशितवाक्य 1:1'")
expect(p.parse("प्र. व 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्र. व 1:1'")
expect(p.parse("प्र व 1:1").osis()).toEqual("Rev.1.1", "parsing: 'प्र व 1:1'")
expect(p.parse("REV 1:1").osis()).toEqual("Rev.1.1", "parsing: 'REV 1:1'")
;
return true;
});
});
describe("Localized book PrMan (hi)", 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 (hi)", function() {
expect(p.parse("PrMan 1:1").osis()).toEqual("PrMan.1.1", "parsing: 'PrMan 1:1'")
;
return true;
});
});
describe("Localized book Deut (hi)", 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 (hi)", function() {
expect(p.parse("Vyavasthaavivaran 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Vyavasthaavivaran 1:1'")
expect(p.parse("व्यवस्था विवरण 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्यवस्था विवरण 1:1'")
expect(p.parse("व्य्वस्थाविवरन 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्य्वस्थाविवरन 1:1'")
expect(p.parse("व्यवस्थाविवरण 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्यवस्थाविवरण 1:1'")
expect(p.parse("व्यवस्था 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्यवस्था 1:1'")
expect(p.parse("Deut 1:1").osis()).toEqual("Deut.1.1", "parsing: 'Deut 1:1'")
p.include_apocrypha(false)
expect(p.parse("VYAVASTHAAVIVARAN 1:1").osis()).toEqual("Deut.1.1", "parsing: 'VYAVASTHAAVIVARAN 1:1'")
expect(p.parse("व्यवस्था विवरण 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्यवस्था विवरण 1:1'")
expect(p.parse("व्य्वस्थाविवरन 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्य्वस्थाविवरन 1:1'")
expect(p.parse("व्यवस्थाविवरण 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्यवस्थाविवरण 1:1'")
expect(p.parse("व्यवस्था 1:1").osis()).toEqual("Deut.1.1", "parsing: 'व्यवस्था 1:1'")
expect(p.parse("DEUT 1:1").osis()).toEqual("Deut.1.1", "parsing: 'DEUT 1:1'")
;
return true;
});
});
describe("Localized book Josh (hi)", 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 (hi)", function() {
expect(p.parse("Yahoshoo 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Yahoshoo 1:1'")
expect(p.parse("यहोशु 1:1").osis()).toEqual("Josh.1.1", "parsing: 'यहोशु 1:1'")
expect(p.parse("यहोशू 1:1").osis()).toEqual("Josh.1.1", "parsing: 'यहोशू 1:1'")
expect(p.parse("Josh 1:1").osis()).toEqual("Josh.1.1", "parsing: 'Josh 1:1'")
p.include_apocrypha(false)
expect(p.parse("YAHOSHOO 1:1").osis()).toEqual("Josh.1.1", "parsing: 'YAHOSHOO 1:1'")
expect(p.parse("यहोशु 1:1").osis()).toEqual("Josh.1.1", "parsing: 'यहोशु 1:1'")
expect(p.parse("यहोशू 1:1").osis()).toEqual("Josh.1.1", "parsing: 'यहोशू 1:1'")
expect(p.parse("JOSH 1:1").osis()).toEqual("Josh.1.1", "parsing: 'JOSH 1:1'")
;
return true;
});
});
describe("Localized book Judg (hi)", 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 (hi)", function() {
expect(p.parse("न्यायिय का विर्तान्त 1:1").osis()).toEqual("Judg.1.1", "parsing: 'न्यायिय का विर्तान्त 1:1'")
expect(p.parse("न्यायियों 1:1").osis()).toEqual("Judg.1.1", "parsing: 'न्यायियों 1:1'")
expect(p.parse("Nyayiyon 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Nyayiyon 1:1'")
expect(p.parse("Judg 1:1").osis()).toEqual("Judg.1.1", "parsing: 'Judg 1:1'")
p.include_apocrypha(false)
expect(p.parse("न्यायिय का विर्तान्त 1:1").osis()).toEqual("Judg.1.1", "parsing: 'न्यायिय का विर्तान्त 1:1'")
expect(p.parse("न्यायियों 1:1").osis()).toEqual("Judg.1.1", "parsing: 'न्यायियों 1:1'")
expect(p.parse("NYAYIYON 1:1").osis()).toEqual("Judg.1.1", "parsing: 'NYAYIYON 1:1'")
expect(p.parse("JUDG 1:1").osis()).toEqual("Judg.1.1", "parsing: 'JUDG 1:1'")
;
return true;
});
});
describe("Localized book Ruth (hi)", 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 (hi)", function() {
expect(p.parse("Root 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Root 1:1'")
expect(p.parse("Ruth 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'Ruth 1:1'")
expect(p.parse("रुत 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'रुत 1:1'")
expect(p.parse("रूत 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'रूत 1:1'")
p.include_apocrypha(false)
expect(p.parse("ROOT 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'ROOT 1:1'")
expect(p.parse("RUTH 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'RUTH 1:1'")
expect(p.parse("रुत 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'रुत 1:1'")
expect(p.parse("रूत 1:1").osis()).toEqual("Ruth.1.1", "parsing: 'रूत 1:1'")
;
return true;
});
});
describe("Localized book 1Esd (hi)", 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 (hi)", function() {
expect(p.parse("1Esd 1:1").osis()).toEqual("1Esd.1.1", "parsing: '1Esd 1:1'")
;
return true;
});
});
describe("Localized book 2Esd (hi)", 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 (hi)", function() {
expect(p.parse("2Esd 1:1").osis()).toEqual("2Esd.1.1", "parsing: '2Esd 1:1'")
;
return true;
});
});
describe("Localized book Isa (hi)", 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 (hi)", function() {
expect(p.parse("yashaayaah 1:1").osis()).toEqual("Isa.1.1", "parsing: 'yashaayaah 1:1'")
expect(p.parse("यशायाह 1:1").osis()).toEqual("Isa.1.1", "parsing: 'यशायाह 1:1'")
expect(p.parse("यशाया 1:1").osis()).toEqual("Isa.1.1", "parsing: 'यशाया 1:1'")
expect(p.parse("Isa 1:1").osis()).toEqual("Isa.1.1", "parsing: 'Isa 1:1'")
expect(p.parse("यशा 1:1").osis()).toEqual("Isa.1.1", "parsing: 'यशा 1:1'")
p.include_apocrypha(false)
expect(p.parse("YASHAAYAAH 1:1").osis()).toEqual("Isa.1.1", "parsing: 'YASHAAYAAH 1:1'")
expect(p.parse("यशायाह 1:1").osis()).toEqual("Isa.1.1", "parsing: 'यशायाह 1:1'")
expect(p.parse("यशाया 1:1").osis()).toEqual("Isa.1.1", "parsing: 'यशाया 1:1'")
expect(p.parse("ISA 1:1").osis()).toEqual("Isa.1.1", "parsing: 'ISA 1:1'")
expect(p.parse("यशा 1:1").osis()).toEqual("Isa.1.1", "parsing: 'यशा 1:1'")
;
return true;
});
});
describe("Localized book 2Sam (hi)", 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);
});
it("should handle book: 2Sam (hi)", function() {
expect(p.parse("शमुऐयल की 2री पुस्तक 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'शमुऐयल की 2री पुस्तक 1:1'")
expect(p.parse("शमुऐयल की २री पुस्तक 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'शमुऐयल की २री पुस्तक 1:1'")
expect(p.parse("2. Shamooael 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Shamooael 1:1'")
expect(p.parse("2 Shamooael 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Shamooael 1:1'")
expect(p.parse("2. शमूएल 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. शमूएल 1:1'")
expect(p.parse("2 शमूएल 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 शमूएल 1:1'")
expect(p.parse("2. शमू 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. शमू 1:1'")
expect(p.parse("2 शमू 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 शमू 1:1'")
expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'")
;
return true;
});
return it("should handle non-Latin digits in book: 2Sam (hi)", function() {
p.set_options({
non_latin_digits_strategy: "replace"
});
expect(p.parse("शमुऐयल की 2री पुस्तक 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'शमुऐयल की 2री पुस्तक 1:1'")
expect(p.parse("शमुऐयल की २री पुस्तक 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'शमुऐयल की २री पुस्तक 1:1'")
expect(p.parse("2. Shamooael 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. Shamooael 1:1'")
expect(p.parse("2 Shamooael 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 Shamooael 1:1'")
expect(p.parse("2. शमूएल 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. शमूएल 1:1'")
expect(p.parse("2 शमूएल 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 शमूएल 1:1'")
expect(p.parse("2. शमू 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. शमू 1:1'")
expect(p.parse("2 शमू 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 शमू 1:1'")
expect(p.parse("2Sam 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2Sam 1:1'")
p.include_apocrypha(false)
expect(p.parse("शमुऐयल की 2री पुस्तक 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'शमुऐयल की 2री पुस्तक 1:1'")
expect(p.parse("शमुऐयल की २री पुस्तक 1:1").osis()).toEqual("2Sam.1.1", "parsing: 'शमुऐयल की २री पुस्तक 1:1'")
expect(p.parse("2. SHAMOOAEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. SHAMOOAEL 1:1'")
expect(p.parse("2 SHAMOOAEL 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 SHAMOOAEL 1:1'")
expect(p.parse("2. शमूएल 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. शमूएल 1:1'")
expect(p.parse("2 शमूएल 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 शमूएल 1:1'")
expect(p.parse("2. शमू 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2. शमू 1:1'")
expect(p.parse("2 शमू 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2 शमू 1:1'")
expect(p.parse("2SAM 1:1").osis()).toEqual("2Sam.1.1", "parsing: '2SAM 1:1'")
;
return true;
});
});
describe("Localized book 1Sam (hi)", 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);
});
it("should handle book: 1Sam (hi)", function() {
expect(p.parse("शमुऐल की 1ली पुस्तक 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'शमुऐल की 1ली पुस्तक 1:1'")
expect(p.parse("शमुऐल की १ली पुस्तक 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'शमुऐल की १ली पुस्तक 1:1'")
expect(p.parse("1. Shamooael 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Shamooael 1:1'")
expect(p.parse("1 Shamooael 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Shamooael 1:1'")
expect(p.parse("मैं शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'मैं शमूएल 1:1'")
expect(p.parse("1. शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. शमूएल 1:1'")
expect(p.parse("1 शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 शमूएल 1:1'")
expect(p.parse("1. शमू 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. शमू 1:1'")
expect(p.parse("1 शमू 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 शमू 1:1'")
expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'")
;
return true;
});
return it("should handle non-Latin digits in book: 1Sam (hi)", function() {
p.set_options({
non_latin_digits_strategy: "replace"
});
expect(p.parse("शमुऐल की 1ली पुस्तक 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'शमुऐल की 1ली पुस्तक 1:1'")
expect(p.parse("शमुऐल की १ली पुस्तक 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'शमुऐल की १ली पुस्तक 1:1'")
expect(p.parse("1. Shamooael 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. Shamooael 1:1'")
expect(p.parse("1 Shamooael 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 Shamooael 1:1'")
expect(p.parse("मैं शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'मैं शमूएल 1:1'")
expect(p.parse("1. शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. शमूएल 1:1'")
expect(p.parse("1 शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 शमूएल 1:1'")
expect(p.parse("1. शमू 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. शमू 1:1'")
expect(p.parse("1 शमू 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 शमू 1:1'")
expect(p.parse("1Sam 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1Sam 1:1'")
p.include_apocrypha(false)
expect(p.parse("शमुऐल की 1ली पुस्तक 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'शमुऐल की 1ली पुस्तक 1:1'")
expect(p.parse("शमुऐल की १ली पुस्तक 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'शमुऐल की १ली पुस्तक 1:1'")
expect(p.parse("1. SHAMOOAEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. SHAMOOAEL 1:1'")
expect(p.parse("1 SHAMOOAEL 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 SHAMOOAEL 1:1'")
expect(p.parse("मैं शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: 'मैं शमूएल 1:1'")
expect(p.parse("1. शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. शमूएल 1:1'")
expect(p.parse("1 शमूएल 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 शमूएल 1:1'")
expect(p.parse("1. शमू 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1. शमू 1:1'")
expect(p.parse("1 शमू 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1 शमू 1:1'")
expect(p.parse("1SAM 1:1").osis()).toEqual("1Sam.1.1", "parsing: '1SAM 1:1'")
;
return true;
});
});
describe("Localized book 2Kgs (hi)", 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);
});
it("should handle book: 2Kgs (hi)", function() {
expect(p.parse("राजाओ का विर्तान्त 2रा भाग 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'राजाओ का विर्तान्त 2रा भाग 1:1'")
expect(p.parse("राजाओ का विर्तान्त २रा भाग 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'राजाओ का विर्तान्त २रा भाग 1:1'")
expect(p.parse("2. राजाओं 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. राजाओं 1:1'")
expect(p.parse("2 राजाओं 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 राजाओं 1:1'")
expect(p.parse("2. Raja 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Raja 1:1'")
expect(p.parse("2. राजा 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. राजा 1:1'")
expect(p.parse("2 Raja 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Raja 1:1'")
expect(p.parse("2 राजा 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 राजा 1:1'")
expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'")
;
return true;
});
return it("should handle non-Latin digits in book: 2Kgs (hi)", function() {
p.set_options({
non_latin_digits_strategy: "replace"
});
expect(p.parse("राजाओ का विर्तान्त 2रा भाग 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'राजाओ का विर्तान्त 2रा भाग 1:1'")
expect(p.parse("राजाओ का विर्तान्त २रा भाग 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'राजाओ का विर्तान्त २रा भाग 1:1'")
expect(p.parse("2. राजाओं 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. राजाओं 1:1'")
expect(p.parse("2 राजाओं 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 राजाओं 1:1'")
expect(p.parse("2. Raja 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. Raja 1:1'")
expect(p.parse("2. राजा 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. राजा 1:1'")
expect(p.parse("2 Raja 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 Raja 1:1'")
expect(p.parse("2 राजा 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 राजा 1:1'")
expect(p.parse("2Kgs 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2Kgs 1:1'")
p.include_apocrypha(false)
expect(p.parse("राजाओ का विर्तान्त 2रा भाग 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'राजाओ का विर्तान्त 2रा भाग 1:1'")
expect(p.parse("राजाओ का विर्तान्त २रा भाग 1:1").osis()).toEqual("2Kgs.1.1", "parsing: 'राजाओ का विर्तान्त २रा भाग 1:1'")
expect(p.parse("2. राजाओं 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. राजाओं 1:1'")
expect(p.parse("2 राजाओं 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 राजाओं 1:1'")
expect(p.parse("2. RAJA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. RAJA 1:1'")
expect(p.parse("2. राजा 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2. राजा 1:1'")
expect(p.parse("2 RAJA 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 RAJA 1:1'")
expect(p.parse("2 राजा 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2 राजा 1:1'")
expect(p.parse("2KGS 1:1").osis()).toEqual("2Kgs.1.1", "parsing: '2KGS 1:1'")
;
return true;
});
});
describe("Localized book 1Kgs (hi)", 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);
});
it("should handle book: 1Kgs (hi)", function() {
expect(p.parse("राजाओ का विर्तान्त 1ला भाग् 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'राजाओ का विर्तान्त 1ला भाग् 1:1'")
expect(p.parse("राजाओ का विर्तान्त १ला भाग् 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'राजाओ का विर्तान्त १ला भाग् 1:1'")
expect(p.parse("1. राजाओं 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. राजाओं 1:1'")
expect(p.parse("1 राजाओं 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 राजाओं 1:1'")
expect(p.parse("1. Raja 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Raja 1:1'")
expect(p.parse("1. राजा 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. राजा 1:1'")
expect(p.parse("1 Raja 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Raja 1:1'")
expect(p.parse("1 राजा 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 राजा 1:1'")
expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'")
;
return true;
});
return it("should handle non-Latin digits in book: 1Kgs (hi)", function() {
p.set_options({
non_latin_digits_strategy: "replace"
});
expect(p.parse("राजाओ का विर्तान्त 1ला भाग् 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'राजाओ का विर्तान्त 1ला भाग् 1:1'")
expect(p.parse("राजाओ का विर्तान्त १ला भाग् 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'राजाओ का विर्तान्त १ला भाग् 1:1'")
expect(p.parse("1. राजाओं 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. राजाओं 1:1'")
expect(p.parse("1 राजाओं 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 राजाओं 1:1'")
expect(p.parse("1. Raja 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. Raja 1:1'")
expect(p.parse("1. राजा 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. राजा 1:1'")
expect(p.parse("1 Raja 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 Raja 1:1'")
expect(p.parse("1 राजा 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 राजा 1:1'")
expect(p.parse("1Kgs 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1Kgs 1:1'")
p.include_apocrypha(false)
expect(p.parse("राजाओ का विर्तान्त 1ला भाग् 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'राजाओ का विर्तान्त 1ला भाग् 1:1'")
expect(p.parse("राजाओ का विर्तान्त १ला भाग् 1:1").osis()).toEqual("1Kgs.1.1", "parsing: 'राजाओ का विर्तान्त १ला भाग् 1:1'")
expect(p.parse("1. राजाओं 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. राजाओं 1:1'")
expect(p.parse("1 राजाओं 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 राजाओं 1:1'")
expect(p.parse("1. RAJA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. RAJA 1:1'")
expect(p.parse("1. राजा 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1. राजा 1:1'")
expect(p.parse("1 RAJA 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 RAJA 1:1'")
expect(p.parse("1 राजा 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1 राजा 1:1'")
expect(p.parse("1KGS 1:1").osis()).toEqual("1Kgs.1.1", "parsing: '1KGS 1:1'")
;
return true;
});
});
describe("Localized book 2Chr (hi)", 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);
});
it("should handle book: 2Chr (hi)", function() {
expect(p.parse("इतिहास 2रा भाग 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'इतिहास 2रा भाग 1:1'")
expect(p.parse("इतिहास २रा भाग 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'इतिहास २रा भाग 1:1'")
expect(p.parse("2. Itihas 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Itihas 1:1'")
expect(p.parse("2. इतिहास 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. इतिहास 1:1'")
expect(p.parse("2 Itihas 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Itihas 1:1'")
expect(p.parse("2 इतिहास 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 इतिहास 1:1'")
expect(p.parse("2. इति 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. इति 1:1'")
expect(p.parse("2 इति 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 इति 1:1'")
expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'")
;
return true;
});
return it("should handle non-Latin digits in book: 2Chr (hi)", function() {
p.set_options({
non_latin_digits_strategy: "replace"
});
expect(p.parse("इतिहास 2रा भाग 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'इतिहास 2रा भाग 1:1'")
expect(p.parse("इतिहास २रा भाग 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'इतिहास २रा भाग 1:1'")
expect(p.parse("2. Itihas 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. Itihas 1:1'")
expect(p.parse("2. इतिहास 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. इतिहास 1:1'")
expect(p.parse("2 Itihas 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 Itihas 1:1'")
expect(p.parse("2 इतिहास 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 इतिहास 1:1'")
expect(p.parse("2. इति 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. इति 1:1'")
expect(p.parse("2 इति 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 इति 1:1'")
expect(p.parse("2Chr 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2Chr 1:1'")
p.include_apocrypha(false)
expect(p.parse("इतिहास 2रा भाग 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'इतिहास 2रा भाग 1:1'")
expect(p.parse("इतिहास २रा भाग 1:1").osis()).toEqual("2Chr.1.1", "parsing: 'इतिहास २रा भाग 1:1'")
expect(p.parse("2. ITIHAS 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. ITIHAS 1:1'")
expect(p.parse("2. इतिहास 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. इतिहास 1:1'")
expect(p.parse("2 ITIHAS 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 ITIHAS 1:1'")
expect(p.parse("2 इतिहास 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 इतिहास 1:1'")
expect(p.parse("2. इति 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2. इति 1:1'")
expect(p.parse("2 इति 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2 इति 1:1'")
expect(p.parse("2CHR 1:1").osis()).toEqual("2Chr.1.1", "parsing: '2CHR 1:1'")
;
return true;
});
});
describe("Localized book 1Chr (hi)", 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);
});
it("should handle book: 1Chr (hi)", function() {
expect(p.parse("इतिहास 1ला भाग 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'इतिहास 1ला भाग 1:1'")
expect(p.parse("इतिहास १ला भाग 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'इतिहास १ला भाग 1:1'")
expect(p.parse("1. Itihas 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Itihas 1:1'")
expect(p.parse("1. इतिहास 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. इतिहास 1:1'")
expect(p.parse("1 Itihas 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Itihas 1:1'")
expect(p.parse("1 इतिहास 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 इतिहास 1:1'")
expect(p.parse("1. इति 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. इति 1:1'")
expect(p.parse("1 इति 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 इति 1:1'")
expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'")
;
return true;
});
return it("should handle non-Latin digits in book: 1Chr (hi)", function() {
p.set_options({
non_latin_digits_strategy: "replace"
});
expect(p.parse("इतिहास 1ला भाग 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'इतिहास 1ला भाग 1:1'")
expect(p.parse("इतिहास १ला भाग 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'इतिहास १ला भाग 1:1'")
expect(p.parse("1. Itihas 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. Itihas 1:1'")
expect(p.parse("1. इतिहास 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. इतिहास 1:1'")
expect(p.parse("1 Itihas 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 Itihas 1:1'")
expect(p.parse("1 इतिहास 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 इतिहास 1:1'")
expect(p.parse("1. इति 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. इति 1:1'")
expect(p.parse("1 इति 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 इति 1:1'")
expect(p.parse("1Chr 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1Chr 1:1'")
p.include_apocrypha(false)
expect(p.parse("इतिहास 1ला भाग 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'इतिहास 1ला भाग 1:1'")
expect(p.parse("इतिहास १ला भाग 1:1").osis()).toEqual("1Chr.1.1", "parsing: 'इतिहास १ला भाग 1:1'")
expect(p.parse("1. ITIHAS 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. ITIHAS 1:1'")
expect(p.parse("1. इतिहास 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. इतिहास 1:1'")
expect(p.parse("1 ITIHAS 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 ITIHAS 1:1'")
expect(p.parse("1 इतिहास 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 इतिहास 1:1'")
expect(p.parse("1. इति 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1. इति 1:1'")
expect(p.parse("1 इति 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1 इति 1:1'")
expect(p.parse("1CHR 1:1").osis()).toEqual("1Chr.1.1", "parsing: '1CHR 1:1'")
;
return true;
});
});
describe("Localized book Ezra (hi)", 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: Ezra (hi)", function() {
expect(p.parse("Aejra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Aejra 1:1'")
expect(p.parse("एज्रा 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'एज्रा 1:1'")
expect(p.parse("Ezra 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'Ezra 1:1'")
p.include_apocrypha(false)
expect(p.parse("AEJRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'AEJRA 1:1'")
expect(p.parse("एज्रा 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'एज्रा 1:1'")
expect(p.parse("EZRA 1:1").osis()).toEqual("Ezra.1.1", "parsing: 'EZRA 1:1'")
;
return true;
});
});
describe("Localized book Neh (hi)", 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: Neh (hi)", function() {
expect(p.parse("न्हेम्याह 1:1").osis()).toEqual("Neh.1.1", "parsing: 'न्हेम्याह 1:1'")
expect(p.parse("Nahemyah 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Nahemyah 1:1'")
expect(p.parse("नहेमायाह 1:1").osis()).toEqual("Neh.1.1", "parsing: 'नहेमायाह 1:1'")
expect(p.parse("नहेम्याह 1:1").osis()).toEqual("Neh.1.1", "parsing: 'नहेम्याह 1:1'")
expect(p.parse("नहेमा 1:1").osis()).toEqual("Neh.1.1", "parsing: 'नहेमा 1:1'")
expect(p.parse("Neh 1:1").osis()).toEqual("Neh.1.1", "parsing: 'Neh 1:1'")
p.include_apocrypha(false)
expect(p.parse("न्हेम्याह 1:1").osis()).toEqual("Neh.1.1", "parsing: 'न्हेम्याह 1:1'")
expect(p.parse("NAHEMYAH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NAHEMYAH 1:1'")
expect(p.parse("नहेमायाह 1:1").osis()).toEqual("Neh.1.1", "parsing: 'नहेमायाह 1:1'")
expect(p.parse("नहेम्याह 1:1").osis()).toEqual("Neh.1.1", "parsing: 'नहेम्याह 1:1'")
expect(p.parse("नहेमा 1:1").osis()).toEqual("Neh.1.1", "parsing: 'नहेमा 1:1'")
expect(p.parse("NEH 1:1").osis()).toEqual("Neh.1.1", "parsing: 'NEH 1:1'")
;
return true;
});
});
describe("Localized book GkEsth (hi)", 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: GkEsth (hi)", function() {
expect(p.parse("GkEsth 1:1").osis()).toEqual("GkEsth.1.1", "parsing: 'GkEsth 1:1'")
;
return true;
});
});
describe("Localized book Esth (hi)", 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: Esth (hi)", function() {
expect(p.parse("Aester 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Aester 1:1'")
expect(p.parse("एस्तेर 1:1").osis()).toEqual("Esth.1.1", "parsing: 'एस्तेर 1:1'")
expect(p.parse("ऐस्तेर 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ऐस्तेर 1:1'")
expect(p.parse("Esth 1:1").osis()).toEqual("Esth.1.1", "parsing: 'Esth 1:1'")
p.include_apocrypha(false)
expect(p.parse("AESTER 1:1").osis()).toEqual("Esth.1.1", "parsing: 'AESTER 1:1'")
expect(p.parse("एस्तेर 1:1").osis()).toEqual("Esth.1.1", "parsing: 'एस्तेर 1:1'")
expect(p.parse("ऐस्तेर 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ऐस्तेर 1:1'")
expect(p.parse("ESTH 1:1").osis()).toEqual("Esth.1.1", "parsing: 'ESTH 1:1'")
;
return true;
});
});
describe("Localized book Job (hi)", 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: Job (hi)", function() {
expect(p.parse("Ayyoob 1:1").osis()).toEqual("Job.1.1", "parsing: 'Ayyoob 1:1'")
expect(p.parse("अय्यूब 1:1").osis()).toEqual("Job.1.1", "parsing: 'अय्यूब 1:1'")
expect(p.parse("अययुब 1:1").osis()).toEqual("Job.1.1", "parsing: 'अययुब 1:1'")
expect(p.parse("Job 1:1").osis()).toEqual("Job.1.1", "parsing: 'Job 1:1'")
p.include_apocrypha(false)
expect(p.parse("AYYOOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'AYYOOB 1:1'")
expect(p.parse("अय्यूब 1:1").osis()).toEqual("Job.1.1", "parsing: 'अय्यूब 1:1'")
expect(p.parse("अययुब 1:1").osis()).toEqual("Job.1.1", "parsing: 'अययुब 1:1'")
expect(p.parse("JOB 1:1").osis()).toEqual("Job.1.1", "parsing: 'JOB 1:1'")
;
return true;
});
});
describe("Localized book Ps (hi)", 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: Ps (hi)", function() {
expect(p.parse("भजन-सहिन्ता 1:1").osis()).toEqual("Ps.1.1", "parsing: 'भजन-सहिन्ता 1:1'")
expect(p.parse("भजन संहिता 1:1").osis()).toEqual("Ps.1.1", "parsing: 'भजन संहिता 1:1'")
expect(p.parse("Bhjan 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Bhjan 1:1'")
expect(p.parse("भजन 1:1").osis()).toEqual("Ps.1.1", "parsing: 'भजन 1:1'")
expect(p.parse("Ps 1:1").osis()).toEqual("Ps.1.1", "parsing: 'Ps 1:1'")
p.include_apocrypha(false)
expect(p.parse("भजन-सहिन्ता 1:1").osis()).toEqual("Ps.1.1", "parsing: 'भजन-सहिन्ता 1:1'")
expect(p.parse("भजन संहिता 1:1").osis()).toEqual("Ps.1.1", "parsing: 'भजन संहिता 1:1'")
expect(p.parse("BHJAN 1:1").osis()).toEqual("Ps.1.1", "parsing: 'BHJAN 1:1'")
expect(p.parse("भजन 1:1").osis()).toEqual("Ps.1.1", "parsing: 'भजन 1:1'")
expect(p.parse("PS 1:1").osis()).toEqual("Ps.1.1", "parsing: 'PS 1:1'")
;
return true;
});
});
describe("Localized book PrAzar (hi)", 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: PrAzar (hi)", function() {
expect(p.parse("PrAzar 1:1").osis()).toEqual("PrAzar.1.1", "parsing: 'PrAzar 1:1'")
;
return true;
});
});
describe("Localized book Prov (hi)", 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: Prov (hi)", function() {
expect(p.parse("Neetivachan 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Neetivachan 1:1'")
expect(p.parse("नीति वचन 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीति वचन 1:1'")
expect(p.parse("नीतिबचन 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीतिबचन 1:1'")
expect(p.parse("नीतिवचन 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीतिवचन 1:1'")
expect(p.parse("Prov 1:1").osis()).toEqual("Prov.1.1", "parsing: 'Prov 1:1'")
expect(p.parse("नीति 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीति 1:1'")
p.include_apocrypha(false)
expect(p.parse("NEETIVACHAN 1:1").osis()).toEqual("Prov.1.1", "parsing: 'NEETIVACHAN 1:1'")
expect(p.parse("नीति वचन 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीति वचन 1:1'")
expect(p.parse("नीतिबचन 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीतिबचन 1:1'")
expect(p.parse("नीतिवचन 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीतिवचन 1:1'")
expect(p.parse("PROV 1:1").osis()).toEqual("Prov.1.1", "parsing: 'PROV 1:1'")
expect(p.parse("नीति 1:1").osis()).toEqual("Prov.1.1", "parsing: 'नीति 1:1'")
;
return true;
});
});
describe("Localized book Eccl (hi)", func