nasa_apod 0.0.4 → 0.0.6
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 +4 -4
- data/README.md +1 -1
- data/lib/nasa_apod/client.rb +15 -17
- data/lib/nasa_apod/version.rb +1 -1
- data/nasa_apod.gemspec +4 -5
- data/spec/nasa_apod_spec.rb +12 -2
- data/spec/spec_helper.rb +1 -1
- metadata +16 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5ea7b208e0dd92004f98e370d5399bf23d2e57a5
|
4
|
+
data.tar.gz: 690ece5803322f2ef7926e52343c0a0baf33c47d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7cd9d7f855881d2892b102211d4b5d55cf571f1c0d9a27ba0b51749988eabb89f7df1518ffeb98ffa6d055c1756b94953829be238f82780394c1e3584682212b
|
7
|
+
data.tar.gz: f0d41d988873268f7db03ad52864a0573259cbd1cf32568b2b3c0416ffe948dc3cba4097ae08384a4bbe4403d7f52e32fc4031069c8b0bfca1999db5467a4ed6
|
data/README.md
CHANGED
data/lib/nasa_apod/client.rb
CHANGED
@@ -3,17 +3,17 @@ module NasaApod
|
|
3
3
|
DEFAULT_URL = 'https://api.nasa.gov/planetary/apod'
|
4
4
|
|
5
5
|
class Client
|
6
|
-
attr_reader :api_key, :date, :
|
6
|
+
attr_reader :api_key, :date, :concept_tags, :hd
|
7
7
|
|
8
8
|
def date=(date)
|
9
9
|
@date = parse_date(date)
|
10
10
|
end
|
11
11
|
|
12
|
-
def
|
13
|
-
if
|
14
|
-
@
|
12
|
+
def concept_tags=(concept_tags)
|
13
|
+
if concept_tags.nil? || concept_tags.blank?
|
14
|
+
@concept_tags = false
|
15
15
|
else
|
16
|
-
@
|
16
|
+
@concept_tags = concept_tags
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
@@ -28,7 +28,7 @@ module NasaApod
|
|
28
28
|
def initialize(options={})
|
29
29
|
@api_key = options[:api_key] || "DEMO_KEY"
|
30
30
|
self.date = options[:date]
|
31
|
-
self.
|
31
|
+
self.concept_tags = options[:concept_tags]
|
32
32
|
self.hd = options[:hd]
|
33
33
|
end
|
34
34
|
|
@@ -44,19 +44,25 @@ module NasaApod
|
|
44
44
|
# @return [NasaApod::SearchResults] Return APOD post for a specified date.
|
45
45
|
def search(options={})
|
46
46
|
self.date = options[:date] || date
|
47
|
-
@
|
47
|
+
@concept_tags = options[:concept_tags] || concept_tags
|
48
48
|
@hd = options[:hd] || hd
|
49
|
-
response = HTTParty.get(
|
49
|
+
response = HTTParty.get(DEFAULT_URL, { query: attributes })
|
50
50
|
handle_response(response)
|
51
51
|
end
|
52
52
|
|
53
53
|
def random_post(options={})
|
54
54
|
date = rand(Date.parse("1995-06-16")..Date.today)
|
55
|
-
search(:
|
55
|
+
search(date: date)
|
56
56
|
end
|
57
57
|
|
58
58
|
alias_method :wormhole, :random_post
|
59
59
|
|
60
|
+
def attributes
|
61
|
+
instance_variables.each_with_object(Hash.new) do |var,hash|
|
62
|
+
hash[var.to_s.delete("@")] = instance_variable_get(var)
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
60
66
|
private
|
61
67
|
|
62
68
|
def handle_response(response)
|
@@ -67,14 +73,6 @@ module NasaApod
|
|
67
73
|
end
|
68
74
|
end
|
69
75
|
|
70
|
-
def write_attrs(attributes)
|
71
|
-
@concepts = attributes["concepts"]
|
72
|
-
@url = attributes["url"]
|
73
|
-
@media_type = attributes["media_type"]
|
74
|
-
@explanation = attributes["explanation"]
|
75
|
-
@title = attributes["title"]
|
76
|
-
end
|
77
|
-
|
78
76
|
def parse_date(date)
|
79
77
|
if date.is_a?(Time)
|
80
78
|
date.strftime("%Y-%m-%d")
|
data/lib/nasa_apod/version.rb
CHANGED
data/nasa_apod.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
|
|
10
10
|
spec.email = ["gabe.p.dominguez@gmail.com"]
|
11
11
|
spec.summary = %q{Ruby wrapper for NASA's Astronomy Picture of the Day API}
|
12
12
|
spec.description = %q{A Ruby gem for consuming the NASA Astronomy Picture of the Day API. }
|
13
|
-
spec.homepage = ""
|
13
|
+
spec.homepage = "https://github.com/gdomingu/nasa_apod"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
16
16
|
spec.files = `git ls-files -z`.split("\x0")
|
@@ -19,8 +19,7 @@ Gem::Specification.new do |spec|
|
|
19
19
|
spec.require_paths = ["lib"]
|
20
20
|
|
21
21
|
spec.add_development_dependency "bundler", "~> 1.6"
|
22
|
-
spec.add_development_dependency "rake"
|
23
|
-
spec.add_development_dependency 'rspec'
|
24
|
-
spec.add_development_dependency 'httparty'
|
25
|
-
|
22
|
+
spec.add_development_dependency "rake", "~> 10.1"
|
23
|
+
spec.add_development_dependency 'rspec', "~> 3.3"
|
24
|
+
spec.add_development_dependency 'httparty', "~> 0.13"
|
26
25
|
end
|
data/spec/nasa_apod_spec.rb
CHANGED
@@ -10,8 +10,8 @@ module NasaApod
|
|
10
10
|
expect(client.api_key).to eq("DEMO_KEY")
|
11
11
|
end
|
12
12
|
|
13
|
-
it '
|
14
|
-
expect(client.
|
13
|
+
it 'concept_tags defaults to false' do
|
14
|
+
expect(client.concept_tags).to eq(false)
|
15
15
|
end
|
16
16
|
|
17
17
|
it 'date defaults to a string of today' do
|
@@ -51,6 +51,16 @@ module NasaApod
|
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
54
|
+
describe '#attributes' do
|
55
|
+
let(:client) { Client.new }
|
56
|
+
|
57
|
+
it 'returns a hash of attributes' do
|
58
|
+
attributes = client.attributes
|
59
|
+
expect(attributes.class).to eq(Hash)
|
60
|
+
expect(attributes['api_key']).to eq('DEMO_KEY')
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
54
64
|
end
|
55
65
|
|
56
66
|
describe SearchResults do
|
data/spec/spec_helper.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
require 'nasa_apod'
|
1
|
+
require 'nasa_apod'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nasa_apod
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gabe Dominguez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2016-04-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -28,44 +28,44 @@ dependencies:
|
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '10.1'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '10.1'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '3.3'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '3.3'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: httparty
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
61
|
+
version: '0.13'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
68
|
+
version: '0.13'
|
69
69
|
description: 'A Ruby gem for consuming the NASA Astronomy Picture of the Day API. '
|
70
70
|
email:
|
71
71
|
- gabe.p.dominguez@gmail.com
|
@@ -86,7 +86,7 @@ files:
|
|
86
86
|
- nasa_apod.gemspec
|
87
87
|
- spec/nasa_apod_spec.rb
|
88
88
|
- spec/spec_helper.rb
|
89
|
-
homepage:
|
89
|
+
homepage: https://github.com/gdomingu/nasa_apod
|
90
90
|
licenses:
|
91
91
|
- MIT
|
92
92
|
metadata: {}
|
@@ -106,7 +106,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
106
106
|
version: '0'
|
107
107
|
requirements: []
|
108
108
|
rubyforge_project:
|
109
|
-
rubygems_version: 2.
|
109
|
+
rubygems_version: 2.6.2
|
110
110
|
signing_key:
|
111
111
|
specification_version: 4
|
112
112
|
summary: Ruby wrapper for NASA's Astronomy Picture of the Day API
|