geocerts 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,8 +1,19 @@
1
1
  *.gem
2
+ *.rbc
2
3
  .bundle
3
- *.sw?
4
- .DS_Store
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
5
9
  coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
6
13
  rdoc
7
- pkg/*
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
18
+
8
19
  test/config/test_credentials.yml
@@ -0,0 +1,17 @@
1
+ # geocerts
2
+
3
+ ## [HEAD][head] / unreleased
4
+
5
+ No significant changes.
6
+
7
+ ## [1.0.1][v1.0.1] / 2012-07-09
8
+
9
+ * Upgrade the libxml-ruby dependency from ~>1.1.0 to ~>2.0 for Ruby 1.9 support.
10
+
11
+ ## 1.0.0 / 2011-01-12
12
+
13
+ * First, stable release.
14
+
15
+
16
+ [head]: https://github.com/geocerts/geocerts/compare/v1.0.1...master
17
+ [v1.0.1]: https://github.com/geocerts/geocerts/compare/v1.0.0...v1.0.1
data/Gemfile CHANGED
@@ -1,2 +1,2 @@
1
- source "http://rubygems.org"
1
+ source 'http://rubygems.org'
2
2
  gemspec
@@ -0,0 +1,92 @@
1
+ # GeoCerts
2
+
3
+ The GeoCerts library provides a Ruby interface to the GeoCerts REST API. This API allows
4
+ you to manage (lookup, create, and verify) your GeoCerts orders, events, certificates, and
5
+ more.
6
+
7
+ ## Installation
8
+
9
+ Add the following line to your application's Gemfile:
10
+
11
+ ```ruby
12
+ gem 'geocerts'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ ```bash
18
+ $ bundle
19
+ ```
20
+
21
+ Or, install it directly with:
22
+
23
+ ```bash
24
+ $ gem install geocerts
25
+ ```
26
+
27
+ ## Usage
28
+
29
+ ```ruby
30
+ require 'geocerts'
31
+
32
+ GeoCerts.partner_id = 'example'
33
+ GeoCerts.api_token = 'abd123DEfg.....'
34
+
35
+ begin
36
+ GeoCerts::Order.all # => [ GeoCerts::Order, GeoCerts::Order, ... ]
37
+ GeoCerts::Order.find(12345).certificate # => GeoCerts::Certificate
38
+ GeoCerts::Product.all # => [ GeoCerts::Product, GeoCerts::Product, ... ]
39
+
40
+ product = GeoCerts::Product.find('Q')
41
+ product.user_agreement # => GeoCerts::Agreement
42
+ puts product.user_agreement.text # => "...."
43
+
44
+ # Validate the requested order details
45
+ validated_order = GeoCerts::Order.validate({
46
+ :csr => GeoCerts::CSR.new(:body => "-----BEGIN CERTIFICATE REQUEST-----\n...."),
47
+ :product => product
48
+ })
49
+ validated_order.renewal_information.indicator # => true
50
+ validated_order.renewal_information.months # => 1
51
+ validated_order.csr.common_name # => 'www.example.com'
52
+ validated_order.csr.state # => 'Georgia'
53
+ validated_order.total_price # => 99.00
54
+
55
+ # Create a new Order
56
+ order = GeoCerts::Order.new({
57
+ :csr => GeoCerts::CSR.new(:body => "-----BEGIN CERTIFICATE REQUEST-----\n...."),
58
+ :product => product,
59
+ :years => 3,
60
+ :licenses => 1
61
+ }).save
62
+
63
+ rescue GeoCerts::Exception
64
+ puts $!.to_s
65
+ end
66
+ ```
67
+
68
+ ## Exceptions
69
+
70
+ Since this library does interface with an external system, there is a much greater risk of
71
+ exceptional situations. As such, this library attempts to wrap all raised exceptions (due
72
+ to authorization, connection, or other unforeseen issues) in the GeoCerts::Exception object.
73
+ All exceptions raised from within this library should inherit from this class.
74
+
75
+ Exceptions which are raised after successful connections, due to server or request issues,
76
+ will be derived from GeoCerts::ExceptionWithResponse. This object also inherits from
77
+ GeoCerts::Exception, but contains the actual response details (including HTTP status code,
78
+ headers, and response body).
79
+
80
+ ## Contributing
81
+
82
+ 1. Fork it
83
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
84
+ 3. Commit your changes (`git commit -am 'Added some feature'`)
85
+ 4. Push to the branch (`git push origin my-new-feature`)
86
+ 5. Create new Pull Request
87
+
88
+ == Copyright
89
+
90
+ Copyright (c) 2009 [GeoCerts Inc.][geocerts]. See LICENSE for details.
91
+
92
+ [geocerts]: http://www.geocerts.com/
data/Rakefile CHANGED
@@ -1,30 +1,21 @@
1
- require 'bundler'
2
- Bundler::GemHelper.install_tasks
3
-
1
+ #!/usr/bin/env rake
2
+ require 'bundler/gem_tasks'
4
3
  require 'rake/testtask'
5
- Rake::TestTask.new(:test) do |test|
6
- test.libs << 'lib' << 'test'
7
- test.pattern = 'test/**/*_test.rb'
8
- test.verbose = true
9
- end
10
4
 
11
5
  begin
12
- require 'rcov/rcovtask'
13
- Rcov::RcovTask.new do |test|
14
- test.libs << 'test'
15
- test.pattern = 'test/**/*_test.rb'
16
- test.verbose = true
17
- end
6
+ require 'rdoc/task'
18
7
  rescue LoadError
19
- task :rcov do
20
- abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
21
- end
8
+ require 'rake/rdoctask'
22
9
  end
23
10
 
24
-
25
11
  task :default => :test
26
12
 
27
- require 'rake/rdoctask'
13
+ Rake::TestTask.new(:test) do |test|
14
+ test.libs << 'lib' << 'test'
15
+ test.pattern = 'test/**/*_test.rb'
16
+ test.verbose = true
17
+ end
18
+
28
19
  Rake::RDocTask.new do |rdoc|
29
20
  if File.exist?('VERSION.yml')
30
21
  config = YAML.load(File.read('VERSION.yml'))
@@ -1,6 +1,5 @@
1
1
  # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "geo_certs/version"
2
+ require File.expand_path("../lib/geo_certs/version", __FILE__)
4
3
 
5
4
  Gem::Specification.new do |s|
6
5
  s.name = "geocerts"
@@ -12,11 +11,10 @@ Gem::Specification.new do |s|
12
11
  s.summary = %q{A Ruby library for interfacing with the GeoCerts REST API}
13
12
  s.description = %q{A Ruby library for interfacing with the GeoCerts REST API}
14
13
 
15
- s.rubyforge_project = "geocerts"
16
-
17
- s.files = `git ls-files`.split("\n")
18
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
14
+ s.files = `git ls-files`.split($\)
15
+ s.executables = s.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
16
+ s.test_files = s.files.grep(%r{^(test|spec|features)/})
17
+ s.name = "geocerts"
20
18
  s.require_paths = ["lib"]
21
19
 
22
20
  s.add_development_dependency 'shoulda', '~>2.11.0'
@@ -26,5 +24,5 @@ Gem::Specification.new do |s|
26
24
  s.add_development_dependency 'fakeweb', '~>1.3.0'
27
25
 
28
26
  s.add_dependency 'relax', '~>0.1.0'
29
- s.add_dependency 'libxml-ruby', '~>1.1.0'
27
+ s.add_dependency 'libxml-ruby', '~>2.0'
30
28
  end
@@ -1,3 +1,3 @@
1
1
  module GeoCerts
2
- VERSION = '1.0.0'
2
+ VERSION = '1.0.1'
3
3
  end
@@ -1,8 +1,5 @@
1
- $:.unshift(File.expand_path('..', __FILE__))
2
- $:.unshift(File.expand_path('../../lib', __FILE__))
3
-
4
- require 'bundler'
5
- Bundler.setup
1
+ require 'rubygems'
2
+ require 'bundler/setup'
6
3
 
7
4
  require 'geo_certs'
8
5
  require 'shoulda'
metadata CHANGED
@@ -1,151 +1,140 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: geocerts
3
- version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease: false
6
- segments:
7
- - 1
8
- - 0
9
- - 0
10
- version: 1.0.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.1
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - GeoCerts, Inc.
14
9
  autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2011-01-12 00:00:00 -05:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
12
+ date: 2012-07-10 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
22
15
  name: shoulda
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
25
17
  none: false
26
- requirements:
18
+ requirements:
27
19
  - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 35
30
- segments:
31
- - 2
32
- - 11
33
- - 0
20
+ - !ruby/object:Gem::Version
34
21
  version: 2.11.0
35
22
  type: :development
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: factory_girl
39
23
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
41
25
  none: false
42
- requirements:
26
+ requirements:
43
27
  - - ~>
44
- - !ruby/object:Gem::Version
45
- hash: 27
46
- segments:
47
- - 1
48
- - 3
49
- - 0
28
+ - !ruby/object:Gem::Version
29
+ version: 2.11.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: factory_girl
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ~>
36
+ - !ruby/object:Gem::Version
50
37
  version: 1.3.0
51
38
  type: :development
52
- version_requirements: *id002
53
- - !ruby/object:Gem::Dependency
54
- name: mocha
55
39
  prerelease: false
56
- requirement: &id003 !ruby/object:Gem::Requirement
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: 1.3.0
46
+ - !ruby/object:Gem::Dependency
47
+ name: mocha
48
+ requirement: !ruby/object:Gem::Requirement
57
49
  none: false
58
- requirements:
50
+ requirements:
59
51
  - - ~>
60
- - !ruby/object:Gem::Version
61
- hash: 59
62
- segments:
63
- - 0
64
- - 9
65
- - 0
52
+ - !ruby/object:Gem::Version
66
53
  version: 0.9.0
67
54
  type: :development
68
- version_requirements: *id003
69
- - !ruby/object:Gem::Dependency
70
- name: vcr
71
55
  prerelease: false
72
- requirement: &id004 !ruby/object:Gem::Requirement
56
+ version_requirements: !ruby/object:Gem::Requirement
73
57
  none: false
74
- requirements:
58
+ requirements:
75
59
  - - ~>
76
- - !ruby/object:Gem::Version
77
- hash: 3
78
- segments:
79
- - 1
80
- - 5
81
- - 0
60
+ - !ruby/object:Gem::Version
61
+ version: 0.9.0
62
+ - !ruby/object:Gem::Dependency
63
+ name: vcr
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
82
69
  version: 1.5.0
83
70
  type: :development
84
- version_requirements: *id004
85
- - !ruby/object:Gem::Dependency
86
- name: fakeweb
87
71
  prerelease: false
88
- requirement: &id005 !ruby/object:Gem::Requirement
72
+ version_requirements: !ruby/object:Gem::Requirement
89
73
  none: false
90
- requirements:
74
+ requirements:
91
75
  - - ~>
92
- - !ruby/object:Gem::Version
93
- hash: 27
94
- segments:
95
- - 1
96
- - 3
97
- - 0
76
+ - !ruby/object:Gem::Version
77
+ version: 1.5.0
78
+ - !ruby/object:Gem::Dependency
79
+ name: fakeweb
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
98
85
  version: 1.3.0
99
86
  type: :development
100
- version_requirements: *id005
101
- - !ruby/object:Gem::Dependency
102
- name: relax
103
87
  prerelease: false
104
- requirement: &id006 !ruby/object:Gem::Requirement
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 1.3.0
94
+ - !ruby/object:Gem::Dependency
95
+ name: relax
96
+ requirement: !ruby/object:Gem::Requirement
105
97
  none: false
106
- requirements:
98
+ requirements:
107
99
  - - ~>
108
- - !ruby/object:Gem::Version
109
- hash: 27
110
- segments:
111
- - 0
112
- - 1
113
- - 0
100
+ - !ruby/object:Gem::Version
114
101
  version: 0.1.0
115
102
  type: :runtime
116
- version_requirements: *id006
117
- - !ruby/object:Gem::Dependency
118
- name: libxml-ruby
119
103
  prerelease: false
120
- requirement: &id007 !ruby/object:Gem::Requirement
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 0.1.0
110
+ - !ruby/object:Gem::Dependency
111
+ name: libxml-ruby
112
+ requirement: !ruby/object:Gem::Requirement
121
113
  none: false
122
- requirements:
114
+ requirements:
123
115
  - - ~>
124
- - !ruby/object:Gem::Version
125
- hash: 19
126
- segments:
127
- - 1
128
- - 1
129
- - 0
130
- version: 1.1.0
116
+ - !ruby/object:Gem::Version
117
+ version: '2.0'
131
118
  type: :runtime
132
- version_requirements: *id007
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: '2.0'
133
126
  description: A Ruby library for interfacing with the GeoCerts REST API
134
- email:
127
+ email:
135
128
  - sslsupport@geocerts.com
136
129
  executables: []
137
-
138
130
  extensions: []
139
-
140
131
  extra_rdoc_files: []
141
-
142
- files:
143
- - .document
132
+ files:
144
133
  - .gitignore
134
+ - CHANGELOG.markdown
145
135
  - Gemfile
146
- - Gemfile.lock
147
136
  - LICENSE
148
- - README.rdoc
137
+ - README.markdown
149
138
  - Rakefile
150
139
  - autotest/discover.rb
151
140
  - geocerts.gemspec
@@ -218,41 +207,31 @@ files:
218
207
  - test/units/order/renewal_information_test.rb
219
208
  - test/units/order_test.rb
220
209
  - test/units/product_test.rb
221
- has_rdoc: true
222
210
  homepage: http://www.geocerts.com/
223
211
  licenses: []
224
-
225
212
  post_install_message:
226
213
  rdoc_options: []
227
-
228
- require_paths:
214
+ require_paths:
229
215
  - lib
230
- required_ruby_version: !ruby/object:Gem::Requirement
216
+ required_ruby_version: !ruby/object:Gem::Requirement
231
217
  none: false
232
- requirements:
233
- - - ">="
234
- - !ruby/object:Gem::Version
235
- hash: 3
236
- segments:
237
- - 0
238
- version: "0"
239
- required_rubygems_version: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - ! '>='
220
+ - !ruby/object:Gem::Version
221
+ version: '0'
222
+ required_rubygems_version: !ruby/object:Gem::Requirement
240
223
  none: false
241
- requirements:
242
- - - ">="
243
- - !ruby/object:Gem::Version
244
- hash: 3
245
- segments:
246
- - 0
247
- version: "0"
224
+ requirements:
225
+ - - ! '>='
226
+ - !ruby/object:Gem::Version
227
+ version: '0'
248
228
  requirements: []
249
-
250
- rubyforge_project: geocerts
251
- rubygems_version: 1.3.7
229
+ rubyforge_project:
230
+ rubygems_version: 1.8.23
252
231
  signing_key:
253
232
  specification_version: 3
254
233
  summary: A Ruby library for interfacing with the GeoCerts REST API
255
- test_files:
234
+ test_files:
256
235
  - test/config/initializers/_remote_tests.rb
257
236
  - test/config/initializers/geocerts.rb
258
237
  - test/config/initializers/responses.rb
data/.document DELETED
@@ -1,5 +0,0 @@
1
- README.rdoc
2
- lib/**/*.rb
3
- bin/*
4
- features/**/*.feature
5
- LICENSE
@@ -1,38 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- geocerts (1.0.0)
5
- libxml-ruby (~> 1.1.0)
6
- relax (~> 0.1.0)
7
-
8
- GEM
9
- remote: http://rubygems.org/
10
- specs:
11
- factory_girl (1.3.3)
12
- fakeweb (1.3.0)
13
- libxml-ruby (1.1.4)
14
- mocha (0.9.10)
15
- rake
16
- nokogiri (1.3.3)
17
- rake (0.8.7)
18
- relax (0.1.3)
19
- relief (~> 0.0.4)
20
- rest-client (~> 0.9.2)
21
- relief (0.0.5)
22
- nokogiri (~> 1.3.3)
23
- rest-client (0.9.2)
24
- shoulda (2.11.3)
25
- vcr (1.5.0)
26
-
27
- PLATFORMS
28
- ruby
29
-
30
- DEPENDENCIES
31
- factory_girl (~> 1.3.0)
32
- fakeweb (~> 1.3.0)
33
- geocerts!
34
- libxml-ruby (~> 1.1.0)
35
- mocha (~> 0.9.0)
36
- relax (~> 0.1.0)
37
- shoulda (~> 2.11.0)
38
- vcr (~> 1.5.0)
@@ -1,71 +0,0 @@
1
- = GeoCerts
2
-
3
- The GeoCerts library provides a Ruby interface to the GeoCerts REST API. This API allows
4
- you to manage (lookup, create, and verify) your GeoCerts orders, events, certificates, and
5
- more.
6
-
7
- == Simple example
8
-
9
- require 'geocerts'
10
-
11
- GeoCerts.partner_id = 'example'
12
- GeoCerts.api_token = 'abd123DEfg.....'
13
-
14
- begin
15
- GeoCerts::Order.all # => [ GeoCerts::Order, GeoCerts::Order, ... ]
16
- GeoCerts::Order.find(12345).certificate # => GeoCerts::Certificate
17
- GeoCerts::Product.all # => [ GeoCerts::Product, GeoCerts::Product, ... ]
18
-
19
- product = GeoCerts::Product.find('Q')
20
- product.user_agreement # => GeoCerts::Agreement
21
- puts product.user_agreement.text # => "...."
22
-
23
- # Validate the requested order details
24
- validated_order = GeoCerts::Order.validate({
25
- :csr => GeoCerts::CSR.new(:body => "-----BEGIN CERTIFICATE REQUEST-----\n...."),
26
- :product => product
27
- })
28
- validated_order.renewal_information.indicator # => true
29
- validated_order.renewal_information.months # => 1
30
- validated_order.csr.common_name # => 'www.example.com'
31
- validated_order.csr.state # => 'Georgia'
32
- validated_order.total_price # => 99.00
33
-
34
- # Create a new Order
35
- order = GeoCerts::Order.new({
36
- :csr => GeoCerts::CSR.new(:body => "-----BEGIN CERTIFICATE REQUEST-----\n...."),
37
- :product => product,
38
- :years => 3,
39
- :licenses => 1
40
- }).save
41
-
42
- rescue GeoCerts::Exception
43
- puts $!.to_s
44
- end
45
-
46
- == Exceptions
47
-
48
- Since this library does interface with an external system, there is a much greater risk of
49
- exceptional situations. As such, this library attempts to wrap all raised exceptions (due
50
- to authorization, connection, or other unforeseen issues) in the GeoCerts::Exception object.
51
- All exceptions raised from within this library should inherit from this class.
52
-
53
- Exceptions which are raised after successful connections, due to server or request issues,
54
- will be derived from GeoCerts::ExceptionWithResponse. This object also inherits from
55
- GeoCerts::Exception, but contains the actual response details (including HTTP status code,
56
- headers, and response body).
57
-
58
- == Note on Patches/Pull Requests
59
-
60
- * Fork the project.
61
- * Make your feature addition or bug fix.
62
- * Add tests for it. This is important so I don't break it in a
63
- future version unintentionally.
64
- * Commit, do not mess with Rakefile, version, or history.
65
- (if you want to have your own version, that is fine but
66
- bump version in a commit by itself so it can be easily ignored when pulled)
67
- * Send a pull request. Bonus points for topic branches.
68
-
69
- == Copyright
70
-
71
- Copyright (c) 2009 {GeoCerts Inc.}[http://www.geocerts.com/]. See LICENSE for details.