public SelectEnumerablesAsRelated ( IList |
||
paths | IList |
|
return | IList |
public void SelectEnumerableValuesAsRelatedUsingEnumerablePathFromXml_Where_PathsContainASinglePathWhichIsScalar_Expected_FlattenedDataWithValueFromScalarPath() { string testData = Given(); IPath path = new XmlPath("Company:Name", "Company:Name"); List<IPath> paths = new List<IPath> { path }; XmlNavigator xmlNavigator = new XmlNavigator(testData); Dictionary<IPath, IList<object>> data = xmlNavigator.SelectEnumerablesAsRelated(paths); string expected = "Dev2"; string actual = string.Join("|", data[path].Select(s => s.ToString().Trim())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesAsRelatedUsingEnumerablePathFromXml_Where_PathsContainASinglePathWhichIsEnumerable_Expected_FlattenedDataWithValuesFromEnumerablePath() { string testData = Given(); IPath path = new XmlPath("Company.Departments().Department.Employees().Person:Name", "Company.Departments.Department.Employees.Person:Name"); List<IPath> paths = new List<IPath> { path }; XmlNavigator xmlNavigator = new XmlNavigator(testData); Dictionary<IPath, IList<object>> data = xmlNavigator.SelectEnumerablesAsRelated(paths); string expected = "Brendon|Jayd|Bob|Joe"; string actual = string.Join("|", data[path].Select(s => s.ToString().Trim())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesAsRelatedUsingEnumerablePathFromXml_Where_PathsContainNestedEnumerablePaths_Expected_FlattenedDataWithValuesFromOuterEnumerablePathRepeatingForEveryValueFromNestedEnumerablePath() { string testData = Given(); IPath path = new XmlPath("Company.Departments().Department:Name", "Company.Departments.Department:Name"); IPath path1 = new XmlPath("Company.Departments().Department.Employees().Person:Name", "Company.Departments.Department.Employees.Person:Name"); List<IPath> paths = new List<IPath> { path, path1 }; XmlNavigator xmlNavigator = new XmlNavigator(testData); Dictionary<IPath, IList<object>> data = xmlNavigator.SelectEnumerablesAsRelated(paths); string expected = "Dev|Dev|Accounts|Accounts^Brendon|Jayd|Bob|Joe"; string actual = string.Join("|", data[path].Select(s => s.ToString().Trim())) + "^" + string.Join("|", data[path1].Select(s => s.ToString().Trim())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesAsRelatedUsingEnumerablePathFromXml_Where_PathsContainUnrelatedEnumerablePaths_Expected_FlattenedDataWithValuesFromUnrelatedEnumerablePathsAtMatchingIndexes() { string testData = Given(); IPath path = new XmlPath("Company().OuterNestedRecordSet().InnerNestedRecordSet:ItemValue", "Company.OuterNestedRecordSet.InnerNestedRecordSet:ItemValue"); IPath path1 = new XmlPath("Company().InlineRecordSet", "Company.InlineRecordSet"); List<IPath> paths = new List<IPath> { path, path1 }; XmlNavigator xmlNavigator = new XmlNavigator(testData); Dictionary<IPath, IList<object>> data = xmlNavigator.SelectEnumerablesAsRelated(paths); string expected = "val1|val2|val3|val4^RandomData|RandomData1||"; string actual = string.Join("|", data[path].Select(s => s.ToString().Trim())) + "^" + string.Join("|", data[path1].Select(s => s.ToString().Trim())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesAsRelatedUsingEnumerablePathFromXml_Where_PathsContainAScalarPath_Expected_FlattenedDataWithValueFromScalarPathRepeatingForEachEnumeration() { string testData = Given(); IPath path = new XmlPath("Company:Name", "Company:Name"); IPath path1 = new XmlPath("Company().InlineRecordSet", "Company.InlineRecordSet"); List<IPath> paths = new List<IPath> { path, path1 }; XmlNavigator xmlNavigator = new XmlNavigator(testData); Dictionary<IPath, IList<object>> data = xmlNavigator.SelectEnumerablesAsRelated(paths); string expected = "Dev2|Dev2^RandomData|RandomData1"; string actual = string.Join("|", data[path].Select(s => s.ToString().Trim())) + "^" + string.Join("|", data[path1].Select(s => s.ToString().Trim())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesAsRelatedUsingScalarPathFromXmlWithASingleNode_WherePathMapsToANode_Expected_ScalarValue() { string testData = GivenSingleNode(); IPath namePath = new XmlPath("Message", "Message"); IList<IPath> paths = new List<IPath>(); paths.Add(namePath); XmlNavigator xmlNavigator = new XmlNavigator(testData); var actual = xmlNavigator.SelectEnumerablesAsRelated(paths); string expected = "Dummy Data"; Assert.IsTrue(actual[namePath].Contains(expected)); }