public void ShouldMatchResourceOnKeyAndValue() { var filter = new ResourceFilter { KeyRegex = new Regex(@"Kiwi"), ValueRegex = new Regex(@"amazing kiwi") }; var resource = new Resource("This_is_my_Kiwi_resource", "What an amazing kiwi"); filter.IsMatch(resource).ShouldBeTrue(); }
public void ShouldMatchResourceOnKey() { var filter = new ResourceFilter { KeyRegex = new Regex(@"Kiwi") }; var resource = new Resource("This_is_my_Kiwi_resource"); filter.IsMatch(resource).ShouldBeTrue(); }
public static ResourceList ParseAllResourceFiles(IFileSystem fileSystem, string path, ResourceFilter resourceFilter = null) { var resourceList = new ResourceList(); var fileFilter = new FileFilter { FileExtensionWhitelist = new Regex(@"\.resx$") }; foreach (var file in fileSystem.AllFiles(path, fileFilter)) { var xml = fileSystem.LoadXmlFile(file.FullName); resourceList.Merge(ParseAsResourceList(xml, resourceFilter)); } return resourceList; }
public ResourceList Clone(ResourceFilter filter = null) { if (filter == null) { filter = ResourceFilter.NoFilter; } var clonedList = new ResourceList(); foreach (var resource in this.Where(resource => filter.IsMatch(resource))) { clonedList.Add(new Resource(resource)); } return(clonedList); }
public static ResourceList ParseAsResourceList(XElement xmlDocument, ResourceFilter filter = null) { if (filter == null) { filter = ResourceFilter.NoFilter; } var resourceList = new ResourceList(); foreach (var resourceElement in xmlDocument.Elements()) { if (resourceElement.Name.LocalName != "data") { continue; } var key = resourceElement.Attribute("name").Value; if (!filter.KeyIsMatch(key)) { continue; } var valueElement = resourceElement.Element("value"); var value = string.Empty; if (valueElement != null) { value = valueElement.Value; } if (!filter.ValueIsMatch(value)) { continue; } resourceList.Add(new Resource(key, value)); } return(resourceList); }
public static ResourceList ParseAsResourceList(XElement xmlDocument, ResourceFilter filter = null) { if (filter == null) { filter = ResourceFilter.NoFilter; } var resourceList = new ResourceList(); foreach (var resourceElement in xmlDocument.Elements()) { if (resourceElement.Name.LocalName != "data") { continue; } var key = resourceElement.Attribute("name").Value; if (!filter.KeyIsMatch(key)) { continue; } var valueElement = resourceElement.Element("value"); var value = string.Empty; if (valueElement != null) { value = valueElement.Value; } if (!filter.ValueIsMatch(value)) { continue; } resourceList.Add(new Resource(key, value)); } return resourceList; }
public static ResourceList ParseAllResourceFiles(IFileSystem fileSystem, string path, ResourceFilter resourceFilter = null) { var resourceList = new ResourceList(); var fileFilter = new FileFilter { FileExtensionWhitelist = new Regex(@"\.resx$") }; foreach (var file in fileSystem.AllFiles(path, fileFilter)) { var xml = fileSystem.LoadXmlFile(file.FullName); resourceList.Merge(ParseAsResourceList(xml, resourceFilter)); } return(resourceList); }
public static ResourceList ParseAsResourceList(string xmlString, ResourceFilter filter = null) { var xmlDocument = XElement.Parse(xmlString); return(ParseAsResourceList(xmlDocument, filter)); }
public void ShouldMatchValueString() { var filter = new ResourceFilter { ValueRegex = new Regex(@"amazing kiwi") }; filter.ValueIsMatch("What an amazing kiwi").ShouldBeTrue(); }
public void ShouldMatchKeyString() { var filter = new ResourceFilter { KeyRegex = new Regex(@"Kiwi") }; filter.KeyIsMatch("This_is_my_Kiwi_resource").ShouldBeTrue(); }
public static ResourceList ParseAsResourceList(string xmlString, ResourceFilter filter = null) { var xmlDocument = XElement.Parse(xmlString); return ParseAsResourceList(xmlDocument, filter); }