[TestCase("x-thisiswaytoolong")] // > 15 characters (should be 8 but langtags.json has up to 15) public void TryGetVariantSubtags_PrivateUseRulesHonored(string privateUseVariantTag) { IEnumerable <VariantSubtag> variantSubtags; // Test both with and without custom name Assert.That(IetfLanguageTag.TryGetVariantSubtags(privateUseVariantTag, out variantSubtags, "Bad Variant"), Is.False); Assert.That(IetfLanguageTag.TryGetVariantSubtags(privateUseVariantTag, out variantSubtags), Is.False); }
public override WritingSystemDefinition ShowDialogIfNeededAndGetDefinition() { var dlg = new GetDialectNameDialog(); if (DialogResult.OK != dlg.ShowDialog()) { return(null); } WritingSystemDefinition ws = WritingSystemFactory.Create(_templateWritingSystemDefinition); IEnumerable <VariantSubtag> variantSubtags; if (IetfLanguageTag.TryGetVariantSubtags(dlg.DialectName.ToValidVariantString(), out variantSubtags)) { ws.Variants.ReplaceAll(variantSubtags); } return(ws); }
private IEnumerable <VariantSubtag> GetCurrentVariants() { // TODO: Remove StandardVariant if it is no longer applicable var variants = string.IsNullOrEmpty(StandardVariant) ? string.Empty : StandardVariant; if (!string.IsNullOrEmpty(OtherVariants)) { variants += "-"; variants += OtherVariants; } IEnumerable <VariantSubtag> varaintList; if (IetfLanguageTag.TryGetVariantSubtags(variants, out varaintList)) { return(varaintList); } return(null); }
public void TryGetVariantSubtags_ReturnsTwoVariantSubTags() { IEnumerable <VariantSubtag> variantSubtags; IetfLanguageTag.TryGetVariantSubtags("x-code1-code2", out variantSubtags, "x-name1,name2"); Assert.AreEqual(2, variantSubtags.Count()); int index = 0; foreach (VariantSubtag variantSubtag in variantSubtags) { if (index == 0) //For first VariantSubTag { Assert.That("code1", Is.EqualTo(variantSubtag.Code)); Assert.That("x-name1", Is.EqualTo(variantSubtag.Name)); } else //For second VariantSubTag { Assert.That("code2", Is.EqualTo(variantSubtag.Code)); Assert.That("name2", Is.EqualTo(variantSubtag.Name)); } index++; } }
/// <summary/> public bool ValidateOtherVariants(string otherVariants) { IEnumerable <VariantSubtag> tags; return(!otherVariants.EndsWith("-") && IetfLanguageTag.TryGetVariantSubtags(otherVariants, out tags)); }