Exemple #1
0
        public void FetchReadme_ResponseIsNotSuccessful()
        {
            // Arrange
            string errorMessage = "Invalid test request";

            MockRestClient(null, HttpStatusCode.BadRequest, errorMessage);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Func <Task> act = () => DataSourceAdaptee.FetchReadme("https://google.nl/test");

            // Assert
            act.Should().ThrowExactly <ExternalException>().WithMessage(errorMessage);
        }
Exemple #2
0
        public void FetchContributorsFromRepository_ResponseIsNotSuccessful()
        {
            // Arrange
            string errorMessage = "Invalid test request";

            MockRestClient(null, HttpStatusCode.BadRequest, errorMessage);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Func <Task> act = () => DataSourceAdaptee.FetchContributorsFromRepository(It.IsAny <int>());

            // Assert
            act.Should().ThrowExactly <ExternalException>().WithMessage(errorMessage);
        }
Exemple #3
0
        public async Task FetchReadme_ContentNotFound()
        {
            // Arrange
            MockRestClient(null, HttpStatusCode.NotFound);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Action act = () => DataSourceAdaptee.FetchReadme("https://google.nl/test");
            string retrievedReadmeContent = await DataSourceAdaptee.FetchReadme("https://google.nl/test");

            // Assert
            act.Should().NotThrow();
            retrievedReadmeContent.Should().BeNullOrEmpty();
        }
Exemple #4
0
        public async Task FetchContributorsFromRepository_GoodFlow(
            [GitLabDataSourceContributorResourceResultDataSource(30)] List <GitLabDataSourceContributorResourceResult> resourceResults)
        {
            MockRestClient(resourceResults, HttpStatusCode.OK);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Action act = () => DataSourceAdaptee.FetchContributorsFromRepository(It.IsAny <int>());
            List <GitLabDataSourceContributorResourceResult> retrievedOauthTokens = await DataSourceAdaptee.FetchContributorsFromRepository(It.IsAny <int>());

            // Assert
            act.Should().NotThrow();
            retrievedOauthTokens.Should().BeEquivalentTo(resourceResults);
            retrievedOauthTokens.Should().NotBeNull();
        }
Exemple #5
0
        public async Task FetchReadme_GoodFlow()
        {
            // Arrange
            string readmeContent = new string("This is the content from a test readme file");

            MockRestClient(readmeContent, HttpStatusCode.OK);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Action act             = () => DataSourceAdaptee.FetchReadme("https://google.nl/test");
            string retrievedReadme = await DataSourceAdaptee.FetchReadme("https://google.nl/test");

            // Assert
            act.Should().NotThrow();
            retrievedReadme.Substring(1, retrievedReadme.Length - 2).Should().Be(readmeContent);
        }
Exemple #6
0
        public async Task FetchOauthTokens_GoodFlow()
        {
            OauthTokens oauthTokens = new OauthTokens {
                AccessToken = "token"
            };

            MockRestClient(oauthTokens, HttpStatusCode.OK);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Action      act = () => DataSourceAdaptee.FetchOauthTokens(It.IsAny <string>());
            OauthTokens retrievedOauthTokens = await DataSourceAdaptee.FetchOauthTokens(It.IsAny <string>());

            // Assert
            act.Should().NotThrow();
            retrievedOauthTokens.Should().BeEquivalentTo(oauthTokens);
            retrievedOauthTokens.Should().NotBeNull();
        }
Exemple #7
0
        public async Task FetchAllPublicGitlabRepositories_GoodFlow(
            [GitlabDataSourceResourceResultDataSource(50)]
            IEnumerable <GitlabDataSourceResourceResult> resourceResults)
        {
            // Arrange
            MockRestClient(resourceResults, HttpStatusCode.OK);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Action act = () => DataSourceAdaptee.FetchAllPublicGitlabRepositories(It.IsAny <string>());
            IEnumerable <GitlabDataSourceResourceResult> retrievedResourceResults =
                await DataSourceAdaptee.FetchAllPublicGitlabRepositories(It.IsAny <string>());

            // Assert
            act.Should()
            .NotThrow();
            retrievedResourceResults.Should()
            .BeEquivalentTo(resourceResults);
        }
Exemple #8
0
        public async Task FetchUserFromAccessToken_GoodFlow(
            [GitlabDataSourceUserResourceResultDataSource]
            GitlabDataSourceUserResourceResult userResourceResult)
        {
            // Arrange
            MockRestClient(userResourceResult, HttpStatusCode.OK);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Action act = () => DataSourceAdaptee.FetchUserFromAccessToken(It.IsAny <string>());
            GitlabDataSourceUserResourceResult retrievedUsers =
                await DataSourceAdaptee.FetchUserFromAccessToken(It.IsAny <string>());

            // Assert
            act.Should()
            .NotThrow();
            retrievedUsers.Should()
            .BeEquivalentTo(userResourceResult);
        }
Exemple #9
0
        public async Task FetchGitlabRepositoryById_GoodFlow(
            [GitlabDataSourceResourceResultDataSource]
            GitlabDataSourceResourceResult resourceResult)
        {
            // Arrange
            MockRestClient(resourceResult, HttpStatusCode.OK);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Action act = () => DataSourceAdaptee.FetchGitlabRepositoryById(It.IsAny <string>(), It.IsAny <string>());
            GitlabDataSourceResourceResult retrievedResourceResult =
                await DataSourceAdaptee.FetchGitlabRepositoryById(It.IsAny <string>(), It.IsAny <string>());

            // Assert
            act.Should()
            .NotThrow();
            retrievedResourceResult.Should()
            .BeEquivalentTo(resourceResult);
        }
Exemple #10
0
        public async Task FetchPublicRepository_GoodFlow(
            [GitlabDataSourceResourceResultDataSource]
            GitlabDataSourceResourceResult resourceResult)
        {
            // Arrange
            MockRestClient(resourceResult, HttpStatusCode.OK);
            DataSourceAdaptee = new GitlabDataSourceAdaptee(ConfigurationMock, ClientFactoryMock.Object, Mapper);

            // Act
            Uri    testUri = new Uri("https://google.nl/test");
            Action act     = () => DataSourceAdaptee.FetchPublicRepository(testUri);
            GitlabDataSourceResourceResult retrievedResourceResult =
                await DataSourceAdaptee.FetchPublicRepository(testUri);

            // Assert
            act.Should()
            .NotThrow();
            retrievedResourceResult.Should()
            .BeEquivalentTo(resourceResult);
        }