ketchum 0.1.0 → 0.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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/ketchum/version.rb +1 -1
  3. data/lib/ketchum.rb +38 -40
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3d163df9f2b7b69c2f8aa4100a39e7a68124079f
4
- data.tar.gz: 169294160c261f6490b0dd519e52b0d26dbd0923
3
+ metadata.gz: 3317709bace5b7c948d0de7375a17a8994a2ef44
4
+ data.tar.gz: cfcd6ee31cb8be37e8928399f1217357dbac96df
5
5
  SHA512:
6
- metadata.gz: e917cfe99db33ed5f1707d61e7ec0dfbdf0033300418cd0cea5f01caa52f25adce045b84e7de8e9c8d4c529576174e75298ed35af3068968af4497de554566cc
7
- data.tar.gz: 27052a0002845c27d1a86622c796c371849c010e7bedb2184c63624b69c4c2fc6e3c5be47fbe8bde7890f644f2acfe3d2128dc80cf6484a4b7db4999abac174b
6
+ metadata.gz: 38b9cd481a75ae9a505b0493334ffe54f926fc9592b316c2c66779e3d2444b37945813c3e6dfa35d0eaa5ae97d65f0f0a3d87103324f632aa046fb31e9b9946d
7
+ data.tar.gz: 7862eea31a506020f2054db3343e9b390d0530c738e16bc2a3cb2cd9928d85bd43bc182ed9af7b4cdbcdf3c2be64234fe35c7079c371e0ff5d837f7ce9da46a8
@@ -1,3 +1,3 @@
1
1
  module Ketchum
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
data/lib/ketchum.rb CHANGED
@@ -3,50 +3,48 @@ require 'ketchum/version'
3
3
  require 'rest-client'
4
4
  require 'json'
5
5
 
6
- module Ketchum
7
- class << self
8
- BASE_URL = 'http://pokeapi.co/api/v2/'
9
-
10
- RESOURCES = [
11
- 'ability', 'berry', 'berry_firmness', 'berry_flavor', 'characteristic',
12
- 'contest_effect', 'contest_type', 'egg_group', 'encounter_condition',
13
- 'encounter_condition_value', 'encounter_method', 'evolution_chain',
14
- 'evolution_trigger', 'gender', 'generation', 'growth_rate', 'item',
15
- 'item_attribute', 'item_category', 'item_fling_effect', 'item_pocket',
16
- 'language', 'location', 'location_area', 'move', 'move_ailment',
17
- 'move_battle_style', 'move_category', 'move_damage_class',
18
- 'move_learn_method', 'move_target', 'nature', 'pal_park_area',
19
- 'pokeathlon_stat', 'pokedex', 'pokemon', 'pokemon_color', 'pokemon_form',
20
- 'pokemon_shape', 'pokemon_species', 'region', 'stat',
21
- 'super_contest_effect', 'type', 'version', 'version_group'
22
- ]
23
-
24
- def initialize(format = :json)
25
- @format = format
26
- end
6
+ class Ketchum
7
+ BASE_URL = 'http://pokeapi.co/api/v2/'
8
+
9
+ RESOURCES = [
10
+ 'ability', 'berry', 'berry_firmness', 'berry_flavor', 'characteristic',
11
+ 'contest_effect', 'contest_type', 'egg_group', 'encounter_condition',
12
+ 'encounter_condition_value', 'encounter_method', 'evolution_chain',
13
+ 'evolution_trigger', 'gender', 'generation', 'growth_rate', 'item',
14
+ 'item_attribute', 'item_category', 'item_fling_effect', 'item_pocket',
15
+ 'language', 'location', 'location_area', 'move', 'move_ailment',
16
+ 'move_battle_style', 'move_category', 'move_damage_class',
17
+ 'move_learn_method', 'move_target', 'nature', 'pal_park_area',
18
+ 'pokeathlon_stat', 'pokedex', 'pokemon', 'pokemon_color', 'pokemon_form',
19
+ 'pokemon_shape', 'pokemon_species', 'region', 'stat',
20
+ 'super_contest_effect', 'type', 'version', 'version_group'
21
+ ]
22
+
23
+ def initialize(format = :json)
24
+ @format = format
25
+ end
27
26
 
28
- def method_missing(method, *args)
29
- if RESOURCES.include? method.to_s
30
- method = hyphenate(method.to_s)
31
- get(method.to_s, args[0], args[1])
32
- end
27
+ def method_missing(method, *args)
28
+ if RESOURCES.include? method.to_s
29
+ method = hyphenate(method.to_s)
30
+ get(method.to_s, args[0], args[1])
33
31
  end
32
+ end
34
33
 
35
- private
36
-
37
- def get(resource, id = '', format = @format)
38
- url = "#{BASE_URL}#{resource}/#{id}"
39
- response = RestClient.get(url)
40
- if format == :hash
41
- response = JSON.parse(response)
42
- elsif format == :ostruct
43
- response = OpenStruct.new(JSON.parse(response))
44
- end
45
- response
46
- end
34
+ private
47
35
 
48
- def hyphenate(resource)
49
- resource.gsub('_', '-')
36
+ def get(resource, id = '', format = @format)
37
+ url = "#{BASE_URL}#{resource}/#{id}"
38
+ response = RestClient.get(url)
39
+ if format == :hash
40
+ response = JSON.parse(response)
41
+ elsif format == :ostruct
42
+ response = OpenStruct.new(JSON.parse(response))
50
43
  end
44
+ response
45
+ end
46
+
47
+ def hyphenate(resource)
48
+ resource.gsub('_', '-')
51
49
  end
52
50
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ketchum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christopher Miles