pokemon_zukan 0.4.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.rdoc +1 -1
- data/VERSION +1 -1
- data/lib/pokemon_zukan.rb +30 -24
- data/pokemon_zukan.gemspec +2 -2
- data/test/test_pokemon_zukan.rb +65 -3
- metadata +3 -3
data/README.rdoc
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.5.0
|
data/lib/pokemon_zukan.rb
CHANGED
@@ -1,6 +1,24 @@
|
|
1
1
|
# coding: utf-8
|
2
2
|
require 'json'
|
3
3
|
|
4
|
+
class Numeric
|
5
|
+
def to_pokemon
|
6
|
+
PokemonZukan::find self
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
class String
|
11
|
+
def to_pokemon
|
12
|
+
PokemonZukan::find_by_name self
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
class Array
|
17
|
+
def to_pokemon
|
18
|
+
self.map{|value| value.to_pokemon}
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
4
22
|
class PokemonZukan
|
5
23
|
|
6
24
|
DATA_DIR = File.dirname(__FILE__) + '/../data'
|
@@ -8,13 +26,13 @@ class PokemonZukan
|
|
8
26
|
attr_reader :no, :name, :type, :classification, :tribeValue, :height, :weight
|
9
27
|
|
10
28
|
def initialize(data={})
|
11
|
-
@no
|
12
|
-
@name
|
13
|
-
@type
|
29
|
+
@no = data["no"]
|
30
|
+
@name = data["name"]
|
31
|
+
@type = data["type"]
|
14
32
|
@classification = data["classification"]
|
15
|
-
@tribeValue
|
16
|
-
@height
|
17
|
-
@weight
|
33
|
+
@tribeValue = data["tribeValue"]
|
34
|
+
@height = data["height"]
|
35
|
+
@weight = data["weight"]
|
18
36
|
end
|
19
37
|
|
20
38
|
def self.find(no="", series="xy")
|
@@ -24,15 +42,11 @@ class PokemonZukan
|
|
24
42
|
file.close
|
25
43
|
|
26
44
|
hash = json.parse()
|
27
|
-
|
45
|
+
PokemonZukan.new(hash)
|
28
46
|
end
|
29
47
|
|
30
48
|
def self.find_all(nos=[], series="xy")
|
31
|
-
|
32
|
-
nos.each do |no|
|
33
|
-
retData.push self.find(no, series)
|
34
|
-
end
|
35
|
-
return retData
|
49
|
+
nos.map{|no| PokemonZukan::find(no, series)}
|
36
50
|
end
|
37
51
|
|
38
52
|
def self.find_by_name(name="", series="xy")
|
@@ -41,15 +55,11 @@ class PokemonZukan
|
|
41
55
|
file.close
|
42
56
|
|
43
57
|
hash = json.parse()
|
44
|
-
|
58
|
+
PokemonZukan::find(hash[name], series)
|
45
59
|
end
|
46
60
|
|
47
61
|
def self.find_all_by_name(names=[], series="xy")
|
48
|
-
|
49
|
-
names.each do |name|
|
50
|
-
retData.push self.find_by_name(name, series)
|
51
|
-
end
|
52
|
-
return retData
|
62
|
+
names.map{|name| PokemonZukan::find_by_name(name, series)}
|
53
63
|
end
|
54
64
|
|
55
65
|
def self.find_by_type(type="", series="xy")
|
@@ -58,15 +68,11 @@ class PokemonZukan
|
|
58
68
|
file.close
|
59
69
|
|
60
70
|
hash = json.parse()
|
61
|
-
|
71
|
+
PokemonZukan::find_all(hash[type], series)
|
62
72
|
end
|
63
73
|
|
64
74
|
def self.find_all_by_type(types=[], series="xy")
|
65
|
-
|
66
|
-
types.each do |type|
|
67
|
-
retData.push self.find_by_type(type, series)
|
68
|
-
end
|
69
|
-
return retData
|
75
|
+
types.map{|type| PokemonZukan::find_by_type(type, series)}
|
70
76
|
end
|
71
77
|
|
72
78
|
def next(series="xy")
|
data/pokemon_zukan.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "pokemon_zukan"
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.5.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["keitarou.oonishi"]
|
12
|
-
s.date = "2013-
|
12
|
+
s.date = "2013-12-24"
|
13
13
|
s.email = "keitarou.oonishi@gmail.com"
|
14
14
|
s.extra_rdoc_files = [
|
15
15
|
"LICENSE.txt",
|
data/test/test_pokemon_zukan.rb
CHANGED
@@ -1,7 +1,69 @@
|
|
1
|
-
|
1
|
+
#coding: utf-8
|
2
|
+
require './helper.rb'
|
3
|
+
require './../lib/pokemon_zukan'
|
2
4
|
|
3
5
|
class TestPokemonZukan < Test::Unit::TestCase
|
4
|
-
|
5
|
-
|
6
|
+
|
7
|
+
def test_find
|
8
|
+
pokemon = PokemonZukan::find 1
|
9
|
+
assert_equal("フシギダネ", pokemon.name)
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_Numeric_to_pokemon
|
13
|
+
pokemon = 1.to_pokemon
|
14
|
+
assert_equal("フシギダネ", pokemon.name)
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_String_to_pokemon
|
18
|
+
pokemon = "フシギダネ".to_pokemon
|
19
|
+
assert_equal("フシギダネ", pokemon.name)
|
20
|
+
end
|
21
|
+
|
22
|
+
def test_Array_to_pokemon
|
23
|
+
pokemons = [1, 2, "フシギバナ"].to_pokemon
|
24
|
+
assert_equal("フシギダネ", pokemons[0].name)
|
25
|
+
assert_equal("フシギソウ", pokemons[1].name)
|
26
|
+
assert_equal("フシギバナ", pokemons[2].name)
|
27
|
+
end
|
28
|
+
|
29
|
+
def test_find_all
|
30
|
+
pokemons = PokemonZukan::find_all([1, 2, 3])
|
31
|
+
assert_equal("フシギダネ", pokemons[0].name)
|
32
|
+
assert_equal("フシギソウ", pokemons[1].name)
|
33
|
+
assert_equal("フシギバナ", pokemons[2].name)
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_find_by_name
|
37
|
+
pokemon = PokemonZukan::find_by_name("フシギダネ")
|
38
|
+
assert_equal("フシギダネ", pokemon.name)
|
39
|
+
end
|
40
|
+
|
41
|
+
def test_find_all_by_name
|
42
|
+
pokemons = PokemonZukan::find_all_by_name(["フシギダネ", "フシギソウ", "フシギバナ"])
|
43
|
+
assert_equal("フシギダネ", pokemons[0].name)
|
44
|
+
assert_equal("フシギソウ", pokemons[1].name)
|
45
|
+
assert_equal("フシギバナ", pokemons[2].name)
|
46
|
+
end
|
47
|
+
|
48
|
+
def test_find_by_type
|
49
|
+
pokemons = PokemonZukan::find_by_type "くさ"
|
50
|
+
assert_equal("くさ", pokemons[0].type[0])
|
51
|
+
end
|
52
|
+
|
53
|
+
def test_find_all_by_type
|
54
|
+
pokemons = PokemonZukan::find_all_by_type(["くさ", "ほのお"])
|
55
|
+
assert_equal("くさ", pokemons[0][0].type[0])
|
56
|
+
end
|
57
|
+
|
58
|
+
def test_next
|
59
|
+
pokemon1 = 1.to_pokemon
|
60
|
+
pokemon2 = 2.to_pokemon
|
61
|
+
assert_equal(pokemon2.name, pokemon1.next.name)
|
62
|
+
end
|
63
|
+
|
64
|
+
def test_prev
|
65
|
+
pokemon1 = 1.to_pokemon
|
66
|
+
pokemon2 = 2.to_pokemon
|
67
|
+
assert_equal(pokemon1.name, pokemon2.prev.name)
|
6
68
|
end
|
7
69
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pokemon_zukan
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-12-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json
|
@@ -845,7 +845,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
845
845
|
version: '0'
|
846
846
|
segments:
|
847
847
|
- 0
|
848
|
-
hash:
|
848
|
+
hash: 1404890183398834862
|
849
849
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
850
850
|
none: false
|
851
851
|
requirements:
|