swd 0.2.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 252ca7c37d1cebf052d7e5c41917b5b5123a04e6
4
+ data.tar.gz: 549ca01faa4f2f50a6eb8278076877f9e88acc4e
5
+ SHA512:
6
+ metadata.gz: 20b3f7e56f29eb563c1cedb143ff9c41ad473d09973ff0cbc965148ee782f761beb8e9566b022e17693e4e5eedf0132a6010bf3397f66b9544a9ce8154c02648
7
+ data.tar.gz: 01476c9da0f885d64ee765566455c415c79e1e391d0356dd04c3e0e86623d358b56cc002a8ce33ca543be2088e1cb7d42e28b01d6f65f25195047b1059130c75
@@ -1,4 +1,4 @@
1
1
  rvm:
2
- - 1.8.7
3
- - 1.9.2
4
- - 1.9.3
2
+ - 1.9.3
3
+ - 2.0.0
4
+ - 2.1.2
@@ -1,7 +1,11 @@
1
- = OpenIDConnect
1
+ = SWD
2
2
 
3
3
  SWD (Simple Web Discovery) Client Library
4
4
 
5
+ NOTE:
6
+ SWD was designed to be the core of OpenID Connect Discovery, but it's replaced with WebFinger.
7
+ So I'm no longer supporting this gem.
8
+
5
9
  == Installation
6
10
 
7
11
  gem install swd
@@ -27,7 +31,7 @@ SWD (Simple Web Discovery) Client Library
27
31
  end
28
32
 
29
33
  == Note on Patches/Pull Requests
30
-
34
+
31
35
  * Fork the project.
32
36
  * Make your feature addition or bug fix.
33
37
  * Add tests for it. This is important so I don't break it in a
data/Rakefile CHANGED
@@ -1,25 +1,18 @@
1
- require 'bundler'
2
- Bundler::GemHelper.install_tasks
1
+ require 'bundler/gem_tasks'
3
2
 
4
3
  require 'rspec/core/rake_task'
5
4
  RSpec::Core::RakeTask.new(:spec)
6
5
 
7
- if RUBY_VERSION >= '1.9'
8
- namespace :cover_me do
9
- desc "Generates and opens code coverage report."
10
- task :report do
11
- require 'cover_me'
12
- CoverMe.complete!
13
- end
14
- end
15
- task :spec do
16
- Rake::Task['cover_me:report'].invoke
17
- end
18
- else
19
- RSpec::Core::RakeTask.new(:rcov) do |spec|
20
- spec.rcov = true
21
- spec.rcov_opts = ['-Ilib -Ispec --exclude spec,gems']
6
+ namespace :coverage do
7
+ desc 'Open coverage report'
8
+ task :report do
9
+ require 'simplecov'
10
+ `open '#{File.join SimpleCov.coverage_path, 'index.html'}'`
22
11
  end
23
12
  end
24
13
 
25
- task :default => :spec
14
+ task :spec do
15
+ Rake::Task[:'coverage:report'].invoke unless ENV['TRAVIS_RUBY_VERSION']
16
+ end
17
+
18
+ task default: :spec
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.1
1
+ 1.0.0
data/lib/swd.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'logger'
2
2
  require 'digest/md5'
3
3
  require 'json'
4
+ require 'active_support'
4
5
  require 'active_support/core_ext'
5
6
  require 'httpclient'
6
7
  require 'attr_required'
@@ -18,9 +18,7 @@ module WebMockHelper
18
18
 
19
19
  def request_for(options = {})
20
20
  request = {}
21
- if options[:query]
22
- request[:query] = options[:query]
23
- end
21
+ request[:query] = options[:query]
24
22
  request
25
23
  end
26
24
 
@@ -1,8 +1,17 @@
1
- if RUBY_VERSION >= '1.9'
2
- require 'cover_me'
1
+ require 'simplecov'
2
+
3
+ SimpleCov.start do
4
+ add_filter 'spec'
3
5
  end
4
6
 
5
7
  require 'rspec'
8
+ require 'rspec/its'
6
9
  require 'swd'
7
10
 
11
+ RSpec.configure do |config|
12
+ config.expect_with :rspec do |c|
13
+ c.syntax = [:should, :expect]
14
+ end
15
+ end
16
+
8
17
  require 'helpers/webmock_helper'
@@ -8,7 +8,7 @@ describe SWD::Debugger::RequestFilter do
8
8
 
9
9
  describe '#filter_request' do
10
10
  it 'should log request' do
11
- SWD.logger.should_receive(:info).with(
11
+ expect(SWD.logger).to receive(:info).with(
12
12
  "======= [SWD] HTTP REQUEST STARTED =======\n" +
13
13
  request.dump
14
14
  )
@@ -18,7 +18,7 @@ describe SWD::Debugger::RequestFilter do
18
18
 
19
19
  describe '#filter_response' do
20
20
  it 'should log response' do
21
- SWD.logger.should_receive(:info).with(
21
+ expect(SWD.logger).to receive(:info).with(
22
22
  "--------------------------------------------------\n" +
23
23
  response.dump +
24
24
  "\n======= [SWD] HTTP REQUEST FINISHED ======="
@@ -38,7 +38,7 @@ describe SWD::Resource do
38
38
 
39
39
  context 'when redirected' do
40
40
  it 'should follow redirect' do
41
- resource.should_receive(:redirect_to).with(
41
+ expect(resource).to receive(:redirect_to).with(
42
42
  'https://swd.proseware.com/swd_server', nil
43
43
  )
44
44
  mock_json resource.endpoint, 'redirect' do
@@ -70,41 +70,57 @@ describe SWD::Resource do
70
70
  end
71
71
 
72
72
  describe 'error handling' do
73
- before do
73
+ before(:all) do
74
74
  module SWD
75
75
  class << self
76
76
  def http_client_with_cached
77
77
  @http_client ||= http_client_without_cached
78
78
  end
79
79
  alias_method_chain :http_client, :cached
80
+
81
+ def clear_http_client!
82
+ @http_client = nil
83
+ end
84
+ end
85
+ end
86
+ end
87
+
88
+ after(:all) do
89
+ module SWD
90
+ class << self
91
+ def http_client_with_cache_cleared
92
+ @http_client = nil
93
+ http_client_without_cache_cleared
94
+ end
95
+ alias_method_chain :http_client, :cache_cleared
80
96
  end
81
97
  end
82
98
  end
83
99
 
84
100
  context 'when invalid SSL cert' do
85
101
  it do
86
- SWD.http_client.should_receive(:get_content).and_raise(OpenSSL::SSL::SSLError)
102
+ expect(SWD.http_client).to receive(:get_content).and_raise(OpenSSL::SSL::SSLError)
87
103
  expect { res = resource.discover! }.to raise_error SWD::Exception
88
104
  end
89
105
  end
90
106
 
91
107
  context 'when invalid JSON' do
92
108
  it do
93
- SWD.http_client.should_receive(:get_content).and_raise(JSON::ParserError)
109
+ expect(SWD.http_client).to receive(:get_content).and_raise(JSON::ParserError)
94
110
  expect { res = resource.discover! }.to raise_error SWD::Exception
95
111
  end
96
112
  end
97
113
 
98
114
  context 'when SocketError' do
99
115
  it do
100
- SWD.http_client.should_receive(:get_content).and_raise(SocketError)
116
+ expect(SWD.http_client).to receive(:get_content).and_raise(SocketError)
101
117
  expect { res = resource.discover! }.to raise_error SWD::Exception
102
118
  end
103
119
  end
104
120
 
105
121
  context 'when BadResponseError without response' do
106
122
  it do
107
- SWD.http_client.should_receive(:get_content).and_raise(HTTPClient::BadResponseError.new(''))
123
+ expect(SWD.http_client).to receive(:get_content).and_raise(HTTPClient::BadResponseError.new(''))
108
124
  expect { res = resource.discover! }.to raise_error SWD::Exception
109
125
  end
110
126
  end
@@ -4,7 +4,7 @@ describe SWD do
4
4
  after { SWD.debugging = false }
5
5
 
6
6
  its(:logger) { should be_a Logger }
7
- its(:debugging?) { should be_false }
7
+ its(:debugging?) { should == false }
8
8
  its(:cache) { should be_a SWD::Cache }
9
9
 
10
10
  describe '#discover!' do
@@ -84,23 +84,23 @@ describe SWD do
84
84
 
85
85
  describe '.debug!' do
86
86
  before { SWD.debug! }
87
- its(:debugging?) { should be_true }
87
+ its(:debugging?) { should == true }
88
88
  end
89
89
 
90
90
  describe '.debug' do
91
91
  it 'should enable debugging within given block' do
92
92
  SWD.debug do
93
- SWD.debugging?.should be_true
93
+ SWD.debugging?.should == true
94
94
  end
95
- SWD.debugging?.should be_false
95
+ SWD.debugging?.should == false
96
96
  end
97
97
 
98
98
  it 'should not force disable debugging' do
99
99
  SWD.debug!
100
100
  SWD.debug do
101
- SWD.debugging?.should be_true
101
+ SWD.debugging?.should == true
102
102
  end
103
- SWD.debugging?.should be_true
103
+ SWD.debugging?.should == true
104
104
  end
105
105
  end
106
106
 
@@ -11,16 +11,13 @@ Gem::Specification.new do |s|
11
11
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
12
12
  s.require_paths = ["lib"]
13
13
  s.add_runtime_dependency "json", ">= 1.4.3"
14
- s.add_runtime_dependency "httpclient", ">= 2.2.1"
14
+ s.add_runtime_dependency "httpclient", ">= 2.4"
15
15
  s.add_runtime_dependency "activesupport", ">= 3"
16
16
  s.add_runtime_dependency "i18n"
17
17
  s.add_runtime_dependency "attr_required", ">= 0.0.5"
18
- s.add_development_dependency "rake", ">= 0.8"
19
- if RUBY_VERSION >= '1.9'
20
- s.add_development_dependency "cover_me", ">= 1.2.0"
21
- else
22
- s.add_development_dependency "rcov", ">= 0.9"
23
- end
24
- s.add_development_dependency "rspec", ">= 2"
25
- s.add_development_dependency "webmock", ">= 1.6.2"
18
+ s.add_development_dependency "rake"
19
+ s.add_development_dependency "rspec"
20
+ s.add_development_dependency 'rspec-its'
21
+ s.add_development_dependency "webmock"
22
+ s.add_development_dependency 'simplecov'
26
23
  end
metadata CHANGED
@@ -1,160 +1,155 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swd
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
5
- prerelease:
4
+ version: 1.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - nov matake
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-10-03 00:00:00.000000000 Z
11
+ date: 2014-12-22 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: json
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: 1.4.3
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: 1.4.3
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: httpclient
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
- version: 2.2.1
33
+ version: '2.4'
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
- version: 2.2.1
40
+ version: '2.4'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: activesupport
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '3'
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '3'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: i18n
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
61
  version: '0'
70
62
  type: :runtime
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
68
  version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: attr_required
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: 0.0.5
86
76
  type: :runtime
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
82
  version: 0.0.5
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: rake
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - ">="
100
88
  - !ruby/object:Gem::Version
101
- version: '0.8'
89
+ version: '0'
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - ">="
108
95
  - !ruby/object:Gem::Version
109
- version: '0.8'
96
+ version: '0'
110
97
  - !ruby/object:Gem::Dependency
111
- name: cover_me
98
+ name: rspec
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - ">="
116
102
  - !ruby/object:Gem::Version
117
- version: 1.2.0
103
+ version: '0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - ">="
124
109
  - !ruby/object:Gem::Version
125
- version: 1.2.0
110
+ version: '0'
126
111
  - !ruby/object:Gem::Dependency
127
- name: rspec
112
+ name: rspec-its
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - ">="
132
116
  - !ruby/object:Gem::Version
133
- version: '2'
117
+ version: '0'
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - ">="
140
123
  - !ruby/object:Gem::Version
141
- version: '2'
124
+ version: '0'
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: webmock
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
- - - ! '>='
129
+ - - ">="
148
130
  - !ruby/object:Gem::Version
149
- version: 1.6.2
131
+ version: '0'
150
132
  type: :development
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
- - - ! '>='
136
+ - - ">="
156
137
  - !ruby/object:Gem::Version
157
- version: 1.6.2
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: simplecov
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
158
153
  description: SWD (Simple Web Discovery) Client Library
159
154
  email:
160
155
  - nov@matake.jp
@@ -162,11 +157,10 @@ executables: []
162
157
  extensions: []
163
158
  extra_rdoc_files: []
164
159
  files:
165
- - .gitignore
166
- - .rspec
167
- - .travis.yml
160
+ - ".gitignore"
161
+ - ".rspec"
162
+ - ".travis.yml"
168
163
  - Gemfile
169
- - Gemfile.lock
170
164
  - LICENSE
171
165
  - README.rdoc
172
166
  - Rakefile
@@ -192,27 +186,26 @@ files:
192
186
  - swd.gemspec
193
187
  homepage: https://github.com/nov/swd
194
188
  licenses: []
189
+ metadata: {}
195
190
  post_install_message:
196
191
  rdoc_options: []
197
192
  require_paths:
198
193
  - lib
199
194
  required_ruby_version: !ruby/object:Gem::Requirement
200
- none: false
201
195
  requirements:
202
- - - ! '>='
196
+ - - ">="
203
197
  - !ruby/object:Gem::Version
204
198
  version: '0'
205
199
  required_rubygems_version: !ruby/object:Gem::Requirement
206
- none: false
207
200
  requirements:
208
- - - ! '>='
201
+ - - ">="
209
202
  - !ruby/object:Gem::Version
210
203
  version: '0'
211
204
  requirements: []
212
205
  rubyforge_project:
213
- rubygems_version: 1.8.24
206
+ rubygems_version: 2.2.2
214
207
  signing_key:
215
- specification_version: 3
208
+ specification_version: 4
216
209
  summary: SWD (Simple Web Discovery) Client Library
217
210
  test_files:
218
211
  - spec/helpers/webmock_helper.rb
@@ -1,54 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- swd (0.1.2)
5
- activesupport (>= 3)
6
- attr_required (>= 0.0.5)
7
- httpclient (>= 2.2.1)
8
- i18n
9
- json (>= 1.4.3)
10
-
11
- GEM
12
- remote: http://rubygems.org/
13
- specs:
14
- activesupport (3.2.8)
15
- i18n (~> 0.6)
16
- multi_json (~> 1.0)
17
- addressable (2.3.2)
18
- attr_required (0.0.5)
19
- configatron (2.9.1)
20
- yamler (>= 0.1.0)
21
- cover_me (1.2.0)
22
- configatron
23
- hashie
24
- crack (0.3.1)
25
- diff-lcs (1.1.3)
26
- hashie (1.2.0)
27
- httpclient (2.2.7)
28
- i18n (0.6.1)
29
- json (1.7.5)
30
- multi_json (1.3.6)
31
- rake (0.9.2.2)
32
- rspec (2.11.0)
33
- rspec-core (~> 2.11.0)
34
- rspec-expectations (~> 2.11.0)
35
- rspec-mocks (~> 2.11.0)
36
- rspec-core (2.11.1)
37
- rspec-expectations (2.11.3)
38
- diff-lcs (~> 1.1.3)
39
- rspec-mocks (2.11.3)
40
- webmock (1.8.11)
41
- addressable (>= 2.2.7)
42
- crack (>= 0.1.7)
43
- yamler (0.1.0)
44
-
45
- PLATFORMS
46
- ruby
47
-
48
- DEPENDENCIES
49
- cover_me (>= 1.2.0)
50
- jruby-openssl (>= 0.7)
51
- rake (>= 0.8)
52
- rspec (>= 2)
53
- swd!
54
- webmock (>= 1.6.2)