bcx 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/.rspec +1 -0
- data/Gemfile +1 -1
- data/README.md +64 -15
- data/Rakefile +5 -1
- data/bcx.gemspec +5 -0
- data/lib/bcx.rb +7 -2
- data/lib/bcx/client.rb +11 -4
- data/lib/bcx/configuration.rb +9 -0
- data/lib/bcx/resources/person.rb +13 -0
- data/lib/bcx/resources/project.rb +40 -2
- data/lib/bcx/resources/todo.rb +37 -0
- data/lib/bcx/resources/todolist.rb +40 -1
- data/lib/bcx/response_error.rb +17 -0
- data/lib/bcx/version.rb +1 -1
- data/spec/bcx/client_spec.rb +40 -0
- data/spec/bcx/project_spec.rb +65 -0
- data/spec/bcx/todolist_spec.rb +75 -0
- data/spec/cassettes/Bcx_Resources_Project/DELETE_/projects/2937644/should_delete_a_project.yml +105 -0
- data/spec/cassettes/Bcx_Resources_Project/GET_/projects/2937644/should_have_the_correct_id.yml +60 -0
- data/spec/cassettes/Bcx_Resources_Project/GET_/projects/2937644/should_return_a_hash.yml +60 -0
- data/spec/cassettes/Bcx_Resources_Project/GET_/projects/archived/should_be_an_array.yml +58 -0
- data/spec/cassettes/Bcx_Resources_Project/GET_/projects/archived/should_be_empty.yml +58 -0
- data/spec/cassettes/Bcx_Resources_Project/GET_/projects/first_project_should_have_the_correct_id.yml +59 -0
- data/spec/cassettes/Bcx_Resources_Project/GET_/projects/should_be_an_array.yml +59 -0
- data/spec/cassettes/Bcx_Resources_Project/POST_/projects/should_create_a_new_project.yml +63 -0
- data/spec/cassettes/Bcx_Resources_Project/PUT_/projects/2937644/should_update_an_existing_project.yml +58 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/1/todolists/completed_json/first_todolist_should_have_the_correct_id.yml +59 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/1/todolists/completed_json/should_be_an_array.yml +59 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/123/todolists/456_json/should_have_the_correct_id.yml +67 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/123/todolists/456_json/should_return_a_hash.yml +67 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2937644/todolists_json/first_todolist_should_have_the_correct_id.yml +114 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2937644/todolists_json/should_be_an_array.yml +114 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2956584/todolists/completed_json/first_todolist_should_have_the_correct_id.yml +59 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/projects/2956584/todolists/completed_json/should_be_an_array.yml +59 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists/completed_json/first_todolist_should_have_the_correct_id.yml +60 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists/completed_json/should_be_an_array.yml +60 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists_json/first_todolist_should_have_the_correct_id.yml +60 -0
- data/spec/cassettes/Bcx_Resources_Todolist/GET_/todolists_json/should_be_an_array.yml +60 -0
- data/spec/cassettes/Bcx_Resources_Todolist/projects/123/todolists_json/should_create_a_new_todolist.yml +62 -0
- data/spec/spec_helper.rb +21 -0
- metadata +103 -8
@@ -0,0 +1,75 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Bcx::Resources::Todolist, :vcr do
|
4
|
+
let(:client) { Bcx::Client.new(:http, login: 'bcx-test-user', password: 'secret') }
|
5
|
+
|
6
|
+
|
7
|
+
describe "GET /projects/2937644/todolists.json" do
|
8
|
+
let(:todolists) { client.projects(2956584).todolists! }
|
9
|
+
|
10
|
+
it "should be an array" do
|
11
|
+
expect(todolists).to be_an Array
|
12
|
+
end
|
13
|
+
|
14
|
+
it "first todolist should have the correct id" do
|
15
|
+
expect(todolists.first.id).to eq 7701209
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
describe "GET /projects/2956584/todolists/completed.json" do
|
20
|
+
let(:todolists) { client.projects(2956584).todolists.completed! }
|
21
|
+
|
22
|
+
|
23
|
+
it "should be an array" do
|
24
|
+
expect(todolists).to be_an Array
|
25
|
+
end
|
26
|
+
|
27
|
+
it "first todolist should have the correct id" do
|
28
|
+
expect(todolists.first.id).to eq 7701289
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
describe "GET /todolists.json" do
|
33
|
+
let(:todolists) { client.todolists! }
|
34
|
+
|
35
|
+
it "should be an array" do
|
36
|
+
expect(todolists).to be_an Array
|
37
|
+
end
|
38
|
+
|
39
|
+
it "first todolist should have the correct id" do
|
40
|
+
expect(todolists.first.id).to eq 7701209
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
describe "GET /todolists/completed.json" do
|
45
|
+
let(:todolists) { client.todolists.completed! }
|
46
|
+
|
47
|
+
|
48
|
+
it "should be an array" do
|
49
|
+
expect(todolists).to be_an Array
|
50
|
+
end
|
51
|
+
|
52
|
+
it "first todolist should have the correct id" do
|
53
|
+
expect(todolists.first.id).to eq 7701289
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
describe "GET /projects/123/todolists/456.json" do
|
58
|
+
let(:todolist) { client.projects(2956584).todolists!(7701289) }
|
59
|
+
|
60
|
+
it "should return a hash" do
|
61
|
+
expect(todolist).to be_a Hashie::Mash
|
62
|
+
end
|
63
|
+
|
64
|
+
it "should have the correct id" do
|
65
|
+
expect(todolist.id).to eq 7701289
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
describe "/projects/123/todolists.json" do
|
70
|
+
it "should create a new todolist" do
|
71
|
+
todolist = client.projects(2956584).todolists.create!(name: 'My todolist', description: 'This is a todolist')
|
72
|
+
expect(todolist.created_at).not_to be_blank
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
data/spec/cassettes/Bcx_Resources_Project/DELETE_/projects/2937644/should_delete_a_project.yml
ADDED
@@ -0,0 +1,105 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: delete
|
5
|
+
uri: https://basecamp.com/2274488/api/v1/projects/2937644.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.8.7
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Authorization:
|
15
|
+
- Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 204
|
19
|
+
message:
|
20
|
+
headers:
|
21
|
+
server:
|
22
|
+
- nginx
|
23
|
+
date:
|
24
|
+
- Tue, 28 May 2013 20:34:33 GMT
|
25
|
+
connection:
|
26
|
+
- close
|
27
|
+
status:
|
28
|
+
- 204 No Content
|
29
|
+
x-frame-options:
|
30
|
+
- SAMEORIGIN
|
31
|
+
x-xss-protection:
|
32
|
+
- 1; mode=block
|
33
|
+
x-content-type-options:
|
34
|
+
- nosniff
|
35
|
+
x-ua-compatible:
|
36
|
+
- chrome=1
|
37
|
+
x-xhr-current-location:
|
38
|
+
- /2274488/api/v1/projects/2937644.json
|
39
|
+
x-asset-paths:
|
40
|
+
- ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
|
41
|
+
cache-control:
|
42
|
+
- no-cache
|
43
|
+
x-request-id:
|
44
|
+
- 86d723e0-926a-4943-8bcd-b57770e596fe
|
45
|
+
x-runtime:
|
46
|
+
- '0.421573'
|
47
|
+
body:
|
48
|
+
encoding: US-ASCII
|
49
|
+
string: ''
|
50
|
+
http_version:
|
51
|
+
recorded_at: Tue, 28 May 2013 20:34:33 GMT
|
52
|
+
- request:
|
53
|
+
method: get
|
54
|
+
uri: https://basecamp.com/2274488/api/v1/projects/2937644.json
|
55
|
+
body:
|
56
|
+
encoding: US-ASCII
|
57
|
+
string: ''
|
58
|
+
headers:
|
59
|
+
User-Agent:
|
60
|
+
- Faraday v0.8.7
|
61
|
+
Content-Type:
|
62
|
+
- application/json
|
63
|
+
Authorization:
|
64
|
+
- Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
|
65
|
+
response:
|
66
|
+
status:
|
67
|
+
code: 404
|
68
|
+
message:
|
69
|
+
headers:
|
70
|
+
server:
|
71
|
+
- nginx
|
72
|
+
date:
|
73
|
+
- Tue, 28 May 2013 20:34:34 GMT
|
74
|
+
content-type:
|
75
|
+
- text/html
|
76
|
+
transfer-encoding:
|
77
|
+
- chunked
|
78
|
+
connection:
|
79
|
+
- close
|
80
|
+
status:
|
81
|
+
- 404 Not Found
|
82
|
+
x-frame-options:
|
83
|
+
- SAMEORIGIN
|
84
|
+
x-xss-protection:
|
85
|
+
- 1; mode=block
|
86
|
+
x-content-type-options:
|
87
|
+
- nosniff
|
88
|
+
x-ua-compatible:
|
89
|
+
- chrome=1
|
90
|
+
x-xhr-current-location:
|
91
|
+
- /2274488/api/v1/projects/2937644.json
|
92
|
+
x-asset-paths:
|
93
|
+
- ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
|
94
|
+
cache-control:
|
95
|
+
- no-cache
|
96
|
+
x-request-id:
|
97
|
+
- 5545afed-3a6f-4dd0-b243-3eb7bb8ecf1e
|
98
|
+
x-runtime:
|
99
|
+
- '0.328483'
|
100
|
+
body:
|
101
|
+
encoding: ASCII-8BIT
|
102
|
+
string: ''
|
103
|
+
http_version:
|
104
|
+
recorded_at: Tue, 28 May 2013 20:34:34 GMT
|
105
|
+
recorded_with: VCR 2.5.0
|
data/spec/cassettes/Bcx_Resources_Project/GET_/projects/2937644/should_have_the_correct_id.yml
ADDED
@@ -0,0 +1,60 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://basecamp.com/2274488/api/v1/projects/2937644.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.8.7
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Authorization:
|
15
|
+
- Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message:
|
20
|
+
headers:
|
21
|
+
server:
|
22
|
+
- nginx
|
23
|
+
date:
|
24
|
+
- Tue, 28 May 2013 20:29:00 GMT
|
25
|
+
content-type:
|
26
|
+
- application/json; charset=utf-8
|
27
|
+
transfer-encoding:
|
28
|
+
- chunked
|
29
|
+
connection:
|
30
|
+
- close
|
31
|
+
status:
|
32
|
+
- 200 OK
|
33
|
+
x-frame-options:
|
34
|
+
- SAMEORIGIN
|
35
|
+
x-xss-protection:
|
36
|
+
- 1; mode=block
|
37
|
+
x-content-type-options:
|
38
|
+
- nosniff
|
39
|
+
x-ua-compatible:
|
40
|
+
- chrome=1
|
41
|
+
x-xhr-current-location:
|
42
|
+
- /2274488/api/v1/projects/2937644.json
|
43
|
+
x-asset-paths:
|
44
|
+
- ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
|
45
|
+
etag:
|
46
|
+
- ! '"a5ce1100b3a610e2995fe40c497dd0c4"'
|
47
|
+
last-modified:
|
48
|
+
- Tue, 28 May 2013 20:18:46 GMT
|
49
|
+
cache-control:
|
50
|
+
- max-age=0, private, must-revalidate
|
51
|
+
x-request-id:
|
52
|
+
- aadbbfb0-bc1d-4b2a-ad02-52120cf9edd2
|
53
|
+
x-runtime:
|
54
|
+
- '0.366523'
|
55
|
+
body:
|
56
|
+
encoding: US-ASCII
|
57
|
+
string: ! '{"id":2937644,"name":"Explore Basecamp!","description":"New description","archived":false,"created_at":"2013-05-24T18:59:10.000Z","updated_at":"2013-05-28T20:18:46.000Z","last_event_at":"2013-05-28T20:18:46.000Z","starred":false,"creator":{"id":4666034,"name":"Basecamp","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/79383b7fc061815979c8c638784be44d4aa4628aaa16ee5614658a2b4d662eb9ce6fc85f0ea77f81b6e6bd3cdb9c266f42cbf1d2426968d83cb50f0d3078fcd65e6055e264b268aa44ffaa94d9475efa/avatar.gif?r=3"},"accesses":{"count":1,"updated_at":"2013-05-24T18:59:13.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/accesses.json"},"attachments":{"count":17,"updated_at":"2012-08-22T22:16:46.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/attachments.json"},"calendar_events":{"count":0,"updated_at":null,"url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/calendar_events.json"},"documents":{"count":3,"updated_at":"2012-11-23T20:27:39.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/documents.json"},"forwards":{"count":0,"updated_at":null,"url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/forwards.json"},"topics":{"count":9,"updated_at":"2013-05-28T12:30:00.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/topics.json"},"todolists":{"remaining_count":2,"completed_count":0,"updated_at":"2012-05-17T19:52:13.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/todolists.json"}}'
|
58
|
+
http_version:
|
59
|
+
recorded_at: Tue, 28 May 2013 20:29:00 GMT
|
60
|
+
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,60 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://basecamp.com/2274488/api/v1/projects/2937644.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.8.7
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Authorization:
|
15
|
+
- Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message:
|
20
|
+
headers:
|
21
|
+
server:
|
22
|
+
- nginx
|
23
|
+
date:
|
24
|
+
- Tue, 28 May 2013 20:28:59 GMT
|
25
|
+
content-type:
|
26
|
+
- application/json; charset=utf-8
|
27
|
+
transfer-encoding:
|
28
|
+
- chunked
|
29
|
+
connection:
|
30
|
+
- close
|
31
|
+
status:
|
32
|
+
- 200 OK
|
33
|
+
x-frame-options:
|
34
|
+
- SAMEORIGIN
|
35
|
+
x-xss-protection:
|
36
|
+
- 1; mode=block
|
37
|
+
x-content-type-options:
|
38
|
+
- nosniff
|
39
|
+
x-ua-compatible:
|
40
|
+
- chrome=1
|
41
|
+
x-xhr-current-location:
|
42
|
+
- /2274488/api/v1/projects/2937644.json
|
43
|
+
x-asset-paths:
|
44
|
+
- ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
|
45
|
+
etag:
|
46
|
+
- ! '"a5ce1100b3a610e2995fe40c497dd0c4"'
|
47
|
+
last-modified:
|
48
|
+
- Tue, 28 May 2013 20:18:46 GMT
|
49
|
+
cache-control:
|
50
|
+
- max-age=0, private, must-revalidate
|
51
|
+
x-request-id:
|
52
|
+
- 2586432a-0e75-438c-ba16-ba020e893d8a
|
53
|
+
x-runtime:
|
54
|
+
- '0.429543'
|
55
|
+
body:
|
56
|
+
encoding: US-ASCII
|
57
|
+
string: ! '{"id":2937644,"name":"Explore Basecamp!","description":"New description","archived":false,"created_at":"2013-05-24T18:59:10.000Z","updated_at":"2013-05-28T20:18:46.000Z","last_event_at":"2013-05-28T20:18:46.000Z","starred":false,"creator":{"id":4666034,"name":"Basecamp","avatar_url":"http://dge9rmgqjs8m1.cloudfront.net/global/79383b7fc061815979c8c638784be44d4aa4628aaa16ee5614658a2b4d662eb9ce6fc85f0ea77f81b6e6bd3cdb9c266f42cbf1d2426968d83cb50f0d3078fcd65e6055e264b268aa44ffaa94d9475efa/avatar.gif?r=3"},"accesses":{"count":1,"updated_at":"2013-05-24T18:59:13.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/accesses.json"},"attachments":{"count":17,"updated_at":"2012-08-22T22:16:46.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/attachments.json"},"calendar_events":{"count":0,"updated_at":null,"url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/calendar_events.json"},"documents":{"count":3,"updated_at":"2012-11-23T20:27:39.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/documents.json"},"forwards":{"count":0,"updated_at":null,"url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/forwards.json"},"topics":{"count":9,"updated_at":"2013-05-28T12:30:00.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/topics.json"},"todolists":{"remaining_count":2,"completed_count":0,"updated_at":"2012-05-17T19:52:13.000Z","url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp/todolists.json"}}'
|
58
|
+
http_version:
|
59
|
+
recorded_at: Tue, 28 May 2013 20:28:59 GMT
|
60
|
+
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,58 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://basecamp.com/2274488/api/v1/projects/archived.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.8.7
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Authorization:
|
15
|
+
- Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message:
|
20
|
+
headers:
|
21
|
+
server:
|
22
|
+
- nginx
|
23
|
+
date:
|
24
|
+
- Tue, 28 May 2013 20:28:57 GMT
|
25
|
+
content-type:
|
26
|
+
- application/json; charset=utf-8
|
27
|
+
transfer-encoding:
|
28
|
+
- chunked
|
29
|
+
connection:
|
30
|
+
- close
|
31
|
+
status:
|
32
|
+
- 200 OK
|
33
|
+
x-frame-options:
|
34
|
+
- SAMEORIGIN
|
35
|
+
x-xss-protection:
|
36
|
+
- 1; mode=block
|
37
|
+
x-content-type-options:
|
38
|
+
- nosniff
|
39
|
+
x-ua-compatible:
|
40
|
+
- chrome=1
|
41
|
+
x-xhr-current-location:
|
42
|
+
- /2274488/api/v1/projects/archived.json
|
43
|
+
x-asset-paths:
|
44
|
+
- ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
|
45
|
+
etag:
|
46
|
+
- ! '"d751713988987e9331980363e24189ce"'
|
47
|
+
cache-control:
|
48
|
+
- max-age=0, private, must-revalidate
|
49
|
+
x-request-id:
|
50
|
+
- e866c997-d0c8-42b0-a8e3-e6af859d655a
|
51
|
+
x-runtime:
|
52
|
+
- '0.373261'
|
53
|
+
body:
|
54
|
+
encoding: US-ASCII
|
55
|
+
string: ! '[]'
|
56
|
+
http_version:
|
57
|
+
recorded_at: Tue, 28 May 2013 20:28:57 GMT
|
58
|
+
recorded_with: VCR 2.5.0
|
@@ -0,0 +1,58 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://basecamp.com/2274488/api/v1/projects/archived.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.8.7
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Authorization:
|
15
|
+
- Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message:
|
20
|
+
headers:
|
21
|
+
server:
|
22
|
+
- nginx
|
23
|
+
date:
|
24
|
+
- Tue, 28 May 2013 20:28:58 GMT
|
25
|
+
content-type:
|
26
|
+
- application/json; charset=utf-8
|
27
|
+
transfer-encoding:
|
28
|
+
- chunked
|
29
|
+
connection:
|
30
|
+
- close
|
31
|
+
status:
|
32
|
+
- 200 OK
|
33
|
+
x-frame-options:
|
34
|
+
- SAMEORIGIN
|
35
|
+
x-xss-protection:
|
36
|
+
- 1; mode=block
|
37
|
+
x-content-type-options:
|
38
|
+
- nosniff
|
39
|
+
x-ua-compatible:
|
40
|
+
- chrome=1
|
41
|
+
x-xhr-current-location:
|
42
|
+
- /2274488/api/v1/projects/archived.json
|
43
|
+
x-asset-paths:
|
44
|
+
- ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
|
45
|
+
etag:
|
46
|
+
- ! '"d751713988987e9331980363e24189ce"'
|
47
|
+
cache-control:
|
48
|
+
- max-age=0, private, must-revalidate
|
49
|
+
x-request-id:
|
50
|
+
- 48192f78-1265-4e01-a8dd-3a629fa4751e
|
51
|
+
x-runtime:
|
52
|
+
- '0.365625'
|
53
|
+
body:
|
54
|
+
encoding: US-ASCII
|
55
|
+
string: ! '[]'
|
56
|
+
http_version:
|
57
|
+
recorded_at: Tue, 28 May 2013 20:28:58 GMT
|
58
|
+
recorded_with: VCR 2.5.0
|
data/spec/cassettes/Bcx_Resources_Project/GET_/projects/first_project_should_have_the_correct_id.yml
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: https://basecamp.com/2274488/api/v1/projects.json
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
User-Agent:
|
11
|
+
- Faraday v0.8.7
|
12
|
+
Content-Type:
|
13
|
+
- application/json
|
14
|
+
Authorization:
|
15
|
+
- Basic YmN4LXRlc3QtdXNlcjpzZWNyZXQ=
|
16
|
+
response:
|
17
|
+
status:
|
18
|
+
code: 200
|
19
|
+
message:
|
20
|
+
headers:
|
21
|
+
server:
|
22
|
+
- nginx
|
23
|
+
date:
|
24
|
+
- Tue, 28 May 2013 20:28:56 GMT
|
25
|
+
content-type:
|
26
|
+
- application/json; charset=utf-8
|
27
|
+
transfer-encoding:
|
28
|
+
- chunked
|
29
|
+
connection:
|
30
|
+
- close
|
31
|
+
status:
|
32
|
+
- 200 OK
|
33
|
+
x-frame-options:
|
34
|
+
- SAMEORIGIN
|
35
|
+
x-xss-protection:
|
36
|
+
- 1; mode=block
|
37
|
+
x-content-type-options:
|
38
|
+
- nosniff
|
39
|
+
x-ua-compatible:
|
40
|
+
- chrome=1
|
41
|
+
x-xhr-current-location:
|
42
|
+
- /2274488/api/v1/projects.json
|
43
|
+
x-asset-paths:
|
44
|
+
- ! '{"application.js":"application-65ce9eab0fe6859d64efe0f889d5e231.js","application.css":"application-417c4f9074157e12c1dfb6ede37ce3e3.css"}'
|
45
|
+
etag:
|
46
|
+
- ! '"58d12b1c36519a45ee30a8e6088f855c"'
|
47
|
+
cache-control:
|
48
|
+
- max-age=0, private, must-revalidate
|
49
|
+
x-request-id:
|
50
|
+
- ce1b5dc0-020a-4cdd-9767-62114a2ce040
|
51
|
+
x-runtime:
|
52
|
+
- '0.367040'
|
53
|
+
body:
|
54
|
+
encoding: US-ASCII
|
55
|
+
string: ! '[{"id":2937644,"name":"Explore Basecamp!","description":"New description","archived":false,"created_at":"2013-05-24T18:59:10.000Z","updated_at":"2013-05-28T20:18:46.000Z","last_event_at":"2013-05-28T20:18:46.000Z","starred":false,"url":"https://basecamp.com/2274488/api/v1/projects/2937644-explore-basecamp.json"},{"id":2951531,"name":"New
|
56
|
+
project","description":"A new project created over the API","archived":false,"created_at":"2013-05-28T14:11:45.000Z","updated_at":"2013-05-28T14:11:45.000Z","last_event_at":"2013-05-28T14:11:45.000Z","starred":false,"url":"https://basecamp.com/2274488/api/v1/projects/2951531-new-project.json"}]'
|
57
|
+
http_version:
|
58
|
+
recorded_at: Tue, 28 May 2013 20:28:56 GMT
|
59
|
+
recorded_with: VCR 2.5.0
|