コード例 #1
0
        public void ShouldGetAndCacheAllBiesFromBieLibrary()
        {
            // Setup
            var bieMock        = new Mock <IAbie>();
            var bieLibraryMock = new Mock <IBieLibrary>();

            IAbie[] expectedBdts = new[] { bieMock.Object, bieMock.Object, bieMock.Object };
            bieLibraryMock.SetupGet(l => l.Name).Returns("bielib1");
            bieLibraryMock.SetupGet(l => l.Abies).Returns(expectedBdts);

            var cctsRepositoryMock = new Mock <ICctsRepository>();

            cctsRepositoryMock.Setup(r => r.GetAllLibraries()).Returns(new[] { bieLibraryMock.Object });

            // Events
            CcCache      ccCache = CcCache.GetInstance(cctsRepositoryMock.Object);
            List <IAbie> bies    = ccCache.GetBiesFromBieLibrary("bielib1");

            ccCache.GetBiesFromBieLibrary("bielib1");

            // Assertion and Verification
            Assert.That(bies, Is.EquivalentTo(expectedBdts));
            bieLibraryMock.VerifyGet(l => l.Abies, Times.Exactly(1));
        }