sw_info 1.0.1 → 1.0.3

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sw_info.rb +130 -142
  3. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c0f700fa6fb687bfbbb892881502ee6c28b7662a0f369d4020e945b777667256
4
- data.tar.gz: 7f473129b073069d3eadc7a42d7a128cc07b2f84d23a89c1c030fde001f84803
3
+ metadata.gz: 0c09bae496651501ac197952b8107ea66de17ae4b0fe5037143431bcab31dae9
4
+ data.tar.gz: e17c9b49e748526488921480958ff094e15509ee9aba2d18eefbcd00dacdcd4c
5
5
  SHA512:
6
- metadata.gz: 90d5e29159dceb3ea11afd05d9b1c4b36126f483404845fc03d8a5b297665195248451b1a57e846032d71cfcd3f2f621fdf166943b24b803e7c476c9b81dac3e
7
- data.tar.gz: 1b420bcfced2ef32b0a77da1a425cf77fc8e5703e6edf1ff861bdfb496f2110d812a7da1c338660dfd8fd03615b2b2129a88ba04451e18448d8a949585873418
6
+ metadata.gz: 64bb54ca669c74bb54f78481eacf806f90bb7d4d9ec203b60fe36f3246d02379883e69bb784a6540e19d1dbdde31629375c42137be8416b295c8895151963ce6
7
+ data.tar.gz: f990126f1562a53f0c656aa5c72c8b7cfbce29d5c2c3546d24dbaf77526e3cd1a427fe8ef4211ca2f522755e985f9b69f7821075d8526b9f4bff038313a71afe
data/lib/sw_info.rb CHANGED
@@ -11,194 +11,182 @@ require 'debug'
11
11
 
12
12
  # https://github.com/ruby/debug
13
13
 
14
- #Cargo toda la data de swapi en la variable JSONDATA como hash
15
- =begin JSONDATA = JSON.load_file('./swapi.json').each_with_object({}) do |(key, value), hash|
16
- hash[key] = value
17
- end
18
- =end
14
+ # Cargo toda la data de swapi en la variable JSONDATA como hash
15
+ # JSONDATA = JSON.load_file('./swapi.json').each_with_object({}) do |(key, value), hash|
16
+ # hash[key] = value
17
+ # end
19
18
 
20
19
  JSONDATA = File.expand_path('swapi.json', __dir__)
21
20
 
22
21
  DATA = JSON.load_file(JSONDATA)
23
22
 
24
23
  class Pal
25
- attr_accessor :data
26
-
27
- def to_s
28
- name
29
- end
30
-
31
- def id
32
- @data['id']
33
- end
24
+ attr_accessor :data
34
25
 
35
- def name
36
- @data['name']
37
- end
26
+ def to_s
27
+ name
28
+ end
38
29
 
39
- def self.find(id)
40
-
41
- end
30
+ def id
31
+ @data['id']
32
+ end
42
33
 
43
- def self.all
44
-
45
- end
34
+ def name
35
+ @data['name']
36
+ end
46
37
 
47
- def self.search_for_all(key)
48
- variable = DATA[key].map {|p| new(p)}
49
- return variable
50
- end
38
+ def self.find(id); end
51
39
 
52
- def self.search_for_id(key, id)
53
- variable = DATA[key].find do |p|
54
- p["id"] == id
55
- end
56
- return new(variable)
57
- end
40
+ def self.all; end
58
41
 
59
- def initialize(data)
60
- @data = data
61
- end
42
+ def self.search_for_all(key)
43
+ variable = DATA[key].map { |j| new(j) }
44
+ end
62
45
 
46
+ def self.search_for_id(key, id)
47
+ variable = DATA[key].find { |j| j['id'] == id }
48
+ new(variable)
49
+ end
63
50
 
51
+ def initialize(data)
52
+ @data = data
53
+ end
64
54
  end
65
55
 
66
- #En esta clase voy a querer acceder a esa data dependiendo de la key que me pase
56
+ # En esta clase voy a querer acceder a esa data dependiendo de la key que me pase
67
57
  # y mostrar el atributo que se pida según el método llamado
68
58
  class Person < Pal
69
- attr_accessor :data, :alias
70
-
71
- def birth_year
72
- @data['birth_year']
73
- end
74
-
75
- def eye_color
76
- @data['eye_color']
77
- end
78
-
79
- def hair_color
80
- @data['hair_color']
81
- end
82
-
83
- def skin_color
84
- @data['skin_color']
85
- end
86
-
87
- def height
88
- @data['height']
89
- end
90
-
91
- def mass
92
- @data['mass']
93
- end
94
-
95
- def gender
96
- @data['gender']
97
- end
59
+ attr_accessor :data, :alias
60
+
61
+ def birth_year
62
+ @data['birth_year']
63
+ end
64
+
65
+ def eye_color
66
+ @data['eye_color']
67
+ end
68
+
69
+ def hair_color
70
+ @data['hair_color']
71
+ end
72
+
73
+ def skin_color
74
+ @data['skin_color']
75
+ end
76
+
77
+ def height
78
+ @data['height']
79
+ end
80
+
81
+ def mass
82
+ @data['mass']
83
+ end
84
+
85
+ def gender
86
+ @data['gender']
87
+ end
98
88
  end
99
89
 
100
90
  class Starship < Pal
101
- attr_accessor :data
91
+ attr_accessor :data
102
92
 
103
- def starships
104
- @data['starships']
105
- end
93
+ def starships
94
+ @data['starships']
95
+ end
106
96
 
107
- def model
108
- @data['model']
109
- end
97
+ def model
98
+ @data['model']
99
+ end
110
100
 
111
- def manufacturer
112
- @data['manufacturer']
113
- end
114
-
115
- def cost_in_credits
116
- @data['cost_in_credits']
117
- end
101
+ def manufacturer
102
+ @data['manufacturer']
103
+ end
118
104
 
119
- def length
120
- @data['length']
121
- end
105
+ def cost_in_credits
106
+ @data['cost_in_credits']
107
+ end
122
108
 
123
- def max_atmosphering_speed
124
- @data['max_atmosphering_speed']
125
- end
109
+ def length
110
+ @data['length']
111
+ end
126
112
 
127
- def crew
128
- @data['crew']
129
- end
113
+ def max_atmosphering_speed
114
+ @data['max_atmosphering_speed']
115
+ end
130
116
 
131
- def passengers
132
- @data['passengers']
133
- end
117
+ def crew
118
+ @data['crew']
119
+ end
134
120
 
135
- def cargo_capacity
136
- @data['cargo_capacity']
137
- end
121
+ def passengers
122
+ @data['passengers']
123
+ end
138
124
 
139
- def consumables
140
- @data['consumables']
141
- end
125
+ def cargo_capacity
126
+ @data['cargo_capacity']
127
+ end
142
128
 
143
- def hyperdrive_rating
144
- @data['hyperdrive_rating']
145
- end
129
+ def consumables
130
+ @data['consumables']
131
+ end
146
132
 
147
- def MGLT
148
- @data['MGLT']
149
- end
133
+ def hyperdrive_rating
134
+ @data['hyperdrive_rating']
135
+ end
150
136
 
151
- def starship_class
152
- @data['starship_class']
153
- end
137
+ def MGLT
138
+ @data['MGLT']
139
+ end
154
140
 
141
+ def starship_class
142
+ @data['starship_class']
143
+ end
155
144
  end
156
145
 
157
146
  class Vehicle < Pal
158
- attr_accessor :data
147
+ attr_accessor :data
159
148
 
160
- def vehicles
161
- @data['vehicles']
162
- end
149
+ def vehicles
150
+ @data['vehicles']
151
+ end
163
152
 
164
- def model
165
- @data['model']
166
- end
153
+ def model
154
+ @data['model']
155
+ end
167
156
 
168
- def manufacturer
169
- @data['manufacturer']
170
- end
171
-
172
- def cost_in_credits
173
- @data['cost_in_credits']
174
- end
157
+ def manufacturer
158
+ @data['manufacturer']
159
+ end
175
160
 
176
- def length
177
- @data['length']
178
- end
161
+ def cost_in_credits
162
+ @data['cost_in_credits']
163
+ end
179
164
 
180
- def max_atmosphering_speed
181
- @data['max_atmosphering_speed']
182
- end
165
+ def length
166
+ @data['length']
167
+ end
183
168
 
184
- def crew
185
- @data['crew']
186
- end
169
+ def max_atmosphering_speed
170
+ @data['max_atmosphering_speed']
171
+ end
187
172
 
188
- def passengers
189
- @data['passengers']
190
- end
173
+ def crew
174
+ @data['crew']
175
+ end
191
176
 
192
- def cargo_capacity
193
- @data['cargo_capacity']
194
- end
177
+ def passengers
178
+ @data['passengers']
179
+ end
195
180
 
196
- def consumables
197
- @data['consumables']
198
- end
181
+ def cargo_capacity
182
+ @data['cargo_capacity']
183
+ end
199
184
 
200
- def vehicle_class
201
- @data['vehicle_class']
202
- end
185
+ def consumables
186
+ @data['consumables']
187
+ end
203
188
 
189
+ def vehicle_class
190
+ @data['vehicle_class']
191
+ end
204
192
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sw_info
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - EmilioD
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-22 00:00:00.000000000 Z
11
+ date: 2022-01-23 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description: A simple hello world gem
13
+ description: A simple gem that display Star Wars characters info
14
14
  email: emilio@daniel.fake
15
15
  executables: []
16
16
  extensions: []
@@ -42,5 +42,5 @@ requirements: []
42
42
  rubygems_version: 3.2.32
43
43
  signing_key:
44
44
  specification_version: 4
45
- summary: Hola!
45
+ summary: Star Wars API
46
46
  test_files: []