public void EnsurePackageDownloadsUsesMachineCacheIfAvailable() { // Arrange var hashBytes = new byte[] { 1, 2, 3, 4 }; var hash = Convert.ToBase64String(hashBytes); var zipPackage = PackageUtility.CreatePackage("A", "1.2"); var hashProvider = new Mock <IHashProvider>(MockBehavior.Strict); hashProvider.Setup(h => h.CalculateHash(It.IsAny <Stream>())).Returns(hashBytes); var mockRepository = new MockPackageCacheRepository(); mockRepository.Add(zipPackage); var servicePackage = new DataServicePackage { Id = "A", Version = "1.2", PackageHash = hash, HashProvider = hashProvider.Object, }; // Act servicePackage.EnsurePackage(mockRepository); // Assert Assert.Equal(zipPackage, servicePackage._package); }