Пример #1
0
 public void XmlNavigator_SelectEnumerableValue_WithoutXmlPath_Expected_Exception()
 {
     using (var xmlNavigator = new XmlNavigator(TestData))
     {
         xmlNavigator.SelectEnumerable(new JsonPath());
     }
 }
Пример #2
0
 public void XmlNavigator_SelectEnumerableValueUsingNull_Expected_ArgumentNullException()
 {
     using (var xmlNavigator = new XmlNavigator(TestData))
     {
         xmlNavigator.SelectEnumerable(null);
     }
 }
Пример #3
0
        public void SelectEnumerableValuesUsingEnumerablePathFromXml_WherePathMapsThroughNestedEnumerablesScenario1_Expected_EnumerableValue()
        {
            IPath path = new XmlPath("Company.Departments().Department.Employees().Person:Name", "Company.Departments.Department.Employees.Person:Name");

            var xmlNavigator = new XmlNavigator(testData);

            var          actual   = string.Join("|", xmlNavigator.SelectEnumerable(path).Select(o => o.ToString().Trim()));
            const string expected = "Brendon|Jayd|Bob|Joe";

            Assert.AreEqual(expected, actual);
        }
Пример #4
0
        public void SelectEnumerableValuesUsingEnumerablePathFromXml_WherePathMapsThroughNestedEnumerablesScenario2_Expected_EnumerableValue()
        {
            IPath path = new XmlPath("Company().OuterNestedRecordSet().InnerNestedRecordSet:ItemValue", "Company.OuterNestedRecordSet.InnerNestedRecordSet:ItemValue");

            var xmlNavigator = new XmlNavigator(testData);

            var          actual   = string.Join("|", xmlNavigator.SelectEnumerable(path).Select(o => o.ToString().Trim()));
            const string expected = "val1|val2|val3|val4";

            Assert.AreEqual(expected, actual);
        }
Пример #5
0
        public void SelectEnumerableValuesUsingScalarPathFromXml_WherePathMapsToAnAttribute_Expected_EnumerableValue()
        {
            IPath path = new XmlPath("Company:Name", "Company:Name");

            var xmlNavigator = new XmlNavigator(testData);

            var          actual   = string.Join("|", xmlNavigator.SelectEnumerable(path).Select(o => o.ToString().Trim()));
            const string expected = "Dev2";

            Assert.AreEqual(expected, actual);
        }
Пример #6
0
        public void SelectEnumerableValuesUsingEnumerablePathFromXml_WherePathMapsToANode_Expected_EnumerableValue()
        {
            IPath path = new XmlPath("Company().InlineRecordSet", "Company.InlineRecordSet");

            var xmlNavigator = new XmlNavigator(testData);

            var          actual   = string.Join("|", xmlNavigator.SelectEnumerable(path).Select(o => o.ToString().Trim()));
            const string expected = "RandomData|RandomData1";

            Assert.AreEqual(expected, actual);
        }
Пример #7
0
        public void SelectEnumerableValueUsingScalarPathFromXmlWithASingleNode_WherePathMapsToANode_Expected_ScalarValue()
        {
            IPath namePath = new XmlPath("Message", "Message");

            var xmlNavigator = new XmlNavigator(GivenSingleNode);

            var          actual   = xmlNavigator.SelectEnumerable(namePath);
            const string expected = "Dummy Data";

            Assert.IsTrue(actual.Contains(expected));
        }
Пример #8
0
        public void XmlNavigator_SelectEnumerableValuesUsingScalarPathFromXml_WherePathMapsToANode_Expected_EnumerableValue()
        {
            IPath path = new XmlPath("Company.Motto", "Company.Motto");

            using (var xmlNavigator = new XmlNavigator(TestData))
            {
                var          actual   = string.Join("|", xmlNavigator.SelectEnumerable(path).Select(o => o.ToString().Trim()));
                const string expected = "Eat lots of cake";

                Assert.AreEqual(expected, actual);
            }
        }
Пример #9
0
        public void XmlNavigator_SelectEnumerableValuesUsingEnumerablePathFromXml_WherePathMapsToAnAttribute_Expected_EnumerableValue()
        {
            IPath path = new XmlPath("Company.Departments().Department:Name", "Company.Departments.Department:Name");

            using (var xmlNavigator = new XmlNavigator(TestData))
            {
                var          actual   = string.Join("|", xmlNavigator.SelectEnumerable(path).Select(o => o.ToString().Trim()));
                const string expected = "Dev|Accounts";

                Assert.AreEqual(expected, actual);
            }
        }
Пример #10
0
        public void SelectEnumerableValuesUsingScalarPathFromXml_WherePathMapsToANode_Expected_EnumerableValue()
        {
            string testData = Given();

            IPath path = new XmlPath("Company.Motto", "Company.Motto");

            XmlNavigator xmlNavigator = new XmlNavigator(testData);

            string actual   = string.Join("|", xmlNavigator.SelectEnumerable(path).Select(o => o.ToString().Trim()));
            string expected = "Eat lots of cake";

            Assert.AreEqual(expected, actual);
        }
Пример #11
0
        public void SelectEnumerableValueUsingScalarPathFromXmlWithASingleNode_WherePathMapsToANode_Expected_ScalarValue()
        {
            string testData = GivenSingleNode();

            IPath namePath = new XmlPath("Message", "Message");

            XmlNavigator xmlNavigator = new XmlNavigator(testData);

            IEnumerable <object> actual = xmlNavigator.SelectEnumerable(namePath);
            string expected             = "Dummy Data";

            Assert.IsTrue(actual.Contains(expected));
        }
Пример #12
0
        public void XmlNavigator_SelectEnumerable_ValueUsingPathSeperator_Expected_ScalarValue()
        {
            IPath namePath = new XmlPath(".", ".");

            using (var xmlNavigator = new XmlNavigator(TestData))
            {
                var actual   = xmlNavigator.SelectEnumerable(namePath);
                var expected = new List <object>
                {
                    "<Company Name=\"Dev2\">\r\n" +
                    "  <Motto>Eat lots of cake</Motto>\r\n" +
                    "  <PreviousMotto />\r\n" +
                    "  <Departments TestAttrib=\"testing\">\r\n" +
                    "    <Department Name=\"Dev\">\r\n" +
                    "      <Employees>\r\n" +
                    "        <Person Name=\"Brendon\" Surename=\"Page\" />\r\n" +
                    "        <Person Name=\"Jayd\" Surename=\"Page\" />\r\n" +
                    "      </Employees>\r\n" +
                    "    </Department>\r\n" +
                    "    <Department Name=\"Accounts\">\r\n" +
                    "      <Employees>\r\n" +
                    "        <Person Name=\"Bob\" Surename=\"Soap\" />\r\n" +
                    "        <Person Name=\"Joe\" Surename=\"Pants\" />\r\n" +
                    "      </Employees>\r\n" +
                    "    </Department>\r\n" +
                    "  </Departments>\r\n" +
                    "  <InlineRecordSet>\r\n" +
                    "                RandomData\r\n" +
                    "            </InlineRecordSet>\r\n" +
                    "  <InlineRecordSet>\r\n" +
                    "                RandomData1\r\n" +
                    "            </InlineRecordSet>\r\n" +
                    "  <OuterNestedRecordSet>\r\n" +
                    "    <InnerNestedRecordSet ItemValue=\"val1\" />\r\n" +
                    "    <InnerNestedRecordSet ItemValue=\"val2\" />\r\n" +
                    "  </OuterNestedRecordSet>\r\n" +
                    "  <OuterNestedRecordSet>\r\n" +
                    "    <InnerNestedRecordSet ItemValue=\"val3\" />\r\n" +
                    "    <InnerNestedRecordSet ItemValue=\"val4\" />\r\n" +
                    "  </OuterNestedRecordSet>\r\n" +
                    "</Company>"
                };

                Assert.AreEqual(expected.FirstOrDefault().ToString(), actual.FirstOrDefault().ToString());
            }
        }
Пример #13
0
        public void XmlNavigator_SelectEnumerableValueUsingPathSeperator_Expected_ScalarValue()
        {
            IPath namePath = new XmlPath(".", ".");

            using (var xmlNavigator = new XmlNavigator(TestData))
            {
                var actual   = xmlNavigator.SelectEnumerable(namePath);
                var expected = new List <object> {
                    @"<Company Name=""Dev2"">
  <Motto>Eat lots of cake</Motto>
  <PreviousMotto />
  <Departments TestAttrib=""testing"">
    <Department Name=""Dev"">
      <Employees>
        <Person Name=""Brendon"" Surename=""Page"" />
        <Person Name=""Jayd"" Surename=""Page"" />
      </Employees>
    </Department>
    <Department Name=""Accounts"">
      <Employees>
        <Person Name=""Bob"" Surename=""Soap"" />
        <Person Name=""Joe"" Surename=""Pants"" />
      </Employees>
    </Department>
  </Departments>
  <InlineRecordSet>
        RandomData
    </InlineRecordSet>
  <InlineRecordSet>
        RandomData1
    </InlineRecordSet>
  <OuterNestedRecordSet>
    <InnerNestedRecordSet ItemValue=""val1"" />
    <InnerNestedRecordSet ItemValue=""val2"" />
  </OuterNestedRecordSet>
  <OuterNestedRecordSet>
    <InnerNestedRecordSet ItemValue=""val3"" />
    <InnerNestedRecordSet ItemValue=""val4"" />
  </OuterNestedRecordSet>
</Company>"
                };

                Assert.AreEqual(expected.FirstOrDefault().ToString(), actual.FirstOrDefault().ToString());
            }
        }
Пример #14
0
        public void SelectEnumerableValue_WithoutXmlPath_Expected_Exception()
        {
            var xmlNavigator = new XmlNavigator(testData);

            xmlNavigator.SelectEnumerable(new JsonPath());
        }
Пример #15
0
        public void SelectEnumerableValueUsingNull_Expected_ArgumentNullException()
        {
            var xmlNavigator = new XmlNavigator(testData);

            xmlNavigator.SelectEnumerable(null);
        }