Пример #1
0
        [InlineData("{ version: \"3.0.0.0\" } ")] // not strict semver
        public async Task TryCreate_ReturnsFalse_IfSourceLocationDoesNotReturnValidJson(string content)
        {
            // Arrange
            var source          = "https://fake.server/users.json";
            var handlerProvider = StaticHttpHandler.CreateHttpHandler(new Dictionary <string, string> {
                { source, content }
            });
            var provider         = new ServiceIndexResourceV3Provider();
            var sourceRepository = new SourceRepository(new PackageSource(source),
                                                        new INuGetResourceProvider[] { handlerProvider, provider });

            // Act
            var result = await provider.TryCreate(sourceRepository, default(CancellationToken));

            // Assert
            Assert.False(result.Item1);
            Assert.Null(result.Item2);
        }
Пример #2
0
        public async Task TryCreate_ReturnsFalse_IfSourceLocationReturnsFailureCode()
        {
            // Arrange
            var source = "https://does-not-exist.server/does-not-exist.json";
            // This will return a 404 - NotFound.
            var handlerProvider = StaticHttpHandler.CreateHttpHandler(new Dictionary <string, string> {
                { source, string.Empty }
            });
            var provider         = new ServiceIndexResourceV3Provider();
            var sourceRepository = new SourceRepository(new PackageSource(source),
                                                        new INuGetResourceProvider[] { handlerProvider, provider });

            // Act
            var result = await provider.TryCreate(sourceRepository, default(CancellationToken));

            // Assert
            Assert.False(result.Item1);
            Assert.Null(result.Item2);
        }
Пример #3
0
        public async Task TryCreate_ReturnsTrue_IfSourceLocationReturnsValidJson()
        {
            // Arrange
            var source          = "https://some-site.org/test.json";
            var content         = @"{ version: '3.1.0-beta' }";
            var handlerProvider = StaticHttpHandler.CreateHttpHandler(new Dictionary <string, string> {
                { source, content }
            });
            var provider         = new ServiceIndexResourceV3Provider();
            var sourceRepository = new SourceRepository(new PackageSource(source),
                                                        new INuGetResourceProvider[] { handlerProvider, provider });

            // Act
            var result = await provider.TryCreate(sourceRepository, default(CancellationToken));

            // Assert
            Assert.True(result.Item1);
            var resource = Assert.IsType <ServiceIndexResourceV3>(result.Item2);

            Assert.NotNull(resource.Index);
        }