GetVariableOrNull() public method

public GetVariableOrNull ( string key, string writingSystem ) : string
key string
writingSystem string
return string
Ejemplo n.º 1
0
 public void Constructor_CollectionSettingsHasCountrProvinceDistrict_LanguageLocationFilledIn()
 {
     //            var dom = new HtmlDom(@"<html><head><div id='bloomDataDiv'>
     //                    <div data-book='country'>the country</div>
     //                    <div data-book='province'>the province</div>
     //                    <div data-book='district'>the district</div>
     //            </div></head><body></body></html>");
     var dom = new HtmlDom();
     var data = new BookData(dom, new CollectionSettings(){Country="the country", Province = "the province", District= "the district"}, null);
     Assert.AreEqual("the district, the province<br/>the country", data.GetVariableOrNull("languageLocation", "*"));
 }
Ejemplo n.º 2
0
 public void Constructor_CollectionSettingsHasLanguage3Iso639Code_nameOfNationalLanguage2FilledIn()
 {
     var dom = new HtmlDom();
     var data = new BookData(dom, new CollectionSettings() { Language3Iso639Code = "tpi" }, null);
     Assert.AreEqual("Tok Pisin", data.GetVariableOrNull("nameOfNationalLanguage2", "*"));
 }
Ejemplo n.º 3
0
 public void Constructor_CollectionSettingsHasLanguage1Name_LanguagenameOfNationalLanguage1FilledIn()
 {
     var dom = new HtmlDom();
     var data = new BookData(dom, new CollectionSettings() { Language1Name = "foobar" }, null);
     Assert.AreEqual("foobar", data.GetVariableOrNull("nameOfLanguage", "*"));
 }
Ejemplo n.º 4
0
 public void Constructor_CollectionSettingsHasISO639Code_iso639CodeFilledIn()
 {
     var dom = new HtmlDom();
     var data = new BookData(dom, new CollectionSettings() { Language1Iso639Code = "xyz" }, null);
     Assert.AreEqual("xyz", data.GetVariableOrNull("iso639Code", "*"));
 }
Ejemplo n.º 5
0
        public void SuckInDataFromEditedDom_NoDataDIvTitleChanged_NewTitleInCache()
        {
            HtmlDom bookDom = new HtmlDom(@"<html ><head></head><body>
                <div class='bloom-page' id='guid2'>
                    <textarea lang='xyz' data-book='bookTitle'>original</textarea>
                </div>
             </body></html>");
               var data = new BookData(bookDom, _collectionSettings, null);
               Assert.AreEqual("original", data.GetVariableOrNull("bookTitle", "xyz"));

               HtmlDom editedPageDom = new HtmlDom(@"<html ><head></head><body>
                <div class='bloom-page' id='guid2'>
                    <textarea lang='xyz' data-book='bookTitle'>changed</textarea>
                </div>
             </body></html>");

               data.SuckInDataFromEditedDom(editedPageDom);

               Assert.AreEqual("changed", data.GetVariableOrNull("bookTitle", "xyz"));
        }
Ejemplo n.º 6
0
 public void Set_Null_Removes()
 {
     var htmlDom = new HtmlDom();
     var data = new BookData(htmlDom, new CollectionSettings(), null);
     data.Set("1", "one", "en");
     data.Set("1", null, "en");
     Assert.AreEqual(null, data.GetVariableOrNull("1", "en"));
     AssertThatXmlIn.Dom(htmlDom.RawDom).HasSpecifiedNumberOfMatchesForXpath("//div[@lang='en']", 0);
     var roundTripData = new BookData(htmlDom, new CollectionSettings(), null);
     Assert.IsNull(roundTripData.GetVariableOrNull("1", "en"));
 }
Ejemplo n.º 7
0
 public void Set_AddTwoForms_BothAdded()
 {
     var htmlDom = new HtmlDom();
     var data = new BookData(htmlDom, new CollectionSettings(), null);
     data.Set("1", "one", "en");
     data.Set("1", "uno", "es");
     var roundTripData = new BookData(htmlDom, new CollectionSettings(), null);
     Assert.AreEqual("one", roundTripData.GetVariableOrNull("1", "en"));
     Assert.AreEqual("uno", roundTripData.GetVariableOrNull("1", "es"));
 }
Ejemplo n.º 8
0
 public void Set_DidNotHaveForm_Added()
 {
     var htmlDom = new HtmlDom();
     var data = new BookData(htmlDom, new CollectionSettings(), null);
     data.Set("1", "one", "en");
     Assert.AreEqual("one", data.GetVariableOrNull("1", "en"));
     AssertThatXmlIn.Dom(htmlDom.RawDom).HasSpecifiedNumberOfMatchesForXpath("//div[@lang='en']",1);
     var roundTripData = new BookData(htmlDom, new CollectionSettings(), null);
     var t = roundTripData.GetVariableOrNull("1", "en");
     Assert.AreEqual("one", t);
 }
Ejemplo n.º 9
0
 public void RemoveSingleForm_HasForm_Removed()
 {
     var htmlDom = new HtmlDom();
     var data = new BookData(htmlDom, new CollectionSettings(), null);
     data.Set("1","one","en");
     var data2 = new BookData(htmlDom, new CollectionSettings(), null);
     data2.RemoveSingleForm("1","en");
     Assert.IsNull(data2.GetVariableOrNull("1", "en"));
 }
Ejemplo n.º 10
0
 public void RemoveDataDivVariableForOneLanguage_WasTwoForms_OtherRemains()
 {
     var htmlDom = new HtmlDom();
     var data = new BookData(htmlDom, new CollectionSettings(), null);
     data.Set("1", "one", "en");
     data.Set("1", "uno", "es");
     var roundTripData = new BookData(htmlDom, new CollectionSettings(), null);
     roundTripData.RemoveSingleForm("1", "en");
     Assert.IsNull(roundTripData.GetVariableOrNull("1", "en"));
     Assert.AreEqual("uno",roundTripData.GetVariableOrNull("1","es"));
 }
Ejemplo n.º 11
0
 public void RemoveDataDivVariableForOneLanguage_WasLastForm_WholeElementRemoved()
 {
     var htmlDom = new HtmlDom();
     var data = new BookData(htmlDom, new CollectionSettings(), null);
     data.Set("1","one","en");
     var roundTripData = new BookData(htmlDom, new CollectionSettings(), null);
     roundTripData.RemoveSingleForm("1", "en");
     Assert.IsNull(roundTripData.GetVariableOrNull("1", "en"));
 }
Ejemplo n.º 12
0
 public void RemoveDataDivVariableForOneLanguage_DoesNotHaveForm_OK()
 {
     var htmlDom = new HtmlDom();
     var data = new BookData(htmlDom, new CollectionSettings(), null);
     data.RemoveSingleForm("1", "en");
     Assert.AreEqual(null, data.GetVariableOrNull("1", "en"));
     AssertThatXmlIn.Dom(htmlDom.RawDom).HasSpecifiedNumberOfMatchesForXpath("//div[@lang='en']", 0);
     var roundTripData = new BookData(htmlDom, new CollectionSettings(), null);
     Assert.IsNull(roundTripData.GetVariableOrNull("1", "en"));
 }
Ejemplo n.º 13
0
        public void MigrateData_TopicInTokPisinButNotEnglish_ChangesLangeToEnglish()
        {
            var bookDom = new HtmlDom(@"<html ><head></head><body>
                <div id='bloomDataDiv'>
                        <div data-book='topic' lang='tpi'>health</div>
                </div>
             </body></html>");

            var data = new BookData(bookDom, _collectionSettings, null);
            Assert.AreEqual("health", data.GetVariableOrNull("topic", "en"));
            Assert.IsNull(data.GetVariableOrNull("topic", "tpi"));
        }