json_client 0.2.2 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +20 -19
- data/Rakefile +2 -4
- data/json_client.gemspec +18 -17
- data/lib/json_client.rb +18 -6
- data/lib/json_client/base.rb +48 -47
- data/lib/json_client/base_serializer.rb +6 -3
- data/lib/json_client/create.rb +9 -0
- data/lib/json_client/destroy.rb +11 -0
- data/lib/json_client/dsl.rb +2 -2
- data/lib/json_client/dsl/on_use_collector.rb +3 -0
- data/lib/json_client/dsl/requests_collector.rb +0 -1
- data/lib/json_client/dsl/serializers_collector.rb +0 -1
- data/lib/json_client/empty_serializer.rb +2 -3
- data/lib/json_client/index.rb +9 -0
- data/lib/json_client/model_serializer.rb +4 -0
- data/lib/json_client/request.rb +48 -0
- data/lib/json_client/request_with_body.rb +30 -0
- data/lib/json_client/request_without_body.rb +17 -0
- data/lib/json_client/requests.rb +58 -16
- data/lib/json_client/response.rb +23 -0
- data/lib/json_client/show.rb +9 -0
- data/lib/json_client/update.rb +15 -0
- data/lib/json_client/uri_builder.rb +34 -0
- data/lib/json_client/version.rb +1 -1
- data/spec/fixtures/vcr_cassettes/all_success.yml +15 -15
- data/spec/fixtures/vcr_cassettes/create_success.yml +19 -20
- data/spec/fixtures/vcr_cassettes/destroy_success.yml +35 -36
- data/spec/fixtures/vcr_cassettes/show_success.yml +17 -16
- data/spec/fixtures/vcr_cassettes/update_success.yml +38 -40
- data/spec/json_client/base_responses/response_spec.rb +8 -4
- data/spec/json_client/base_spec.rb +32 -19
- data/spec/json_client/dsl_spec.rb +10 -12
- data/spec/json_client/model_serializer_spec.rb +14 -4
- data/spec/json_client/{pather_spec.rb → uri_builder_spec.rb} +26 -4
- data/spec/json_client_spec.rb +22 -8
- data/spec/spec_helper.rb +0 -1
- metadata +47 -46
- data/lib/json_client/base_requests/create.rb +0 -16
- data/lib/json_client/base_requests/destroy.rb +0 -13
- data/lib/json_client/base_requests/index.rb +0 -11
- data/lib/json_client/base_requests/request.rb +0 -12
- data/lib/json_client/base_requests/show.rb +0 -11
- data/lib/json_client/base_requests/update.rb +0 -16
- data/lib/json_client/base_responses/create.rb +0 -8
- data/lib/json_client/base_responses/destroy.rb +0 -8
- data/lib/json_client/base_responses/index.rb +0 -8
- data/lib/json_client/base_responses/response.rb +0 -25
- data/lib/json_client/base_responses/show.rb +0 -8
- data/lib/json_client/base_responses/update.rb +0 -8
- data/lib/json_client/pather.rb +0 -20
- data/lib/json_client/resource_handler.rb +0 -9
- data/lib/json_client/responses.rb +0 -29
- data/spec/fixtures/vcr_cassettes/authenticate_success.yml +0 -58
- data/spec/json_client/base_requests/request_spec.rb +0 -14
- data/spec/json_client/requests_spec.rb +0 -43
- data/spec/json_client/responses_spec.rb +0 -43
@@ -1,29 +0,0 @@
|
|
1
|
-
require_relative 'base_responses/index'
|
2
|
-
require_relative 'base_responses/show'
|
3
|
-
require_relative 'base_responses/create'
|
4
|
-
require_relative 'base_responses/update'
|
5
|
-
require_relative 'base_responses/destroy'
|
6
|
-
|
7
|
-
module JsonClient
|
8
|
-
class Responses
|
9
|
-
def index
|
10
|
-
BaseResponses::Index
|
11
|
-
end
|
12
|
-
|
13
|
-
def show
|
14
|
-
BaseResponses::Show
|
15
|
-
end
|
16
|
-
|
17
|
-
def create
|
18
|
-
BaseResponses::Create
|
19
|
-
end
|
20
|
-
|
21
|
-
def update
|
22
|
-
BaseResponses::Update
|
23
|
-
end
|
24
|
-
|
25
|
-
def destroy
|
26
|
-
BaseResponses::Destroy
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,58 +0,0 @@
|
|
1
|
-
---
|
2
|
-
http_interactions:
|
3
|
-
- request:
|
4
|
-
method: post
|
5
|
-
uri: http://account-authenticator.herokuapp.com/api/v1/authentications/authenticate
|
6
|
-
body:
|
7
|
-
encoding: UTF-8
|
8
|
-
string: '{"api_key":"124ecd49-07fd-4553-a5cd-0178b7fa8b3f","api_password":"IIoclO7kmQqJ1wixWrAuOA","account":{"username":"new_username","password":"new_password"}}'
|
9
|
-
headers:
|
10
|
-
Accept:
|
11
|
-
- application/json
|
12
|
-
Accept-Encoding:
|
13
|
-
- gzip, deflate
|
14
|
-
Content-Type:
|
15
|
-
- application/json
|
16
|
-
Content-Length:
|
17
|
-
- '154'
|
18
|
-
User-Agent:
|
19
|
-
- Ruby
|
20
|
-
response:
|
21
|
-
status:
|
22
|
-
code: 200
|
23
|
-
message: OK
|
24
|
-
headers:
|
25
|
-
Server:
|
26
|
-
- Cowboy
|
27
|
-
Date:
|
28
|
-
- Mon, 05 Jan 2015 01:23:42 GMT
|
29
|
-
Connection:
|
30
|
-
- keep-alive
|
31
|
-
X-Frame-Options:
|
32
|
-
- SAMEORIGIN
|
33
|
-
X-Xss-Protection:
|
34
|
-
- 1; mode=block
|
35
|
-
X-Content-Type-Options:
|
36
|
-
- nosniff
|
37
|
-
Content-Type:
|
38
|
-
- application/json; charset=utf-8
|
39
|
-
Etag:
|
40
|
-
- '"29a332b9c56931be8b665c71c76164f8"'
|
41
|
-
Cache-Control:
|
42
|
-
- max-age=0, private, must-revalidate
|
43
|
-
Set-Cookie:
|
44
|
-
- request_method=POST; path=/
|
45
|
-
X-Request-Id:
|
46
|
-
- aa1a198c-8128-4be7-a69a-6bfafd673aac
|
47
|
-
X-Runtime:
|
48
|
-
- '0.387137'
|
49
|
-
Transfer-Encoding:
|
50
|
-
- chunked
|
51
|
-
Via:
|
52
|
-
- 1.1 vegur
|
53
|
-
body:
|
54
|
-
encoding: UTF-8
|
55
|
-
string: '{"authenticated":true}'
|
56
|
-
http_version:
|
57
|
-
recorded_at: Mon, 05 Jan 2015 01:09:52 GMT
|
58
|
-
recorded_with: VCR 2.9.3
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
require 'rspec/collection_matchers'
|
3
|
-
require 'json_client'
|
4
|
-
require 'vcr'
|
5
|
-
require 'json'
|
6
|
-
|
7
|
-
VCR.configure do |c|
|
8
|
-
c.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
|
9
|
-
c.hook_into :webmock
|
10
|
-
end
|
11
|
-
|
12
|
-
describe JsonClient::BaseRequests::Request do
|
13
|
-
pending '# TODO'
|
14
|
-
end
|
@@ -1,43 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
require 'rspec/collection_matchers'
|
3
|
-
require 'json_client'
|
4
|
-
require 'vcr'
|
5
|
-
|
6
|
-
VCR.configure do |c|
|
7
|
-
c.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
|
8
|
-
c.hook_into :webmock
|
9
|
-
end
|
10
|
-
|
11
|
-
describe JsonClient::Requests do
|
12
|
-
subject { described_class.new }
|
13
|
-
|
14
|
-
describe '#index' do
|
15
|
-
it 'returns a index request class' do
|
16
|
-
expect(subject.index).to be JsonClient::BaseRequests::Index
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
describe '#show' do
|
21
|
-
it 'returns a show request class' do
|
22
|
-
expect(subject.show).to be JsonClient::BaseRequests::Show
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
describe '#create' do
|
27
|
-
it 'returns a create request class' do
|
28
|
-
expect(subject.create).to be JsonClient::BaseRequests::Create
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
describe '#update' do
|
33
|
-
it 'returns an update request class' do
|
34
|
-
expect(subject.update).to be JsonClient::BaseRequests::Update
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
describe '#destroy' do
|
39
|
-
it 'returns a destroy request class' do
|
40
|
-
expect(subject.destroy).to be JsonClient::BaseRequests::Destroy
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
@@ -1,43 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
require 'rspec/collection_matchers'
|
3
|
-
require 'json_client'
|
4
|
-
require 'vcr'
|
5
|
-
|
6
|
-
VCR.configure do |c|
|
7
|
-
c.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
|
8
|
-
c.hook_into :webmock
|
9
|
-
end
|
10
|
-
|
11
|
-
describe JsonClient::Responses do
|
12
|
-
subject { described_class.new }
|
13
|
-
|
14
|
-
describe '#index' do
|
15
|
-
it 'returns a index response class' do
|
16
|
-
expect(subject.index).to be JsonClient::BaseResponses::Index
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
describe '#show' do
|
21
|
-
it 'returns a show response class' do
|
22
|
-
expect(subject.show).to be JsonClient::BaseResponses::Show
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
describe '#create' do
|
27
|
-
it 'returns a create response class' do
|
28
|
-
expect(subject.create).to be JsonClient::BaseResponses::Create
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
describe '#update' do
|
33
|
-
it 'returns an update response class' do
|
34
|
-
expect(subject.update).to be JsonClient::BaseResponses::Update
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
|
-
describe '#destroy' do
|
39
|
-
it 'returns a destroy response class' do
|
40
|
-
expect(subject.destroy).to be JsonClient::BaseResponses::Destroy
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|