met_museum 1.1.0 → 1.1.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1a6ff7996fca8e8a4d71cbd008cc165f7a34b54437b033846621212b62fd32d7
4
- data.tar.gz: e33a584975d9be2be1e784b2d6fa0337fa77484f45fa1ad601944340a71fa81a
3
+ metadata.gz: '08d6d07c0f9c75193191f9c558faacfb3b4c3cdf29c32b7ec9683d9aafa86480'
4
+ data.tar.gz: f58005f169eceb608b22b53fbd59c8187aed3a6cb0443181761fb421f5c4c505
5
5
  SHA512:
6
- metadata.gz: 9cf96db161ff8ebc0f0c7b6915b33794d06e2842bd4f259cc9021ddc60fed1bb6635609df62eca430c144d564bd298fef44487ba6b995f3cfaf992b972b6c9f5
7
- data.tar.gz: '029652a62061d9acc487832efe653f1c0879358c7b9d39217918738319777b120f3be74bb57e0cdbc4f4d00ca5edefc44fece695d233c71a89be89ab83258683'
6
+ metadata.gz: beefedd3fad4533944b0ae179be71c3240b394c571970166c4b8293531f6a50526dc12f58baef474c6547bc61ad21a0de59052117cb7391d8b2d7a76dfde0a49
7
+ data.tar.gz: f6c9e98f847f7d17e912f89f3fbf3a368cde50fc6142dc01a5de6cdf292553104cd293e356924ce54ea2b806199c1303eb4509d7d720c57b4e8a3e9db09a2ca1
data/.travis.yml CHANGED
@@ -4,4 +4,6 @@ language: ruby
4
4
  cache: bundler
5
5
  rvm:
6
6
  - 2.5.0
7
- before_install: gem install bundler -v 2.0.1
7
+ - 2.4.2
8
+ script:
9
+ - bundle exec rspec spec/
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- met_museum (1.1.0)
4
+ met_museum (1.1.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -29,6 +29,8 @@ GEM
29
29
  rspec-mocks (3.8.0)
30
30
  diff-lcs (>= 1.2.0, < 2.0)
31
31
  rspec-support (~> 3.8.0)
32
+ rspec-retry (0.6.1)
33
+ rspec-core (> 3.3)
32
34
  rspec-support (3.8.0)
33
35
 
34
36
  PLATFORMS
@@ -42,6 +44,7 @@ DEPENDENCIES
42
44
  pry
43
45
  rake (~> 10.0)
44
46
  rspec (~> 3.0)
47
+ rspec-retry
45
48
 
46
49
  BUNDLED WITH
47
50
  2.0.1
data/README.md CHANGED
@@ -1,3 +1,5 @@
1
+ <img src="https://img.shields.io/travis/hyuraku/met_museum.svg"> <img src="https://img.shields.io/gem/v/met_museum.svg">
2
+
1
3
  # MetMuseum
2
4
 
3
5
  The Metropolitan Museum of Art Collection API Ruby wrapper
@@ -113,6 +115,20 @@ collection.object(1000)
113
115
  </pre>
114
116
  </details>
115
117
 
118
+ MetMuseum::Collection.search
119
+ ```
120
+ collection.search('ocean')
121
+ => {"total"=>189,
122
+ "objectIDs"=>
123
+ [250487,
124
+ 12544,
125
+ 436005,
126
+ 8314,
127
+ 8315,
128
+ 8317,
129
+ --< omit >--
130
+ ```
131
+
116
132
  ## Contributing
117
133
 
118
134
  Bug reports and pull requests are welcome on GitHub at https://github.com/hyuraku/met_museum. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
@@ -0,0 +1,10 @@
1
+ module MetMuseum
2
+ MetMuseumError = Class.new(StandardError)
3
+ BadRequestError = Class.new(MetMuseumError)
4
+ UnauthorizedError = Class.new(MetMuseumError)
5
+ ForbiddenError = Class.new(MetMuseumError)
6
+ ApiRequestsQuotaReachedError = Class.new(MetMuseumError)
7
+ NotFoundError = Class.new(MetMuseumError)
8
+ UnprocessableEntityError = Class.new(MetMuseumError)
9
+ ApiError = Class.new(MetMuseumError)
10
+ end
@@ -1,27 +1,5 @@
1
1
  module MetMuseum
2
2
  class Collection
3
- MetMuseumError = Class.new(StandardError)
4
- BadRequestError = Class.new(MetMuseumError)
5
- UnauthorizedError = Class.new(MetMuseumError)
6
- ForbiddenError = Class.new(MetMuseumError)
7
- ApiRequestsQuotaReachedError = Class.new(MetMuseumError)
8
- NotFoundError = Class.new(MetMuseumError)
9
- UnprocessableEntityError = Class.new(MetMuseumError)
10
- ApiError = Class.new(MetMuseumError)
11
-
12
- API_ENDPOINT = "https://collectionapi.metmuseum.org".freeze
13
- PUBLIC_URI = "/public/collection/v1/objects".freeze
14
- SEARCH_URI = "/public/collection/v1/search".freeze
15
-
16
- HTTP_OK_CODE = 200.freeze
17
-
18
- HTTP_BAD_REQUEST_CODE = 400.freeze
19
- HTTP_UNAUTHORIZED_CODE = 401.freeze
20
- HTTP_FORBIDDEN_CODE = 403.freeze
21
- HTTP_NOT_FOUND_CODE = 404.freeze
22
- HTTP_UNPROCESSABLE_ENTITY_CODE = 429.freeze
23
-
24
-
25
3
  # Return a listing of all valid Object IDs available to use
26
4
  # @param [String] metadataDate Returns any objects with updated data after this date
27
5
  # @return [Hash<total, Integer>] The total number of publicly-available objects
@@ -105,6 +83,8 @@ module MetMuseum
105
83
  raise error_class(response), "Code: #{response.status}, response: #{response.body}"
106
84
  end
107
85
 
86
+ private
87
+
108
88
  def error_class(response)
109
89
  case response.status
110
90
  when HTTP_BAD_REQUEST_CODE
@@ -0,0 +1,5 @@
1
+ module MetMuseum
2
+ API_ENDPOINT = "https://collectionapi.metmuseum.org".freeze
3
+ PUBLIC_URI = "/public/collection/v1/objects".freeze
4
+ SEARCH_URI = "/public/collection/v1/search".freeze
5
+ end
@@ -0,0 +1,8 @@
1
+ module MetMuseum
2
+ HTTP_OK_CODE = 200.freeze
3
+ HTTP_BAD_REQUEST_CODE = 400.freeze
4
+ HTTP_UNAUTHORIZED_CODE = 401.freeze
5
+ HTTP_FORBIDDEN_CODE = 403.freeze
6
+ HTTP_NOT_FOUND_CODE = 404.freeze
7
+ HTTP_UNPROCESSABLE_ENTITY_CODE = 429.freeze
8
+ end
@@ -1,3 +1,3 @@
1
1
  module MetMuseum
2
- VERSION = "1.1.0"
2
+ VERSION = "1.1.1"
3
3
  end
data/lib/met_museum.rb CHANGED
@@ -1,8 +1,11 @@
1
1
  require "faraday"
2
2
  require "oj"
3
3
 
4
+ require "met_museum/api_expections"
5
+ require "met_museum/endpoint"
6
+ require "met_museum/collection"
7
+ require "met_museum/http_status_code"
4
8
  require "met_museum/version"
5
- require 'met_museum/collection'
6
9
 
7
10
  module MetMuseum
8
11
  end
data/met_museum.gemspec CHANGED
@@ -39,4 +39,5 @@ Gem::Specification.new do |spec|
39
39
  spec.add_development_dependency "rspec", "~> 3.0"
40
40
  spec.add_development_dependency "faraday"
41
41
  spec.add_development_dependency "oj"
42
+ spec.add_development_dependency "rspec-retry"
42
43
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: met_museum
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - hyuraku
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-10 00:00:00.000000000 Z
11
+ date: 2019-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: rspec-retry
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  description: 'The Metropolitan Museum of Art Collection API wrapper '
84
98
  email:
85
99
  - calenthird@gamil.com
@@ -99,7 +113,10 @@ files:
99
113
  - bin/console
100
114
  - bin/setup
101
115
  - lib/met_museum.rb
116
+ - lib/met_museum/api_expections.rb
102
117
  - lib/met_museum/collection.rb
118
+ - lib/met_museum/endpoint.rb
119
+ - lib/met_museum/http_status_code.rb
103
120
  - lib/met_museum/version.rb
104
121
  - met_museum.gemspec
105
122
  homepage: https://github.com/hyuraku/met_museum