コード例 #1
0
        public void Should_deploy_deltas_newer_than_the_latest_delta_already_in_the_database()
        {
            var delta1 = new Delta(1L, "C:\\Deltas\\1.xqy", "test delta 1");
            var delta2 = new Delta(2L, "C:\\Deltas\\2.xqy", "test delta 2");
            var delta3 = new Delta(3L, "C:\\Deltas\\3.xqy", "test delta 3");

            _deltaRepository.Stub(dr => dr.GetAllDeltas()).Return(new List <Delta>
            {
                delta1,
                delta2,
                delta3
            });
            _deployRepository.Stub(dr => dr.GetLatestDeltaInDatabase()).Return(delta1);



            new Deployer(_deployRepository, _deltaRepository).Deploy();


            _deployRepository.AssertWasNotCalled(dr => dr.ApplyDelta(delta1));
            _deployRepository.AssertWasNotCalled(dr => dr.UpdateLatestDeltaAs(delta1));

            _deployRepository.AssertWasCalled(dr => dr.ApplyDelta(delta2));
            _deployRepository.AssertWasCalled(dr => dr.UpdateLatestDeltaAs(delta2));
            _deployRepository.AssertWasCalled(dr => dr.ApplyDelta(delta3));
            _deployRepository.AssertWasCalled(dr => dr.UpdateLatestDeltaAs(delta3));
        }