コード例 #1
0
        public void BringUpToDate_RunFullUpdate_ValuesAreReplaced()
        {
            var databaseVersionSetup = GetVersionSetup();
            var mockIDatabase = new Mock<IConnection>(MockBehavior.Strict);
            var mockITransaction = new Mock<ITransaction>(MockBehavior.Strict);
            mockIDatabase.Setup(mc => mc.GetTransaction()).Returns(mockITransaction.Object);
            mockIDatabase.Setup(mc => mc.SwitchToDatabase("Intercontinental4", mockITransaction.Object));
            _mockITracker.Setup(mc => mc.GetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), mockITransaction.Object)).Returns(0);
            mockIDatabase.Setup(mc => mc.ExecuteSql("Create2 test0 test1Prof|withvar|Intercontinental4| test2|over ${test3}", mockITransaction.Object)).Returns(1);
            mockIDatabase.Setup(mc => mc.ExecuteSql("Create3 test0 test1Prof|withvar|Intercontinental4| test2|over ${test3}", mockITransaction.Object)).Returns(1);
            mockIDatabase.Setup(mc => mc.ExecuteSql("Create4 test0 test1Prof|withvar|Intercontinental4| test2|over ${test3}", mockITransaction.Object)).Returns(1);
            _mockITracker.Setup(mc => mc.SetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), 2, mockITransaction.Object));
            _mockITracker.Setup(mc => mc.SetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), 3, mockITransaction.Object));
            _mockITracker.Setup(mc => mc.SetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), 4, mockITransaction.Object));
            mockITransaction.Setup(mc => mc.Commit());
            mockITransaction.Setup(mc => mc.Dispose());
            mockSqlServerDatabaseProfile.Setup(mc => mc.GetDatabase()).Returns(mockIDatabase.Object);

            //act
            _dvcController = new DvcController(databaseVersionSetup, DefaultProfile, false);
            _dvcController.OnUpdateExecute += ((o, a) => Console.WriteLine(a.UpdatesMetadata.Description));
            _dvcController.BringUpToDate();
            mockSqlServerDatabaseProfile.VerifyAll();
            mockIDatabase.VerifyAll();
            mockITransaction.VerifyAll();
            _mockITracker.VerifyAll();
        }
コード例 #2
0
        public void BringUpToDate_RunFullUpdate_UntilLastCall()
        {
            var databaseVersionSetup = GetVersionSetup();
            var mockIDatabase = new Mock<IConnection>(MockBehavior.Strict);
            var mockITransaction = new Mock<ITransaction>(MockBehavior.Strict);
            mockIDatabase.Setup(mc => mc.GetTransaction()).Returns(mockITransaction.Object);
            mockIDatabase.Setup(mc => mc.SwitchToDatabase("Intercontinental4", mockITransaction.Object));
            _mockITracker.Setup(mc => mc.GetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), mockITransaction.Object)).Returns(0);
            //mockIDatabase.Setup(mc => mc.ExecuteSql("valie ${test0} ${test1} ${test2} ${test3} ${test4} $test ", mockITransaction.Object)).Returns(1);
            mockIDatabase.Setup(mc => mc.ExecuteSql(It.IsAny<string>(), mockITransaction.Object)).Returns(1);
            _mockITracker.Setup(mc => mc.SetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), 2, mockITransaction.Object));
            _mockITracker.Setup(mc => mc.SetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), 3, mockITransaction.Object));
            _mockITracker.Setup(mc => mc.SetVersion(It.IsAny<DatabaseVersionSetup.Profile>(), 4, mockITransaction.Object));
            mockITransaction.Setup(mc => mc.Commit());
            mockITransaction.Setup(mc => mc.Dispose());
            mockSqlServerDatabaseProfile.Setup(mc => mc.GetDatabase()).Returns(mockIDatabase.Object);

            //act
            _dvcController = new DvcController(databaseVersionSetup, DefaultProfile, true);
            _dvcController.BringUpToDate();
            mockSqlServerDatabaseProfile.VerifyAll();
            mockIDatabase.VerifyAll();
            mockITransaction.VerifyAll();
            _mockITracker.VerifyAll();
        }