public async Task EnsuresArgumentsNotNull()
            {
                var gitHubClient = Substitute.For<IGitHubClient>();
                var client = new ObservableMilestonesClient(gitHubClient);

                AssertEx.Throws<ArgumentNullException>(async () => await
                    client.Delete(null, "name", 42));
                AssertEx.Throws<ArgumentException>(async () => await
                    client.Delete("", "name", 42));
                AssertEx.Throws<ArgumentNullException>(async () => await
                    client.Delete("owner", null, 42));
                AssertEx.Throws<ArgumentException>(async () => await
                    client.Delete("owner", "", 42));
            }
            public void DeletesFromClientIssueMilestone()
            {
                var gitHubClient = Substitute.For<IGitHubClient>();
                var client = new ObservableMilestonesClient(gitHubClient);

                client.Delete("fake", "repo", 42);

                gitHubClient.Issue.Milestone.Received().Delete("fake", "repo", 42);
            }