public void SelectEnumerableValuesUsingScalarPathFromReferenceType_Expected_SingleValueInEnumeration() { PocoTestData testData = Given(); IPath namePath = new PocoPath("NestedData.Name", "NestedData.Name"); PocoNavigator pocoNavigator = new PocoNavigator(testData); IEnumerable <object> data = pocoNavigator.SelectEnumerable(namePath); string expected = testData.NestedData.Name; string actual = string.Join("", data.Select(o => o.ToString())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesUsingEnumerablePathFromReferenceType_Expected_ValuesFromEachItemInEnumeration() { PocoTestData testData = Given(); IPath namePath = new PocoPath("EnumerableData().Name", "EnumerableData.Name"); PocoNavigator pocoNavigator = new PocoNavigator(testData); IEnumerable <object> data = pocoNavigator.SelectEnumerable(namePath); string expected = string.Join("|", testData.EnumerableData.Select(e => e.Name)); string actual = string.Join("|", data.Select(o => o.ToString())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesUsingRootPathFromPrimitive_Expected_SingleValueInEnumeration() { PocoTestData testData = Given(); IPath path = new PocoPath(PocoPath.SeperatorSymbol, PocoPath.SeperatorSymbol); PocoNavigator pocoNavigator = new PocoNavigator(1); IEnumerable <object> data = pocoNavigator.SelectEnumerable(path); string expected = "1"; string actual = string.Join("", data.Select(o => o.ToString())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesUsingScalarPathFromEnumerable_Expected_SingleValueInEnumeration() { var testData = Given(); IPath namePath = new PocoPath("EnumerableData.Count", "EnumerableData.Count"); var pocoNavigator = new PocoNavigator(testData); var data = pocoNavigator.SelectEnumerable(namePath); var expected = testData.EnumerableData.Count.ToString(); var actual = string.Join("", data.Select(o => o.ToString())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesUsingEnumerableReferenceType_Expected_ValuesFromEachItemInEnumeration() { var testData = Given(); IPath namePath = new PocoPath("UnnamedArray().Name", "UnnamedArray.Name"); var pocoNavigator = new PocoNavigator(testData.EnumerableData); var data = pocoNavigator.SelectEnumerable(namePath); var expected = string.Join("|", testData.EnumerableData.Select(e => e.Name)); var actual = string.Join("|", data.Select(o => o.ToString())); Assert.AreEqual(expected, actual); }
public void SelectEnumerableValuesAsRelatedUsingRootPathFromEnumerableContainingOnlyPrimitives_Expected_ValuesForEachValueInEnumeration() { List <int> testData = new List <int> { 1, 2, 3 }; IPath path = new PocoPath("().", "()."); PocoNavigator pocoNavigator = new PocoNavigator(testData); IEnumerable <object> data = pocoNavigator.SelectEnumerable(path); string expected = string.Join("|", testData.Select(e => e)); string actual = string.Join("|", data.Select(o => o.ToString())); Assert.AreEqual(expected, actual); }