public void FindPackageCallsFindPackageFromActiveSource() { // Arrange var mockRepositoryFactory = new Mock <IPackageRepositoryFactory>(); var mockSourceProvider = new Mock <IVsPackageSourceProvider>(); var mockRepository = new Mock <IPackageRepository>(MockBehavior.Strict); var source = new PackageSource("bar", "foo"); mockRepository.As <IPackageLookup>() .Setup(p => p.FindPackage("A", new SemanticVersion("1.0"))) .Returns(PackageUtility.CreatePackage("A", "1.0")) .Verifiable(); mockSourceProvider.Setup(m => m.ActivePackageSource).Returns(source); mockRepositoryFactory.Setup(m => m.CreateRepository(source.Source)).Returns(mockRepository.Object); var repository = new VsPackageSourceRepository(mockRepositoryFactory.Object, mockSourceProvider.Object); // Act IPackage package = repository.FindPackage("A", new SemanticVersion("1.0")); // Assert mockRepository.VerifyAll(); Assert.Equal("A", package.Id); Assert.Equal(new SemanticVersion("1.0"), package.Version); }
public void NullActivePackageSourceDoesNotThrowForOtherMethods() { // Arrange var mockRepositoryFactory = new Mock<IPackageRepositoryFactory>(); var mockSourceProvider = new Mock<IVsPackageSourceProvider>(); mockSourceProvider.Setup(m => m.ActivePackageSource).Returns((PackageSource)null); mockRepositoryFactory.Setup(m => m.CreateRepository(It.IsAny<string>())).Returns(new MockPackageRepository()); var repository = new VsPackageSourceRepository(mockRepositoryFactory.Object, mockSourceProvider.Object); // Act & Assert Assert.NotNull(repository.Clone()); Assert.Empty(repository.GetPackages()); Assert.False(repository.SupportsPrereleasePackages); Assert.Empty(repository.FindPackagesById("A")); Assert.Null(repository.FindPackage("A", new SemanticVersion("1.0"))); Assert.Empty(repository.Search("web", new string[] { "net40" }, true)); }
public void NullActivePackageSourceDoesNotThrowForOtherMethods() { // Arrange var mockRepositoryFactory = new Mock <IPackageRepositoryFactory>(); var mockSourceProvider = new Mock <IVsPackageSourceProvider>(); mockSourceProvider.Setup(m => m.ActivePackageSource).Returns((PackageSource)null); mockRepositoryFactory.Setup(m => m.CreateRepository(It.IsAny <string>())).Returns(new MockPackageRepository()); var repository = new VsPackageSourceRepository(mockRepositoryFactory.Object, mockSourceProvider.Object); // Act & Assert Assert.NotNull(repository.Clone()); Assert.Empty(repository.GetPackages()); Assert.False(repository.SupportsPrereleasePackages); Assert.Empty(repository.FindPackagesById("A")); Assert.Null(repository.FindPackage("A", new SemanticVersion("1.0"))); Assert.Empty(repository.Search("web", new string[] { "net40" }, true)); }
public void FindPackageCallsFindPackageFromActiveSource() { // Arrange var mockRepositoryFactory = new Mock<IPackageRepositoryFactory>(); var mockSourceProvider = new Mock<IVsPackageSourceProvider>(); var mockRepository = new Mock<IPackageRepository>(MockBehavior.Strict); var source = new PackageSource("bar", "foo"); mockRepository.As<IPackageLookup>() .Setup(p => p.FindPackage("A", new SemanticVersion("1.0"))) .Returns(PackageUtility.CreatePackage("A", "1.0")) .Verifiable(); mockSourceProvider.Setup(m => m.ActivePackageSource).Returns(source); mockRepositoryFactory.Setup(m => m.CreateRepository(source.Source)).Returns(mockRepository.Object); var repository = new VsPackageSourceRepository(mockRepositoryFactory.Object, mockSourceProvider.Object); // Act IPackage package = repository.FindPackage("A", new SemanticVersion("1.0")); // Assert mockRepository.VerifyAll(); Assert.Equal("A", package.Id); Assert.Equal(new SemanticVersion("1.0"), package.Version); }