public void Parsing_Script() { var id = LocaleIdentifier.Parse("Cyrl"); Assert.AreEqual("Cyrl", id.Script); Assert.IsFalse(LocaleIdentifier.TryParse("NotAScript", out id)); }
public void Parsing_Language() { var id = LocaleIdentifier.Parse("en"); Assert.AreEqual("en", id.Language); Assert.IsFalse(LocaleIdentifier.TryParse("NotALanguageCode", out id)); }
public void Parsing_Language_Script() { var id = LocaleIdentifier.Parse("uz-Cyrl"); Assert.AreEqual("uz", id.Language); Assert.AreEqual("Cyrl", id.Script); Assert.IsFalse(LocaleIdentifier.TryParse("es-NotScript", out id)); }
public void Parsing_Language_Region() { var id = LocaleIdentifier.Parse("es-419"); Assert.AreEqual("es", id.Language); Assert.AreEqual("419", id.Region); Assert.IsFalse(LocaleIdentifier.TryParse("es-12345", out id)); }
public void Parsing_Language_Country() { var id = LocaleIdentifier.Parse("en-US"); Assert.AreEqual("en", id.Language); Assert.AreEqual("US", id.Region); Assert.IsFalse(LocaleIdentifier.TryParse("en-NotACountryCode", out id)); }
public void Parsing_Invalid_Unicode_Extension() { LocaleIdentifier id; string message; var ok = LocaleIdentifier.TryParse("th-u-xx-invalidtype", out id, out message); Assert.IsFalse(ok); Assert.IsNull(id); }
public void Parsing_Script_Region() { var id = LocaleIdentifier.Parse("Cyrl-RU"); Assert.AreEqual("Cyrl", id.Script); Assert.AreEqual("RU", id.Region); Assert.IsFalse(LocaleIdentifier.TryParse("Cyrl-NotACounty", out id)); }
public void Parsing_Language_Script_Country() { var id = LocaleIdentifier.Parse("zh-Hant-CN"); Assert.AreEqual("zh", id.Language); Assert.AreEqual("Hant", id.Script); Assert.AreEqual("CN", id.Region); Assert.IsFalse(LocaleIdentifier.TryParse("zh-Hant-NotACountry", out id)); }
public void Parsing_Messages() { string message; LocaleIdentifier id; var ok = LocaleIdentifier.TryParse("en-r-alpha-r-alpha", out id, out message); Assert.AreEqual(false, ok); Assert.AreEqual(null, id); Assert.AreEqual("'en-r-alpha-r-alpha' is not a valid locale identifier because an extension is duplicated.", message); }
public void Parsing_Variants_Are_Not_Repeated() { string message; LocaleIdentifier id; var ok = LocaleIdentifier.TryParse("de-CH-1901-1901", out id, out message); Assert.AreEqual(false, ok); Assert.AreEqual(null, id); Assert.AreEqual("'de-CH-1901-1901' is not a valid locale identifier because a variant is duplicated.", message); ExceptionAssert.Throws <FormatException>(() => LocaleIdentifier.Parse("de-CH-1901-1901")); }