コード例 #1
0
 public void AddMappingProvderAndVisitorTypeToMappingModelBuilder()
 {
     MappingModelBuilderTestBase.Context = this.TestContext;
     var modelBuilder = new MappingModelBuilder();
     modelBuilder.Add(typeof(MappingProvider1));
     modelBuilder.Add(typeof(MappingProvider2));
     modelBuilder.Add(typeof(MappingVisitor1));
     modelBuilder.Add(typeof(MappingVisitor2));
     this.TestContext.GetData<int>("Times").ShouldEqual(4);
 }
コード例 #2
0
        public void RunBuild()
        {
            var mockProvider1 = new Mock<IMappingProvider>();
            var mockProvider2 = new Mock<IMappingProvider>();
            var mockVisitor1 = new Mock<IMappingVisitor>();
            var mockVisitor2 = new Mock<IMappingVisitor>();
            var modelBuilder = new MappingModelBuilder();

            mockProvider1.Setup(p => p.GetMappings()).Returns(() =>
                new MappingBase[] { new Mock<MappingBase>(null, null).Object, new Mock<MappingBase>(null, null).Object });
            mockProvider2.Setup(p => p.GetMappings()).Returns(() =>
                new MappingBase[] { new Mock<MappingBase>(null, null).Object, new Mock<MappingBase>(null, null).Object });

            modelBuilder.Add(mockProvider1.Object);
            modelBuilder.Add(mockProvider2.Object);
            modelBuilder.Add(mockVisitor1.Object);
            modelBuilder.Add(mockVisitor2.Object);
            modelBuilder.BuildMappings();

            mockProvider1.Verify(p => p.GetMappings(), Times.Exactly(2));
            mockProvider2.Verify(p => p.GetMappings(), Times.Exactly(2));
            mockVisitor1.Verify(v => v.Init(), Times.Exactly(2));
            mockVisitor1.Verify(v => v.Visit(It.IsAny<MappingBase>()), Times.Exactly(4));
            mockVisitor1.Verify(v => v.Over(), Times.Exactly(2));
        }