Esempio n. 1
0
        public void PackageLookupOperationsAreDeferredToUnderlyingLocalPackageRepository()
        {
            // Arrange
            var fileSystem = new MockFileSystem();
            var package    = GetPackage();

            fileSystem.AddFile("MyPackage.1.0.0-beta2.nupkg", package.GetStream);
            var repository = new LazyLocalPackageRepository(fileSystem);

            // Act
            var getPackagesResult      = repository.GetPackages();
            var findPackagesByIdResult = repository.FindPackagesById("MyPackage");
            var findPackageResult      = repository.FindPackage("MyPackage", new SemanticVersion("1.0.0-beta2"));

            // Assert
            var actual = Assert.Single(getPackagesResult);

            Assert.Equal(package.Id, actual.Id);
            Assert.Equal(package.Version, actual.Version);

            actual = Assert.Single(findPackagesByIdResult);
            Assert.Equal(package.Id, actual.Id);
            Assert.Equal(package.Version, actual.Version);

            Assert.Equal(package.Id, findPackageResult.Id);
            Assert.Equal(package.Version, findPackageResult.Version);
        }
Esempio n. 2
0
        public void PackageAddAndRemovalOperationsAreDeferredToUnderlyingExpandedPackageRepository()
        {
            // Arrange
            var fileSystem = new MockFileSystem();

            fileSystem.AddFile(Path.Combine("Foo", "1.0.0", "Foo.1.0.0.nupkg"));
            fileSystem.AddFile(Path.Combine("Foo", "1.0.0", "Foo.nuspec"));

            var package    = GetPackage();
            var repository = new LazyLocalPackageRepository(fileSystem);

            // Act - 1
            repository.AddPackage(package);

            // Assert - 1
            var reader = Manifest.ReadFrom(fileSystem.OpenFile(@"MyPackage\1.0.0-beta2\MyPackage.nuspec"), validateSchema: true);

            Assert.Equal("MyPackage", reader.Metadata.Id);
            Assert.Equal("1.0.0-beta2", reader.Metadata.Version);
            Assert.True(package.GetStream().ContentEquals(
                            fileSystem.OpenFile(Path.Combine("MyPackage", "1.0.0-beta2", "MyPackage.1.0.0-beta2.nupkg"))));

            // Act - 2
            repository.RemovePackage(package);

            // Assert - 2
            var deleted = Assert.Single(fileSystem.Deleted);

            Assert.Equal(Path.Combine("MyPackage", "1.0.0-beta2"), deleted);
        }
Esempio n. 3
0
        public void PackageLookupOperationsAreDeferredToUnderlyingExpandedPackageRepository()
        {
            // Arrange
            var fileSystem = new MockFileSystem();

            fileSystem.AddFile(Path.Combine("MyPackage", "1.0.0-beta2", "MyPackage.1.0.0-beta2.nupkg"));
            fileSystem.AddFile(Path.Combine("MyPackage", "1.0.0-beta2", "MyPackage.1.0.0-beta2.nupkg.sha512"));
            fileSystem.AddFile(Path.Combine("MyPackage", "1.0.0-beta2", "MyPackage.nuspec"),
                               @"<?xml version=""1.0""?><package><metadata><id>MyPackage</id><version>1.0.0-beta2</version><authors>None</authors><description>None</description></metadata></package>");
            var repository = new LazyLocalPackageRepository(fileSystem);

            // Act
            var getPackagesResult      = repository.GetPackages();
            var findPackagesByIdResult = repository.FindPackagesById("MyPackage");
            var findPackageResult      = repository.FindPackage("MyPackage", new SemanticVersion("1.0.0-beta2"));

            // Assert
            var actual = Assert.Single(getPackagesResult);

            Assert.Equal("MyPackage", actual.Id);
            Assert.Equal(new SemanticVersion("1.0.0-beta2"), actual.Version);

            actual = Assert.Single(findPackagesByIdResult);
            Assert.Equal("MyPackage", actual.Id);
            Assert.Equal(new SemanticVersion("1.0.0-beta2"), actual.Version);

            Assert.Equal("MyPackage", findPackageResult.Id);
            Assert.Equal(new SemanticVersion("1.0.0-beta2"), findPackageResult.Version);
        }
Esempio n. 4
0
        public void CreateRepository_ReturnsExpandedPackageRepository_IfThereArNoNupkgInTheTopLevelDirectoryOrOneLevelDeep()
        {
            // Arrange
            var fileSystem = new MockFileSystem();

            fileSystem.AddFile(Path.Combine("Foo", "1.0.0", "Foo.1.0.0.nupkg"));
            fileSystem.AddFile(Path.Combine("Foo", "1.0.0", "Foo.nuspec"));

            var repository = new LazyLocalPackageRepository(fileSystem);

            // Act
            var localPackageRepo = repository.Repository;

            // Assert
            Assert.IsType <ExpandedPackageRepository>(localPackageRepo);
        }
Esempio n. 5
0
        public void CreateRepository_ReturnsLocalPackageRepository_IfThereAreNupkgsInRootOfTheFileSystem()
        {
            // Arrange
            var fileSystem = new MockFileSystem();

            fileSystem.AddFile(@"Foo.1.0.nupkg");
            fileSystem.AddFile(Path.Combine("Foo", "1.0", "Foo.1.0.nupkg"));
            fileSystem.AddFile(Path.Combine("Foo", "1.0", "Foo.1.0.nuspec"));
            var repository = new LazyLocalPackageRepository(fileSystem);

            // Act
            var localPackageRepo = repository.Repository;

            // Assert
            Assert.IsType <LocalPackageRepository>(localPackageRepo);
        }
Esempio n. 6
0
        public void PackageAddAndRemovalOperationsAreDeferredToUnderlyingLocalPackageRepository()
        {
            // Arrange
            var fileSystem          = new MockFileSystem();
            var package             = GetPackage();
            var repository          = new LazyLocalPackageRepository(fileSystem);
            var expectedPackagePath = Path.Combine("MyPackage.1.0.0-beta2", "MyPackage.1.0.0-beta2.nupkg");

            // Act - 1
            repository.AddPackage(package);

            // Assert - 1
            Assert.True(package.GetStream().ContentEquals(fileSystem.OpenFile(expectedPackagePath)));

            // Act - 2
            repository.RemovePackage(package);

            // Assert - 2
            Assert.Contains(expectedPackagePath, fileSystem.Deleted);
            Assert.Contains("MyPackage.1.0.0-beta2", fileSystem.Deleted);
        }