Exemplo n.º 1
0
        public async Task ReturnsTrueWhenEnterpriseProbeReturnsOk(EnterpriseProbeResult probeResult, bool expected)
        {
            var gitHubHost   = HostAddress.GitHubDotComHostAddress;
            var gitHubClient = Substitute.For <IGitHubClient>();
            var repository   = CreateRepository(42, true);

            gitHubClient.Repository.Get("github", "visualstudio").Returns(Task.FromResult(repository));
            var enterpriseProbe = Substitute.For <IEnterpriseProbeTask>();

            enterpriseProbe.ProbeAsync(Args.Uri)
            .Returns(_ => Task.FromResult(probeResult), _ => { throw new Exception("Only call it once"); });
            var wikiProbe = Substitute.For <IWikiProbe>();
            var client    = new SimpleApiClient(
                gitHubHost,
                "https://github.com/github/visualstudio",
                gitHubClient,
                new Lazy <IEnterpriseProbeTask>(() => enterpriseProbe),
                new Lazy <IWikiProbe>(() => wikiProbe));
            await client.GetRepository();

            var result = client.IsEnterprise();

            Assert.Equal(expected, result);
            Assert.Equal(expected, client.IsEnterprise());
        }
Exemplo n.º 2
0
        public void ReturnsFalseWhenWeHaveNotRequestedRepository()
        {
            var gitHubHost      = HostAddress.GitHubDotComHostAddress;
            var gitHubClient    = Substitute.For <IGitHubClient>();
            var enterpriseProbe = Substitute.For <IEnterpriseProbe>();
            var wikiProbe       = Substitute.For <IWikiProbe>();
            var client          = new SimpleApiClient(
                "https://github.com/github/visualstudio",
                gitHubClient,
                new Lazy <IEnterpriseProbe>(() => enterpriseProbe),
                new Lazy <IWikiProbe>(() => wikiProbe));

            var result = client.IsEnterprise().Result;

            Assert.False(result);
        }