OpenAuth2 0.0.1 → 0.0.2
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/Rakefile +1 -1
- data/Readme.markdown +47 -0
- data/lib/open_auth2/token.rb +0 -1
- data/lib/open_auth2/version.rb +1 -1
- data/open_auth2.gemspec +6 -0
- data/spec/config_spec.rb +1 -4
- data/spec/token_spec.rb +1 -1
- metadata +27 -16
data/Rakefile
CHANGED
|
@@ -86,7 +86,7 @@ task :release => :build do
|
|
|
86
86
|
sh "git tag v#{version}"
|
|
87
87
|
sh "git push origin master"
|
|
88
88
|
sh "git push origin v#{version}"
|
|
89
|
-
sh "gem push pkg
|
|
89
|
+
sh "gem push pkg/OpenAuth2-#{version}.gem"
|
|
90
90
|
end
|
|
91
91
|
|
|
92
92
|
desc "Build #{gem_file} into the pkg directory"
|
data/Readme.markdown
CHANGED
|
@@ -144,6 +144,46 @@ client.run_request(verb: :get, path: path, body: nil, header: nil)
|
|
|
144
144
|
client.connection.run_request(:get, path, nil, nil)
|
|
145
145
|
```
|
|
146
146
|
|
|
147
|
+
## Plugins
|
|
148
|
+
|
|
149
|
+
OpenAuth2 comes with inbuilt support for Google and Facebook, but its trivial to add new plugins.
|
|
150
|
+
|
|
151
|
+
There are only three requirements:
|
|
152
|
+
|
|
153
|
+
1. Should be under right namespace (OpenAuth2::Provider)
|
|
154
|
+
1. Contains Options hash
|
|
155
|
+
1. Contains #parse class method
|
|
156
|
+
|
|
157
|
+
### Foursquare Example
|
|
158
|
+
|
|
159
|
+
```ruby
|
|
160
|
+
module OpenAuth2
|
|
161
|
+
module Provider
|
|
162
|
+
module Facebook
|
|
163
|
+
|
|
164
|
+
# Provider::Base contains keys of various accepted
|
|
165
|
+
# Options, while Provider::Default contains the default options and
|
|
166
|
+
# their values. You can however override them here.
|
|
167
|
+
#
|
|
168
|
+
Options = {
|
|
169
|
+
:authorize_url => '',
|
|
170
|
+
:code_url => '',
|
|
171
|
+
:refresh_token_grant_name => '',
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
def self.parse(config, response_body)
|
|
175
|
+
# parse the response body
|
|
176
|
+
access_token = response_body.gsub('access_token=', '')
|
|
177
|
+
|
|
178
|
+
# update config to reflect new information
|
|
179
|
+
config.access_token = access_token
|
|
180
|
+
config.token_arrived_at = Time.now
|
|
181
|
+
end
|
|
182
|
+
end
|
|
183
|
+
end
|
|
184
|
+
end
|
|
185
|
+
```
|
|
186
|
+
|
|
147
187
|
## Google example
|
|
148
188
|
|
|
149
189
|
```ruby
|
|
@@ -199,6 +239,13 @@ client.run_request(:verb => :post,
|
|
|
199
239
|
* URI
|
|
200
240
|
* Json
|
|
201
241
|
|
|
242
|
+
## Supported Versions
|
|
243
|
+
|
|
244
|
+
* MRI 1.9.2
|
|
245
|
+
* MRI 1.9.3
|
|
246
|
+
* jRuby (jruby --1.9 rspec)
|
|
247
|
+
* Rubinius 2.0.0dev (RBXOPT=-X19 rbx- S rspec)
|
|
248
|
+
|
|
202
249
|
## Install
|
|
203
250
|
|
|
204
251
|
$ gem install open_auth2
|
data/lib/open_auth2/token.rb
CHANGED
data/lib/open_auth2/version.rb
CHANGED
data/open_auth2.gemspec
CHANGED
|
@@ -22,6 +22,12 @@ Gem::Specification.new do |s|
|
|
|
22
22
|
|
|
23
23
|
s.add_dependency 'faraday', '~> 0.7'
|
|
24
24
|
s.add_dependency 'activesupport', '~> 3.2'
|
|
25
|
+
s.add_dependency 'json'
|
|
26
|
+
|
|
27
|
+
if RUBY_PLATFORM == 'java'
|
|
28
|
+
s.add_dependency 'json'
|
|
29
|
+
s.add_dependency 'jruby-openssl'
|
|
30
|
+
end
|
|
25
31
|
|
|
26
32
|
s.add_development_dependency 'rake', '~> 0.9'
|
|
27
33
|
s.add_development_dependency 'rspec', '~> 2.8'
|
data/spec/config_spec.rb
CHANGED
|
@@ -78,12 +78,9 @@ describe OpenAuth2::Config do
|
|
|
78
78
|
# mimicking beh. of users including their own provider
|
|
79
79
|
module OpenAuth2::Provider module UserDefined end end
|
|
80
80
|
|
|
81
|
-
providers = [:Default, :Facebook, :Google, :UserDefined]
|
|
82
|
-
error_message = "Known Providers: #{providers}"
|
|
83
|
-
|
|
84
81
|
expect do
|
|
85
82
|
subject.provider = :unknown
|
|
86
|
-
end.to raise_error(OpenAuth2::UnknownProvider
|
|
83
|
+
end.to raise_error(OpenAuth2::UnknownProvider)
|
|
87
84
|
end
|
|
88
85
|
end
|
|
89
86
|
|
data/spec/token_spec.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: OpenAuth2
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.2
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,11 +9,11 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2012-03-
|
|
12
|
+
date: 2012-03-20 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: faraday
|
|
16
|
-
requirement: &
|
|
16
|
+
requirement: &70136571467600 !ruby/object:Gem::Requirement
|
|
17
17
|
none: false
|
|
18
18
|
requirements:
|
|
19
19
|
- - ~>
|
|
@@ -21,10 +21,10 @@ dependencies:
|
|
|
21
21
|
version: '0.7'
|
|
22
22
|
type: :runtime
|
|
23
23
|
prerelease: false
|
|
24
|
-
version_requirements: *
|
|
24
|
+
version_requirements: *70136571467600
|
|
25
25
|
- !ruby/object:Gem::Dependency
|
|
26
26
|
name: activesupport
|
|
27
|
-
requirement: &
|
|
27
|
+
requirement: &70136571467080 !ruby/object:Gem::Requirement
|
|
28
28
|
none: false
|
|
29
29
|
requirements:
|
|
30
30
|
- - ~>
|
|
@@ -32,10 +32,21 @@ dependencies:
|
|
|
32
32
|
version: '3.2'
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
|
-
version_requirements: *
|
|
35
|
+
version_requirements: *70136571467080
|
|
36
|
+
- !ruby/object:Gem::Dependency
|
|
37
|
+
name: json
|
|
38
|
+
requirement: &70136571466700 !ruby/object:Gem::Requirement
|
|
39
|
+
none: false
|
|
40
|
+
requirements:
|
|
41
|
+
- - ! '>='
|
|
42
|
+
- !ruby/object:Gem::Version
|
|
43
|
+
version: '0'
|
|
44
|
+
type: :runtime
|
|
45
|
+
prerelease: false
|
|
46
|
+
version_requirements: *70136571466700
|
|
36
47
|
- !ruby/object:Gem::Dependency
|
|
37
48
|
name: rake
|
|
38
|
-
requirement: &
|
|
49
|
+
requirement: &70136571466140 !ruby/object:Gem::Requirement
|
|
39
50
|
none: false
|
|
40
51
|
requirements:
|
|
41
52
|
- - ~>
|
|
@@ -43,10 +54,10 @@ dependencies:
|
|
|
43
54
|
version: '0.9'
|
|
44
55
|
type: :development
|
|
45
56
|
prerelease: false
|
|
46
|
-
version_requirements: *
|
|
57
|
+
version_requirements: *70136571466140
|
|
47
58
|
- !ruby/object:Gem::Dependency
|
|
48
59
|
name: rspec
|
|
49
|
-
requirement: &
|
|
60
|
+
requirement: &70136571465600 !ruby/object:Gem::Requirement
|
|
50
61
|
none: false
|
|
51
62
|
requirements:
|
|
52
63
|
- - ~>
|
|
@@ -54,10 +65,10 @@ dependencies:
|
|
|
54
65
|
version: '2.8'
|
|
55
66
|
type: :development
|
|
56
67
|
prerelease: false
|
|
57
|
-
version_requirements: *
|
|
68
|
+
version_requirements: *70136571465600
|
|
58
69
|
- !ruby/object:Gem::Dependency
|
|
59
70
|
name: vcr
|
|
60
|
-
requirement: &
|
|
71
|
+
requirement: &70136571465120 !ruby/object:Gem::Requirement
|
|
61
72
|
none: false
|
|
62
73
|
requirements:
|
|
63
74
|
- - ~>
|
|
@@ -65,10 +76,10 @@ dependencies:
|
|
|
65
76
|
version: '1.11'
|
|
66
77
|
type: :development
|
|
67
78
|
prerelease: false
|
|
68
|
-
version_requirements: *
|
|
79
|
+
version_requirements: *70136571465120
|
|
69
80
|
- !ruby/object:Gem::Dependency
|
|
70
81
|
name: fakeweb
|
|
71
|
-
requirement: &
|
|
82
|
+
requirement: &70136571464540 !ruby/object:Gem::Requirement
|
|
72
83
|
none: false
|
|
73
84
|
requirements:
|
|
74
85
|
- - ~>
|
|
@@ -76,10 +87,10 @@ dependencies:
|
|
|
76
87
|
version: '1.3'
|
|
77
88
|
type: :development
|
|
78
89
|
prerelease: false
|
|
79
|
-
version_requirements: *
|
|
90
|
+
version_requirements: *70136571464540
|
|
80
91
|
- !ruby/object:Gem::Dependency
|
|
81
92
|
name: timecop
|
|
82
|
-
requirement: &
|
|
93
|
+
requirement: &70136571463920 !ruby/object:Gem::Requirement
|
|
83
94
|
none: false
|
|
84
95
|
requirements:
|
|
85
96
|
- - ~>
|
|
@@ -87,7 +98,7 @@ dependencies:
|
|
|
87
98
|
version: '0.3'
|
|
88
99
|
type: :development
|
|
89
100
|
prerelease: false
|
|
90
|
-
version_requirements: *
|
|
101
|
+
version_requirements: *70136571463920
|
|
91
102
|
description: OpenAuth2 is a thin OAuth2 wrapper written on top of Faraday in Ruby.
|
|
92
103
|
email:
|
|
93
104
|
- senthil196@gmail.com
|