From 33f8027313309c4a5bf80d332350825a272f5f26 Mon Sep 17 00:00:00 2001 From: Gosuke Miyashita Date: Wed, 16 May 2012 12:58:57 +0900 Subject: [PATCH] Add method to publicize/unpublicize a users's membership --- lib/octokit/client/organizations.rb | 9 +++++++++ spec/octokit/client/organizations_spec.rb | 24 +++++++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/lib/octokit/client/organizations.rb b/lib/octokit/client/organizations.rb index 1bd1b710a..2cb450c60 100644 --- a/lib/octokit/client/organizations.rb +++ b/lib/octokit/client/organizations.rb @@ -88,6 +88,15 @@ def remove_team_repository(team_id, repo, options={}) delete("teams/#{team_id}/repos/#{Repository.new(repo)}", options, 3, true, raw=true).status == 204 end alias :remove_team_repo :remove_team_repository + + def publicize_membership(org, user, options={}) + put("orgs/#{org}/public_members/#{user}", options, 3, true, raw=true).status == 204 + end + + def unpublicize_membership(org, user, options={}) + delete("orgs/#{org}/public_members/#{user}", options, 3, true, raw=true).status == 204 + end + end end end diff --git a/spec/octokit/client/organizations_spec.rb b/spec/octokit/client/organizations_spec.rb index 030ec643a..70b29eb39 100644 --- a/spec/octokit/client/organizations_spec.rb +++ b/spec/octokit/client/organizations_spec.rb @@ -220,4 +220,28 @@ end + describe ".publicize_membership" do + + it "should pulicize membership" do + stub_put("https://api.github.com/orgs/codeforamerica/public_members/sferik"). + with(:name => "sferik"). + to_return(:status => 204) + result = @client.publicize_membership("codeforamerica", "sferik") + result.should be_true + end + + end + + describe ".unpublicize_membership" do + + it "should unpulicize membership" do + stub_delete("https://api.github.com/orgs/codeforamerica/public_members/sferik"). + with(:name => "sferik"). + to_return(:status => 204) + result = @client.unpublicize_membership("codeforamerica", "sferik") + result.should be_true + end + + end + end