Skip to content

Commit e4c8b28

Browse files
committed
share api cleanup
1 parent b50a4d6 commit e4c8b28

File tree

3 files changed

+31
-54
lines changed

3 files changed

+31
-54
lines changed

lib/travis/api/v3/services/v2_subscription/delete_share.rb

Lines changed: 0 additions & 10 deletions
This file was deleted.

spec/v3/services/v2_subscription/delete_share_spec.rb

Lines changed: 0 additions & 42 deletions
This file was deleted.

spec/v3/services/v2_subscription/share_spec.rb

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,20 @@
1010
end
1111

1212
context 'unauthenticated' do
13-
it 'responds 403' do
13+
it 'responds 403 for post' do
1414
post('/v3/v2_subscription/123/share', {})
1515

1616
expect(last_response.status).to eq(403)
1717
end
18+
19+
it 'responds 403 for delete' do
20+
delete('/v3/v2_subscription/123/share', {})
21+
22+
expect(last_response.status).to eq(403)
23+
end
1824
end
1925

20-
context 'authenticated' do
26+
context 'authenticated create share' do
2127
let(:user) { FactoryBot.create(:user) }
2228
let(:token) { Travis::Api::App::AccessToken.create(user: user, app_id: 1) }
2329
let(:headers) {{ 'HTTP_AUTHORIZATION' => "token #{token}",
@@ -41,4 +47,27 @@
4147
expect(stubbed_request).to have_been_made.once
4248
end
4349
end
50+
51+
context 'authenticated delete share' do
52+
let(:user) { FactoryBot.create(:user) }
53+
let(:token) { Travis::Api::App::AccessToken.create(user: user, app_id: 1) }
54+
let(:headers) {{ 'HTTP_AUTHORIZATION' => "token #{token}",
55+
'CONTENT_TYPE' => 'application/json' }}
56+
let(:subscription_id) { rand(999) }
57+
58+
let!(:stubbed_request) do
59+
stub_request(:delete, "#{billing_url}/v2/subscriptions/#{subscription_id}/share?plan=#{subscription_id}&receiver=#{receiver.id}&requested_by=#{user.id}").with(
60+
headers: {
61+
'X-Travis-User-Id' => user.id
62+
}
63+
)
64+
.to_return(status: 204)
65+
end
66+
67+
it 'deletes subscription share' do
68+
delete("/v3/v2_subscription/#{subscription_id}/share", JSON.generate(data), headers)
69+
expect(last_response.status).to eq(204)
70+
expect(stubbed_request).to have_been_made.once
71+
end
72+
end
4473
end

0 commit comments

Comments
 (0)