omniauth-desk 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -2,4 +2,5 @@
2
2
  .bundle
3
3
  Gemfile.lock
4
4
  pkg/*
5
- coverage
5
+ coverage
6
+ .DS_Store
@@ -1,5 +1,6 @@
1
1
  require 'omniauth-oauth'
2
2
  require 'multi_json'
3
+ require 'uri'
3
4
 
4
5
  module OmniAuth
5
6
  module Strategies
@@ -44,6 +45,7 @@ module OmniAuth
44
45
 
45
46
  # Provide the "user" portion of the raw_info
46
47
  def user_info
48
+ puts raw_info
47
49
  @user_info ||= raw_info.nil? ? {} : raw_info['user']
48
50
  end
49
51
 
@@ -53,9 +55,18 @@ module OmniAuth
53
55
  options.client_options.site
54
56
  end
55
57
 
58
+ def uri?(uri)
59
+ uri = URI.parse(uri)
60
+ uri.scheme == 'https'
61
+ rescue URI::BadURIError
62
+ false
63
+ rescue URI::InvalidURIError
64
+ false
65
+ end
66
+
56
67
  def validate_site(site)
57
68
  if site and site != ''
58
- "https://#{site}.desk.com"
69
+ uri?(site) ? site : "https://#{site}.desk.com"
59
70
  end
60
71
  end
61
72
 
@@ -1,5 +1,5 @@
1
1
  module OmniAuth
2
2
  module Desk
3
- VERSION = "0.1.2"
3
+ VERSION = "0.1.3"
4
4
  end
5
5
  end
@@ -1,5 +1,4 @@
1
1
  require 'spec_helper'
2
- require 'omniauth-desk'
3
2
 
4
3
  describe OmniAuth::Strategies::Desk, :type => :strategy do
5
4
  def app
@@ -28,6 +27,30 @@ describe OmniAuth::Strategies::Desk, :type => :strategy do
28
27
  last_response.body.should =~ %r{<input[^>]*desk_site}
29
28
  end
30
29
  end
30
+
31
+ describe '/auth/desk with a site name' do
32
+ before do
33
+ @stub_devel = stub_request(:post, "https://devel.desk.com/oauth/request_token")
34
+ .to_return(:status => 200, :body => 'oauth_token=&oauth_token_secret=')
35
+ post '/auth/desk', { :desk_site => 'devel' }
36
+ end
37
+
38
+ it 'should have been requested' do
39
+ @stub_devel.should have_been_requested
40
+ end
41
+ end
42
+
43
+ describe '/auth/desk with a custom site name' do
44
+ before do
45
+ @stub_devel = stub_request(:post, "https://devel.desk.com/oauth/request_token")
46
+ .to_return(:status => 200, :body => 'oauth_token=&oauth_token_secret=')
47
+ post '/auth/desk', { :desk_site => 'https://devel.desk.com' }
48
+ end
49
+
50
+ it 'should have been requested' do
51
+ @stub_devel.should have_been_requested
52
+ end
53
+ end
31
54
 
32
55
  describe 'followed by /auth/desk/callback' do
33
56
  context 'successful' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniauth-desk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
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-06-26 00:00:00.000000000Z
12
+ date: 2012-11-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: omniauth
16
- requirement: &2166168760 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '1.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2166168760
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '1.0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: omniauth-oauth
27
- requirement: &2166167160 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ~>
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '1.0'
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *2166167160
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '1.0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: multi_json
38
- requirement: &2166164200 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ~>
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: 1.3.6
44
54
  type: :runtime
45
55
  prerelease: false
46
- version_requirements: *2166164200
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 1.3.6
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: rspec
49
- requirement: &2166159020 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ~>
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '2.7'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *2166159020
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: '2.7'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: rack-test
60
- requirement: &2166157120 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *2166157120
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: simplecov
71
- requirement: &2166155100 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ! '>='
@@ -76,10 +101,15 @@ dependencies:
76
101
  version: '0'
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *2166155100
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
80
110
  - !ruby/object:Gem::Dependency
81
111
  name: webmock
82
- requirement: &2166153360 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
83
113
  none: false
84
114
  requirements:
85
115
  - - ! '>='
@@ -87,7 +117,12 @@ dependencies:
87
117
  version: '0'
88
118
  type: :development
89
119
  prerelease: false
90
- version_requirements: *2166153360
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
91
126
  description: OmniAuth strategy for Desk.com
92
127
  email:
93
128
  - tstachl@salesforce.com
@@ -123,7 +158,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
123
158
  version: '0'
124
159
  segments:
125
160
  - 0
126
- hash: 2082149953503729504
161
+ hash: 4158205978148100644
127
162
  required_rubygems_version: !ruby/object:Gem::Requirement
128
163
  none: false
129
164
  requirements:
@@ -132,10 +167,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
132
167
  version: '0'
133
168
  segments:
134
169
  - 0
135
- hash: 2082149953503729504
170
+ hash: 4158205978148100644
136
171
  requirements: []
137
172
  rubyforge_project: omniauth-desk
138
- rubygems_version: 1.8.10
173
+ rubygems_version: 1.8.24
139
174
  signing_key:
140
175
  specification_version: 3
141
176
  summary: OmniAuth strategy for Desk.com