public void EnIsEncodingsRecordGetStringByIdAndLang() { String expectedEn = "ab\u2020cd"; String expectedIs = "ab\u00D0c\u00DEe"; byte[] buffer = RecordBytesEnIsEncodings; ServiceRecord record = new ServiceRecordParser().Parse(buffer); LanguageBaseItem[] langList = record.GetLanguageBaseList(); // LanguageBaseItem langIs = langList[0]; Assert.AreEqual("is", langIs.NaturalLanguage); LanguageBaseItem langEn = langList[1]; Assert.AreEqual("en", langEn.NaturalLanguage); // // Here's the stuff really tested here!!!! String resultEn = record.GetMultiLanguageStringAttributeById(0, langEn); String resultIs = record.GetMultiLanguageStringAttributeById(0, langIs); Assert.AreEqual(expectedEn, resultEn); Assert.AreEqual(expectedIs, resultIs); String resultEnPrimary = record.GetPrimaryMultiLanguageStringAttributeById(0); Assert.AreEqual(expectedEn, resultEnPrimary); }
public void EnIsEncodingsRecordGetStringByIdAndLangNoLangBaseItems() { String expectedEn = "ab\u2020cd"; byte[] buffer = RecordBytesEnIsEncodingsNoLangBaseItems; ServiceRecord record = new ServiceRecordParser().Parse(buffer); // LanguageBaseItem[] langList = record.GetLanguageBaseList(); Assert.AreEqual(0, langList.Length, "#LangItems==0"); // String resultEnPrimary = record.GetPrimaryMultiLanguageStringAttributeById(0); Assert.AreEqual(expectedEn, resultEnPrimary); }
public void BadNonStringAttributePrimary() { byte[] buffer = Data_CompleteThirdPartyRecords.Xp1Sdp; ServiceRecord record = new ServiceRecordParser().Parse(buffer); LanguageBaseItem[] langList = record.GetLanguageBaseList(); // LanguageBaseItem langEn = langList[0]; Assert.AreEqual("en", langEn.NaturalLanguage); // // There's a attribute 0x0201 of type UInt32, accessing it should fail String resultEn = record.GetPrimaryMultiLanguageStringAttributeById((ServiceAttributeId)0x101); Assert.Fail("should have thrown!"); }