public async Task EnsuresNonEmptyArguments()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new CheckRunsClient(connection);

                var newCheckRun = new NewCheckRun("status", "123abc")
                {
                    Status = CheckStatus.Queued
                };

                await Assert.ThrowsAsync <ArgumentException>(() => client.Create("", "repo", newCheckRun));

                await Assert.ThrowsAsync <ArgumentException>(() => client.Create("fake", "", newCheckRun));
            }
            public async Task RequestsCorrectUrlWithRepositoryId()
            {
                var connection = Substitute.For <IApiConnection>();
                var client     = new CheckRunsClient(connection);

                var newCheckRun = new NewCheckRun("status", "123abc")
                {
                    Status = CheckStatus.Queued
                };

                await client.Create(1, newCheckRun);

                connection.Received().Post <CheckRun>(
                    Arg.Is <Uri>(u => u.ToString() == "repositories/1/check-runs"),
                    newCheckRun,
                    "application/vnd.github.antiope-preview+json");
            }