public async Task EnsuresNonNullArguments()
            {
                var client = new ObservableOrganizationMembersClient(Substitute.For <IGitHubClient>());

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.CheckMemberPublic(null, "username").ToTask());

                await Assert.ThrowsAsync <ArgumentException>(() => client.CheckMemberPublic("", "username").ToTask());

                await Assert.ThrowsAsync <ArgumentNullException>(() => client.CheckMemberPublic("org", null).ToTask());

                await Assert.ThrowsAsync <ArgumentException>(() => client.CheckMemberPublic("org", "").ToTask());
            }
            public void ChecksMemberPublicFromClientOrganizationMember()
            {
                var gitHubClient = Substitute.For <IGitHubClient>();
                var client       = new ObservableOrganizationMembersClient(gitHubClient);

                client.CheckMemberPublic("org", "user");

                gitHubClient.Organization.Member.Received().CheckMemberPublic("org", "user");
            }