public void Test003()
        {
            var controls = ToSourceCollection(@"<p diff:match=""p""></p>", ComparisonSourceType.Control);
            var tests    = ToSourceCollection("<p></p><p></p>", ComparisonSourceType.Test);
            var context  = new DiffContext(controls[0].Node.GetRoot() as IElement, tests[0].Node.GetRoot() as IElement);

            Should.Throw <DiffMatchSelectorReturnedTooManyResultsException>(() => CssSelectorElementMatcher.Match(context, controls, tests).ToList());
        }
        public void Test001(string html)
        {
            var controls = ToSourceCollection(html, ComparisonSourceType.Control);
            var tests    = ToSourceCollection(html, ComparisonSourceType.Test);

            var actual = CssSelectorElementMatcher.Match(DummyContext, controls, tests).ToList();

            actual.ShouldBeEmpty();
        }
        public void Test004()
        {
            var controls = ToSourceCollection(@"<p diff:match=""div""></p>", ComparisonSourceType.Control);
            var tests    = ToSourceCollection("<p></p>", ComparisonSourceType.Test);
            var context  = new DiffContext(controls[0].Node.GetRoot() as IElement, tests[0].Node.GetRoot() as IElement);

            var actual = CssSelectorElementMatcher.Match(context, controls, tests).ToList();

            actual.ShouldBeEmpty();
        }
        public void Test002()
        {
            var controls = ToSourceCollection(@"<p diff:match=""main > p:first-child""></p>", ComparisonSourceType.Control);
            var tests    = ToSourceCollection("<p></p><main><p></p></main>", ComparisonSourceType.Test);
            var context  = new DiffContext(controls[0].Node.GetRoot() as IElement, tests[0].Node.GetRoot() as IElement);

            var actual = CssSelectorElementMatcher.Match(context, controls, tests).ToList();

            actual.Count.ShouldBe(1);
            actual[0].ShouldSatisfyAllConditions(
                c => c.Control.Node.ShouldBe(controls[0].Node),
                c => c.Test.Node.ShouldBe(tests[1].Node.FirstChild)
                );
        }