Example #1
0
        public void Matches_ReferenceAnalyzer_CallToExecuteOnce()
        {
            var child = new ResultSet();

            child.Load("a;b;1");
            var childMock = new Mock <IResultSetService>();

            childMock.Setup(s => s.Execute())
            .Returns(child);
            var childService = childMock.Object;

            var parent = new ResultSet();

            parent.Load("a;b");
            var parentMock = new Mock <IResultSetService>();

            parentMock.Setup(s => s.Execute())
            .Returns(parent);
            var parentService = parentMock.Object;

            var mappings = new ColumnMappingCollection()
            {
                new ColumnMapping("#0", "#0", ColumnType.Text),
                new ColumnMapping("#1", "#1", ColumnType.Text),
            };


            var referenceExists = new ReferenceExistsConstraint(parentService);
            var analyzer        = new Mock <ReferenceAnalyzer>(mappings);

            analyzer.Setup(x => x.Execute(It.IsAny <ResultSet>(), It.IsAny <ResultSet>())).Returns(new ReferenceViolations());
            referenceExists.Engine = analyzer.Object;

            //Method under test
            referenceExists.Matches(childService);

            //Test conclusion
            analyzer.Verify(x => x.Execute(child, parent), Times.Once());
        }
Example #2
0
        public void Matches_ResultSetService_CallToExecuteOnce()
        {
            var child = new ResultSet();

            child.Load("a;b;1");
            var childMock = new Mock <IResultSetService>();

            childMock.Setup(s => s.Execute())
            .Returns(child);
            var childService = childMock.Object;

            var parent = new ResultSet();

            parent.Load("a;b");
            var parentMock = new Mock <IResultSetService>();

            parentMock.Setup(s => s.Execute())
            .Returns(parent);
            var parentService = parentMock.Object;

            var mappings = new ColumnMappingCollection()
            {
                new ColumnMapping("#0", "#0", ColumnType.Text),
                new ColumnMapping("#1", "#1", ColumnType.Text),
            };


            var referenceExists = new ReferenceExistsConstraint(parentService);

            referenceExists = referenceExists.Using(mappings);

            //Method under test
            referenceExists.Matches(childService);

            //Test conclusion
            childMock.Verify(s => s.Execute(), Times.Once());
            parentMock.Verify(s => s.Execute(), Times.Once());
        }
Example #3
0
        protected override void SpecificBuild()
        {
            var ctrXml = ConstraintXml as ReferenceExistsXml;

            ctrXml.ResultSet.Settings = ctrXml.Settings;

            var mappings = new ColumnMappingCollection();

            foreach (var mapping in ctrXml.Mappings)
            {
                mappings.Add(new ColumnMapping(mapping.Child, mapping.Parent, mapping.Type));
            }

            var builder = new ResultSetServiceBuilder();

            builder.Setup(Helper.InstantiateResolver(ctrXml.ResultSet));
            builder.Setup(Helper.InstantiateAlterations(ctrXml.ResultSet));
            var service = builder.GetService();

            var ctr = new ReferenceExistsConstraint(service);

            Constraint = ctr.Using(mappings);
        }