passaporteweb-client 0.0.13 → 0.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile.lock +1 -1
- data/README.rdoc +3 -2
- data/lib/passaporte_web.rb +1 -0
- data/lib/passaporte_web/identity_service.rb +95 -0
- data/lib/passaporte_web/version.rb +1 -1
- data/spec/passaporte_web/identity_service_spec.rb +86 -0
- metadata +48 -50
data/Gemfile.lock
CHANGED
data/README.rdoc
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
A Ruby client for the PassaporteWeb REST API
|
4
4
|
|
5
|
+
{<img src="https://badge.fury.io/rb/passaporteweb-client.png" alt="Gem Version" />}[https://rubygems.org/gems/passaporteweb-client]
|
5
6
|
{<img src="https://travis-ci.org/myfreecomm/passaporteweb-client-ruby.png?branch=master" alt="Build Status" />}[https://travis-ci.org/myfreecomm/passaporteweb-client-ruby]
|
6
7
|
{<img src="https://coveralls.io/repos/myfreecomm/passaporteweb-client-ruby/badge.png?branch=master" alt="Coverage Status" />}[https://coveralls.io/r/myfreecomm/passaporteweb-client-ruby]
|
7
8
|
{<img src="https://codeclimate.com/github/myfreecomm/passaporteweb-client-ruby.png" alt="Code Climate Status" />}[https://codeclimate.com/github/myfreecomm/passaporteweb-client-ruby]
|
@@ -57,8 +58,8 @@ Or install it yourself as:
|
|
57
58
|
* {GET /organizations/api/identities/:uuid/accounts/}[https://app.passaporteweb.com.br/static/docs/account_manager.html#get-organizations-api-identities-uuid-accounts] ==> PassaporteWeb::IdentityServiceAccount.find_all
|
58
59
|
* {POST /organizations/api/identities/:uuid/accounts/}[https://app.passaporteweb.com.br/static/docs/servicos.html#put-accounts-api-service-info-uuid-service-slug] ==> PassaporteWeb::IdentityServiceAccount.save
|
59
60
|
* {Serviços do usuário}[https://app.passaporteweb.com.br/static/docs/servicos.html]
|
60
|
-
* {GET /accounts/api/service-info/:uuid/:service_slug/}[https://app.passaporteweb.com.br/static/docs/servicos.html#get-accounts-api-service-info-uuid-service-slug] ==>
|
61
|
-
* {PUT /accounts/api/service-info/:uuid/:service_slug/}[https://app.passaporteweb.com.br/static/docs/servicos.html#put-accounts-api-service-info-uuid-service-slug] ==>
|
61
|
+
* {GET /accounts/api/service-info/:uuid/:service_slug/}[https://app.passaporteweb.com.br/static/docs/servicos.html#get-accounts-api-service-info-uuid-service-slug] ==> PassaporteWeb::IdentityService.find
|
62
|
+
* {PUT /accounts/api/service-info/:uuid/:service_slug/}[https://app.passaporteweb.com.br/static/docs/servicos.html#put-accounts-api-service-info-uuid-service-slug] ==> PassaporteWeb::IdentityService#save
|
62
63
|
* {Perfil}[https://app.passaporteweb.com.br/static/docs/perfil.html]
|
63
64
|
* {GET /profile/api/info/:uuid/}[https://app.passaporteweb.com.br/static/docs/perfil.html#get-profile-api-info-uuid] ==> (deprecated, not going to be implemented)
|
64
65
|
* {GET /profile/api/info/?email=:email}[https://app.passaporteweb.com.br/static/docs/perfil.html#get-profile-api-info-email-email] ==> (deprecated, not going to be implemented)
|
data/lib/passaporte_web.rb
CHANGED
@@ -0,0 +1,95 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
module PassaporteWeb
|
3
|
+
|
4
|
+
# The IdentityService objct represents the relationship between an Identity and a Service on PassaporteWeb. This
|
5
|
+
# is only relevant if you wish to add information (via +service_data+ attribute) about the Identity and Service
|
6
|
+
# on PassaporteWeb. It does not mean that the Identity has an ServiceAccount on the Service.
|
7
|
+
class IdentityService
|
8
|
+
include Attributable
|
9
|
+
|
10
|
+
ATTRIBUTES = [:identity, :slug, :is_active, :service_data]
|
11
|
+
UPDATABLE_ATTRIBUTES = [:is_active, :service_data]
|
12
|
+
|
13
|
+
attr_accessor *UPDATABLE_ATTRIBUTES
|
14
|
+
attr_reader *(ATTRIBUTES - UPDATABLE_ATTRIBUTES)
|
15
|
+
attr_reader :errors
|
16
|
+
|
17
|
+
# Instanciates a new IdentityService object for the supplied Identity. The +slug+ attribute is required. The
|
18
|
+
# +service_data+ attribute should be a Hash that will be converted to a JSON object. As so, it should
|
19
|
+
# only contain strings, symbols, integers, floats, arrays and hashes (the last two with only the same
|
20
|
+
# kind of simple objects).
|
21
|
+
#
|
22
|
+
# Example:
|
23
|
+
#
|
24
|
+
# identity = PassaporteWeb::Identity.find('some-uuid')
|
25
|
+
# PassaporteWeb::IdentityService.new(identity, slug: 'identity_client', is_active: true, service_data: {foo: 'bar'})
|
26
|
+
def initialize(identity, attributes={})
|
27
|
+
set_attributes(attributes)
|
28
|
+
@identity = identity
|
29
|
+
@errors = {}
|
30
|
+
end
|
31
|
+
|
32
|
+
# Creates or updates the IdentityService. The +service_data+ attribute should be a Hash that will be
|
33
|
+
# converted to a JSON object. As so, it should only contain strings, symbols, integers, floats, arrays
|
34
|
+
# and hashes (the last two with only the same kind of simple objects).
|
35
|
+
#
|
36
|
+
# API method: <tt>PUT /accounts/api/service-info/:uuid/:service_slug/</tt>
|
37
|
+
#
|
38
|
+
# API documentation: https://app.passaporteweb.com.br/static/docs/servicos.html#put-accounts-api-service-info-uuid-service-slug
|
39
|
+
def save
|
40
|
+
# TODO validar atributos?
|
41
|
+
response = Http.put("/accounts/api/service-info/#{identity.uuid}/#{slug}/", save_body)
|
42
|
+
raise "unexpected response: #{response.code} - #{response.body}" unless [200,201].include?(response.code)
|
43
|
+
attributes_hash = MultiJson.decode(response.body)
|
44
|
+
set_attributes(attributes_hash)
|
45
|
+
@errors = {}
|
46
|
+
@persisted = true
|
47
|
+
true
|
48
|
+
rescue *[RestClient::Conflict, RestClient::BadRequest] => e
|
49
|
+
@errors = MultiJson.decode(e.response.body)
|
50
|
+
false
|
51
|
+
end
|
52
|
+
|
53
|
+
def persisted?
|
54
|
+
@persisted == true
|
55
|
+
end
|
56
|
+
|
57
|
+
def is_active?
|
58
|
+
@is_active == true
|
59
|
+
end
|
60
|
+
|
61
|
+
def attributes
|
62
|
+
ATTRIBUTES.inject({}) do |hash, attribute|
|
63
|
+
hash[attribute] = self.send(attribute)
|
64
|
+
hash
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
# Finds the IdentityService representing the relationship of the Identity with the Service. Returns an
|
69
|
+
# IdentityService object or nil if no relationship is found.
|
70
|
+
#
|
71
|
+
# API method: <tt>GET /accounts/api/service-info/:uuid/:service_slug/</tt>
|
72
|
+
#
|
73
|
+
# API documentation: https://app.passaporteweb.com.br/static/docs/servicos.html#get-accounts-api-service-info-uuid-service-slug
|
74
|
+
def self.find(identity, slug)
|
75
|
+
response = Http.get("/accounts/api/service-info/#{identity.uuid}/#{slug}/")
|
76
|
+
return if response.code == 204
|
77
|
+
attributes_hash = MultiJson.decode(response.body)
|
78
|
+
load_identity_service(identity, attributes_hash)
|
79
|
+
end
|
80
|
+
|
81
|
+
private
|
82
|
+
|
83
|
+
def self.load_identity_service(identity, attributes)
|
84
|
+
service = self.new(identity, attributes)
|
85
|
+
service.instance_variable_set(:@persisted, true)
|
86
|
+
service
|
87
|
+
end
|
88
|
+
|
89
|
+
def save_body
|
90
|
+
self.attributes.select { |key, value| UPDATABLE_ATTRIBUTES.include?(key) && !value.nil? }
|
91
|
+
end
|
92
|
+
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe PassaporteWeb::IdentityService do
|
5
|
+
let(:identity) { PassaporteWeb::Identity.find('5e32f927-c4ab-404e-a91c-b2abc05afb56') }
|
6
|
+
let(:mock_identity) { mock('Identity', uuid: 'identity-uuid') }
|
7
|
+
let(:identity_service_data_hash) { {:foo => 'bar', 'spam' => :eggs, 'integer' => 2, :float => 3.456, :array => [1, 2.0, 'three', :four], :hash => {oba: 'eba'}} }
|
8
|
+
let(:identity_service_data_hash_as_strings) { {"foo"=>"bar", "hash"=>{"oba"=>"eba"}, "spam"=>"eggs", "integer"=>2, "array"=>[1, 2.0, "three", "four"], "float"=>3.456} }
|
9
|
+
|
10
|
+
describe ".new" do
|
11
|
+
it "should instanciate an (almost) empty object" do
|
12
|
+
identity_service = described_class.new(mock_identity)
|
13
|
+
identity_service.attributes.should == {identity: mock_identity, slug: nil, is_active: nil, service_data: nil}
|
14
|
+
identity_service.identity.should == mock_identity
|
15
|
+
identity_service.slug.should be_nil
|
16
|
+
identity_service.is_active.should be_nil
|
17
|
+
identity_service.is_active?.should be_false
|
18
|
+
identity_service.service_data.should be_nil
|
19
|
+
identity_service.errors.should be_empty
|
20
|
+
identity_service.should_not be_persisted
|
21
|
+
end
|
22
|
+
it "should instanciate an object with attributes set" do
|
23
|
+
identity_service = described_class.new(mock_identity)
|
24
|
+
attributes = {
|
25
|
+
"slug" => "identity_client",
|
26
|
+
:is_active => true,
|
27
|
+
'service_data' => identity_service_data_hash
|
28
|
+
}
|
29
|
+
identity_service = described_class.new(mock_identity, attributes)
|
30
|
+
identity_service.attributes.should == {identity: mock_identity, slug: 'identity_client', is_active: true, service_data: identity_service_data_hash}
|
31
|
+
identity_service.identity.should == mock_identity
|
32
|
+
identity_service.slug.should == 'identity_client'
|
33
|
+
identity_service.is_active.should == true
|
34
|
+
identity_service.is_active?.should be_true
|
35
|
+
identity_service.service_data.should == identity_service_data_hash
|
36
|
+
identity_service.errors.should be_empty
|
37
|
+
identity_service.should_not be_persisted
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
describe ".find", vcr: true do
|
42
|
+
it "should find the IdentityService representing the existing relationship between the Identity and the Service" do
|
43
|
+
identity_service = described_class.find(identity, 'identity_client')
|
44
|
+
identity_service.should be_instance_of(described_class)
|
45
|
+
identity_service.identity.should == identity
|
46
|
+
identity_service.slug.should == 'identity_client'
|
47
|
+
identity_service.is_active.should == true
|
48
|
+
identity_service.is_active?.should be_true
|
49
|
+
identity_service.service_data.should be_nil
|
50
|
+
identity_service.errors.should be_empty
|
51
|
+
identity_service.should be_persisted
|
52
|
+
end
|
53
|
+
it "should return nil it the Identity does not have a relationship with the Service" do
|
54
|
+
other_identity = PassaporteWeb::Identity.find('840df3bd-8414-4085-9920-1937f4b37dd3')
|
55
|
+
described_class.find(other_identity, 'identity_client').should be_nil
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
describe "#save", vcr: true do
|
60
|
+
it "should create the relationship between Identity and Service with extra data" do
|
61
|
+
other_identity = PassaporteWeb::Identity.find('840df3bd-8414-4085-9920-1937f4b37dd3')
|
62
|
+
attributes = {
|
63
|
+
"slug" => "identity_client",
|
64
|
+
:is_active => true,
|
65
|
+
'service_data' => identity_service_data_hash
|
66
|
+
}
|
67
|
+
identity_service = described_class.new(other_identity, attributes)
|
68
|
+
identity_service.save.should be_true
|
69
|
+
identity_service.service_data.should == identity_service_data_hash_as_strings
|
70
|
+
|
71
|
+
identity_service = described_class.find(other_identity, 'identity_client')
|
72
|
+
identity_service.service_data.should == identity_service_data_hash_as_strings
|
73
|
+
end
|
74
|
+
it "should update the relationship between Identity and Service with extra data" do
|
75
|
+
identity_service = described_class.find(identity, 'identity_client')
|
76
|
+
identity_service.service_data.should be_empty
|
77
|
+
identity_service.service_data = identity_service_data_hash
|
78
|
+
identity_service.save.should be_true
|
79
|
+
identity_service.service_data.should == identity_service_data_hash_as_strings
|
80
|
+
|
81
|
+
identity_service = described_class.find(identity, 'identity_client')
|
82
|
+
identity_service.service_data.should == identity_service_data_hash_as_strings
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
end
|
metadata
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: passaporteweb-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.13
|
5
4
|
prerelease:
|
5
|
+
version: 0.0.14
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Rodrigo Tassinari de Oliveira
|
@@ -10,10 +10,16 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-04-
|
13
|
+
date: 2013-04-18 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rest-client
|
17
|
+
version_requirements: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - ~>
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 1.6.7
|
17
23
|
requirement: !ruby/object:Gem::Requirement
|
18
24
|
none: false
|
19
25
|
requirements:
|
@@ -22,14 +28,14 @@ dependencies:
|
|
22
28
|
version: 1.6.7
|
23
29
|
type: :runtime
|
24
30
|
prerelease: false
|
31
|
+
- !ruby/object:Gem::Dependency
|
32
|
+
name: multi_json
|
25
33
|
version_requirements: !ruby/object:Gem::Requirement
|
26
34
|
none: false
|
27
35
|
requirements:
|
28
36
|
- - ~>
|
29
37
|
- !ruby/object:Gem::Version
|
30
|
-
version: 1.
|
31
|
-
- !ruby/object:Gem::Dependency
|
32
|
-
name: multi_json
|
38
|
+
version: 1.7.1
|
33
39
|
requirement: !ruby/object:Gem::Requirement
|
34
40
|
none: false
|
35
41
|
requirements:
|
@@ -38,14 +44,14 @@ dependencies:
|
|
38
44
|
version: 1.7.1
|
39
45
|
type: :runtime
|
40
46
|
prerelease: false
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: bundler
|
41
49
|
version_requirements: !ruby/object:Gem::Requirement
|
42
50
|
none: false
|
43
51
|
requirements:
|
44
52
|
- - ~>
|
45
53
|
- !ruby/object:Gem::Version
|
46
|
-
version: 1.
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: bundler
|
54
|
+
version: 1.3.2
|
49
55
|
requirement: !ruby/object:Gem::Requirement
|
50
56
|
none: false
|
51
57
|
requirements:
|
@@ -54,14 +60,14 @@ dependencies:
|
|
54
60
|
version: 1.3.2
|
55
61
|
type: :development
|
56
62
|
prerelease: false
|
63
|
+
- !ruby/object:Gem::Dependency
|
64
|
+
name: rake
|
57
65
|
version_requirements: !ruby/object:Gem::Requirement
|
58
66
|
none: false
|
59
67
|
requirements:
|
60
68
|
- - ~>
|
61
69
|
- !ruby/object:Gem::Version
|
62
|
-
version:
|
63
|
-
- !ruby/object:Gem::Dependency
|
64
|
-
name: rake
|
70
|
+
version: 10.0.4
|
65
71
|
requirement: !ruby/object:Gem::Requirement
|
66
72
|
none: false
|
67
73
|
requirements:
|
@@ -70,14 +76,14 @@ dependencies:
|
|
70
76
|
version: 10.0.4
|
71
77
|
type: :development
|
72
78
|
prerelease: false
|
79
|
+
- !ruby/object:Gem::Dependency
|
80
|
+
name: rdoc
|
73
81
|
version_requirements: !ruby/object:Gem::Requirement
|
74
82
|
none: false
|
75
83
|
requirements:
|
76
84
|
- - ~>
|
77
85
|
- !ruby/object:Gem::Version
|
78
|
-
version:
|
79
|
-
- !ruby/object:Gem::Dependency
|
80
|
-
name: rdoc
|
86
|
+
version: 4.0.1
|
81
87
|
requirement: !ruby/object:Gem::Requirement
|
82
88
|
none: false
|
83
89
|
requirements:
|
@@ -86,14 +92,14 @@ dependencies:
|
|
86
92
|
version: 4.0.1
|
87
93
|
type: :development
|
88
94
|
prerelease: false
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: rspec
|
89
97
|
version_requirements: !ruby/object:Gem::Requirement
|
90
98
|
none: false
|
91
99
|
requirements:
|
92
100
|
- - ~>
|
93
101
|
- !ruby/object:Gem::Version
|
94
|
-
version:
|
95
|
-
- !ruby/object:Gem::Dependency
|
96
|
-
name: rspec
|
102
|
+
version: 2.13.0
|
97
103
|
requirement: !ruby/object:Gem::Requirement
|
98
104
|
none: false
|
99
105
|
requirements:
|
@@ -102,14 +108,14 @@ dependencies:
|
|
102
108
|
version: 2.13.0
|
103
109
|
type: :development
|
104
110
|
prerelease: false
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: vcr
|
105
113
|
version_requirements: !ruby/object:Gem::Requirement
|
106
114
|
none: false
|
107
115
|
requirements:
|
108
116
|
- - ~>
|
109
117
|
- !ruby/object:Gem::Version
|
110
|
-
version: 2.
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: vcr
|
118
|
+
version: 2.4.0
|
113
119
|
requirement: !ruby/object:Gem::Requirement
|
114
120
|
none: false
|
115
121
|
requirements:
|
@@ -118,14 +124,14 @@ dependencies:
|
|
118
124
|
version: 2.4.0
|
119
125
|
type: :development
|
120
126
|
prerelease: false
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: webmock
|
121
129
|
version_requirements: !ruby/object:Gem::Requirement
|
122
130
|
none: false
|
123
131
|
requirements:
|
124
132
|
- - ~>
|
125
133
|
- !ruby/object:Gem::Version
|
126
|
-
version:
|
127
|
-
- !ruby/object:Gem::Dependency
|
128
|
-
name: webmock
|
134
|
+
version: 1.9.3
|
129
135
|
requirement: !ruby/object:Gem::Requirement
|
130
136
|
none: false
|
131
137
|
requirements:
|
@@ -134,14 +140,14 @@ dependencies:
|
|
134
140
|
version: 1.9.3
|
135
141
|
type: :development
|
136
142
|
prerelease: false
|
143
|
+
- !ruby/object:Gem::Dependency
|
144
|
+
name: pry
|
137
145
|
version_requirements: !ruby/object:Gem::Requirement
|
138
146
|
none: false
|
139
147
|
requirements:
|
140
148
|
- - ~>
|
141
149
|
- !ruby/object:Gem::Version
|
142
|
-
version:
|
143
|
-
- !ruby/object:Gem::Dependency
|
144
|
-
name: pry
|
150
|
+
version: 0.9.12
|
145
151
|
requirement: !ruby/object:Gem::Requirement
|
146
152
|
none: false
|
147
153
|
requirements:
|
@@ -150,14 +156,14 @@ dependencies:
|
|
150
156
|
version: 0.9.12
|
151
157
|
type: :development
|
152
158
|
prerelease: false
|
159
|
+
- !ruby/object:Gem::Dependency
|
160
|
+
name: pry-nav
|
153
161
|
version_requirements: !ruby/object:Gem::Requirement
|
154
162
|
none: false
|
155
163
|
requirements:
|
156
164
|
- - ~>
|
157
165
|
- !ruby/object:Gem::Version
|
158
|
-
version: 0.
|
159
|
-
- !ruby/object:Gem::Dependency
|
160
|
-
name: pry-nav
|
166
|
+
version: 0.2.3
|
161
167
|
requirement: !ruby/object:Gem::Requirement
|
162
168
|
none: false
|
163
169
|
requirements:
|
@@ -166,14 +172,14 @@ dependencies:
|
|
166
172
|
version: 0.2.3
|
167
173
|
type: :development
|
168
174
|
prerelease: false
|
175
|
+
- !ruby/object:Gem::Dependency
|
176
|
+
name: awesome_print
|
169
177
|
version_requirements: !ruby/object:Gem::Requirement
|
170
178
|
none: false
|
171
179
|
requirements:
|
172
180
|
- - ~>
|
173
181
|
- !ruby/object:Gem::Version
|
174
|
-
version:
|
175
|
-
- !ruby/object:Gem::Dependency
|
176
|
-
name: awesome_print
|
182
|
+
version: 1.1.0
|
177
183
|
requirement: !ruby/object:Gem::Requirement
|
178
184
|
none: false
|
179
185
|
requirements:
|
@@ -182,14 +188,14 @@ dependencies:
|
|
182
188
|
version: 1.1.0
|
183
189
|
type: :development
|
184
190
|
prerelease: false
|
191
|
+
- !ruby/object:Gem::Dependency
|
192
|
+
name: simplecov
|
185
193
|
version_requirements: !ruby/object:Gem::Requirement
|
186
194
|
none: false
|
187
195
|
requirements:
|
188
196
|
- - ~>
|
189
197
|
- !ruby/object:Gem::Version
|
190
|
-
version:
|
191
|
-
- !ruby/object:Gem::Dependency
|
192
|
-
name: simplecov
|
198
|
+
version: 0.7.1
|
193
199
|
requirement: !ruby/object:Gem::Requirement
|
194
200
|
none: false
|
195
201
|
requirements:
|
@@ -198,14 +204,14 @@ dependencies:
|
|
198
204
|
version: 0.7.1
|
199
205
|
type: :development
|
200
206
|
prerelease: false
|
207
|
+
- !ruby/object:Gem::Dependency
|
208
|
+
name: coveralls
|
201
209
|
version_requirements: !ruby/object:Gem::Requirement
|
202
210
|
none: false
|
203
211
|
requirements:
|
204
212
|
- - ~>
|
205
213
|
- !ruby/object:Gem::Version
|
206
|
-
version: 0.
|
207
|
-
- !ruby/object:Gem::Dependency
|
208
|
-
name: coveralls
|
214
|
+
version: 0.6.3
|
209
215
|
requirement: !ruby/object:Gem::Requirement
|
210
216
|
none: false
|
211
217
|
requirements:
|
@@ -214,12 +220,6 @@ dependencies:
|
|
214
220
|
version: 0.6.3
|
215
221
|
type: :development
|
216
222
|
prerelease: false
|
217
|
-
version_requirements: !ruby/object:Gem::Requirement
|
218
|
-
none: false
|
219
|
-
requirements:
|
220
|
-
- - ~>
|
221
|
-
- !ruby/object:Gem::Version
|
222
|
-
version: 0.6.3
|
223
223
|
description: A Ruby client for the PassaporteWeb REST API
|
224
224
|
email:
|
225
225
|
- rodrigo@pittlandia.net
|
@@ -245,6 +245,7 @@ files:
|
|
245
245
|
- lib/passaporte_web/helpers.rb
|
246
246
|
- lib/passaporte_web/http.rb
|
247
247
|
- lib/passaporte_web/identity.rb
|
248
|
+
- lib/passaporte_web/identity_service.rb
|
248
249
|
- lib/passaporte_web/identity_service_account.rb
|
249
250
|
- lib/passaporte_web/notification.rb
|
250
251
|
- lib/passaporte_web/service_account.rb
|
@@ -255,6 +256,7 @@ files:
|
|
255
256
|
- spec/passaporte_web/helpers_spec.rb
|
256
257
|
- spec/passaporte_web/http_spec.rb
|
257
258
|
- spec/passaporte_web/identity_service_account_spec.rb
|
259
|
+
- spec/passaporte_web/identity_service_spec.rb
|
258
260
|
- spec/passaporte_web/identity_spec.rb
|
259
261
|
- spec/passaporte_web/notification_spec.rb
|
260
262
|
- spec/passaporte_web/service_account_member_spec.rb
|
@@ -274,18 +276,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
274
276
|
- - ! '>='
|
275
277
|
- !ruby/object:Gem::Version
|
276
278
|
version: '0'
|
277
|
-
segments:
|
278
|
-
- 0
|
279
|
-
hash: -2500500601371462639
|
280
279
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
281
280
|
none: false
|
282
281
|
requirements:
|
283
282
|
- - ! '>='
|
284
283
|
- !ruby/object:Gem::Version
|
285
284
|
version: '0'
|
286
|
-
segments:
|
287
|
-
- 0
|
288
|
-
hash: -2500500601371462639
|
289
285
|
requirements: []
|
290
286
|
rubyforge_project:
|
291
287
|
rubygems_version: 1.8.25
|
@@ -297,9 +293,11 @@ test_files:
|
|
297
293
|
- spec/passaporte_web/helpers_spec.rb
|
298
294
|
- spec/passaporte_web/http_spec.rb
|
299
295
|
- spec/passaporte_web/identity_service_account_spec.rb
|
296
|
+
- spec/passaporte_web/identity_service_spec.rb
|
300
297
|
- spec/passaporte_web/identity_spec.rb
|
301
298
|
- spec/passaporte_web/notification_spec.rb
|
302
299
|
- spec/passaporte_web/service_account_member_spec.rb
|
303
300
|
- spec/passaporte_web/service_account_spec.rb
|
304
301
|
- spec/passaporte_web_spec.rb
|
305
302
|
- spec/spec_helper.rb
|
303
|
+
has_rdoc: true
|