Esempio n. 1
0
            public void EnsuresNonNullArguments()
            {
                var gitHubClient = Substitute.For <IGitHubClient>();
                var client       = new ObservableRepositoryContentsClient(gitHubClient);

                Assert.Throws <ArgumentNullException>(() => client.GetReadmeHtml(null, "name"));
                Assert.Throws <ArgumentNullException>(() => client.GetReadmeHtml("owner", null));

                Assert.Throws <ArgumentException>(() => client.GetReadmeHtml("", "name"));
                Assert.Throws <ArgumentException>(() => client.GetReadmeHtml("owner", ""));
            }
Esempio n. 2
0
            public async Task ReturnsReadmeHtmlWithRepositoryId()
            {
                var connection     = Substitute.For <IConnection>();
                var gitHubClient   = new GitHubClient(connection);
                var contentsClient = new ObservableRepositoryContentsClient(gitHubClient);
                IApiResponse <string> apiResponse = new ApiResponse <string>(new Response(), "<html>README</html>");

                connection.GetHtml(Args.Uri, null).Returns(Task.FromResult(apiResponse));

                var readme = await contentsClient.GetReadmeHtml(1);

                connection.Received().GetHtml(Arg.Is <Uri>(u => u.ToString() == "repositories/1/readme"), null);
                Assert.Equal("<html>README</html>", readme);
            }