super_test_engine 0.0.6 → 0.0.7

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: 9c8180d8dd33f99eb0442bb67751b0722b11d453679df0852587ef0f74c5c9a7
4
- data.tar.gz: d3656c32d72e55007163f578c6c3d9671b81c98e20505f76bfd69215ef1ab55d
3
+ metadata.gz: 2dc6a9894f99f19f9138de77bf51bcb7da106eef8a69c6a69464ccbe33d90c71
4
+ data.tar.gz: e229f4f534422f93c47d2a3a8b3c45edb2b8c869f2b970ff10da36c5238ab182
5
5
  SHA512:
6
- metadata.gz: 63150cc18e312cd009bd9bb06f89512b621813fad701d16f33bb6bea3a8f6f6aa523c6e5656059cc45c428ad54e98427b9446ae672c840801040287db4d7708a
7
- data.tar.gz: 8956150cb78092261446188ba9434a001aa51a2a3f5c1ba6bc29f97983e09cd820253b6511c522167bc6a7956d60632189dc852d92474a8265b938a8e41289e6
6
+ metadata.gz: a3015b0d16174ffb3e388cb6abebf9844eeac00a743bdcfd6b184fda43a14c4c0eca09ab3a3e63f377b693bbe63524a6dc8eb23442c6cfc28d901581faf6fc08
7
+ data.tar.gz: 3cd97a3552ddfe03ea3de4503f92b9e44f2107eda081ff6f95d3f2ed238875cf8855a54b996263ca60c6a57cc072879256c24d5ced3c6669ccbb4c496bf87930
@@ -0,0 +1,9 @@
1
+ module Admin
2
+ class ShipsController < AdminController
3
+ private
4
+
5
+ def dashboard
6
+ ShipDashboard.new
7
+ end
8
+ end
9
+ end
@@ -16,6 +16,7 @@ class MemberDashboard
16
16
  :name,
17
17
  :rank,
18
18
  :position,
19
+ :ship_id,
19
20
  :created_at,
20
21
  ]
21
22
  end
@@ -32,6 +33,7 @@ class MemberDashboard
32
33
  [
33
34
  :name,
34
35
  :rank,
36
+ :ship_id,
35
37
  :position,
36
38
  ]
37
39
  end
@@ -44,6 +46,7 @@ class MemberDashboard
44
46
  [
45
47
  :name,
46
48
  :rank,
49
+ :ship_id,
47
50
  :position,
48
51
  ]
49
52
  end
@@ -72,10 +75,10 @@ class MemberDashboard
72
75
  end
73
76
 
74
77
  def permitted_create_params(params)
75
- params.require(:member).permit(:name, :rank, :position)
78
+ params.require(:member).permit(:name, :rank, :position, :ship_id)
76
79
  end
77
80
 
78
81
  def permitted_update_params(params)
79
- params.require(:member).permit(:name, :rank, :position)
82
+ params.require(:member).permit(:name, :rank, :position, :ship_id)
80
83
  end
81
84
  end
data/app/models/member.rb CHANGED
@@ -9,6 +9,8 @@ class Member < ApplicationRecord
9
9
  nco: "NCO",
10
10
  }
11
11
 
12
+ belongs_to :ship
13
+
12
14
  validates :name, presence: true
13
15
  validates :rank, presence: true
14
16
  end
@@ -0,0 +1,3 @@
1
+ class Ship < ApplicationRecord
2
+ has_many :members
3
+ end
@@ -0,0 +1,77 @@
1
+ class ShipDashboard
2
+ def title
3
+ Ship.name.pluralize
4
+ end
5
+
6
+ def model
7
+ Ship
8
+ end
9
+
10
+ def index_scope
11
+ Ship.all
12
+ end
13
+
14
+ def index_columns
15
+ [
16
+ :name,
17
+ :registry,
18
+ :class_name,
19
+ ]
20
+ end
21
+
22
+ def create_scope
23
+ Ship.all
24
+ end
25
+
26
+ def new_scope
27
+ Ship.all
28
+ end
29
+
30
+ def new_columns
31
+ [
32
+ :name,
33
+ :registry,
34
+ :class_name,
35
+ ]
36
+ end
37
+
38
+ def edit_scope
39
+ Ship.all
40
+ end
41
+
42
+ def edit_columns
43
+ [
44
+ :name,
45
+ :registry,
46
+ :class_name,
47
+ ]
48
+ end
49
+
50
+ def show_scope
51
+ Ship.all
52
+ end
53
+
54
+ def show_columns
55
+ [
56
+ :name,
57
+ :registry,
58
+ :class_name,
59
+ ]
60
+ end
61
+
62
+ def update_scope
63
+ Ship.all
64
+ end
65
+
66
+ def destroy_scope
67
+ Ship.all
68
+ end
69
+
70
+ def permitted_create_params(params)
71
+ params.require(:ship).permit(:name, :registry, :class_name)
72
+ end
73
+
74
+ def permitted_update_params(params)
75
+ params.require(:ship).permit(:name, :registry, :class_name)
76
+ end
77
+ end
data/config/routes.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  Rails.application.routes.draw do
2
2
  namespace :admin do
3
3
  resources :members
4
+ resources :ships
4
5
  end
5
6
  end
@@ -0,0 +1,11 @@
1
+ class CreateShips < ActiveRecord::Migration[5.0]
2
+ def change
3
+ create_table :ships do |t|
4
+ t.string :name
5
+ t.string :registry
6
+ t.string :class_name
7
+
8
+ t.timestamps
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,5 @@
1
+ class AddShipToMembers < ActiveRecord::Migration[5.0]
2
+ def change
3
+ add_reference :members, :ship, foreign_key: true
4
+ end
5
+ end
data/db/seeds.rb CHANGED
@@ -1,11 +1,23 @@
1
1
  class EnterpriseSeeder
2
2
  def initialize
3
3
  @seeded = {}
4
+ @association_reflections = {}
4
5
  end
5
6
 
6
7
  def seed(basename, key, klass, value)
7
8
  @seeded[basename] ||= {}
8
9
  puts "--> #{key} (#{value})"
10
+ @association_reflections[klass] ||= klass.reflect_on_all_associations
11
+
12
+ @association_reflections[klass].each do |ar|
13
+ ar_name = ar.name.to_s
14
+ ar_plural_name = ar.plural_name.to_s
15
+
16
+ if value.key?(ar_name)
17
+ value[ar_name] = @seeded.fetch(ar_plural_name).fetch(value[ar_name])
18
+ end
19
+ end
20
+
9
21
  @seeded[basename][key] = klass.find_or_create_by(value)
10
22
  puts " success!"
11
23
  rescue => e
@@ -31,4 +43,5 @@ class EnterpriseSeeder
31
43
  end
32
44
 
33
45
  seeder = EnterpriseSeeder.new
46
+ seeder.seed_from_fixture("ships", Ship)
34
47
  seeder.seed_from_fixture("members", Member)
@@ -1,3 +1,3 @@
1
1
  module SuperTestEngine
2
- VERSION = "0.0.6"
2
+ VERSION = "0.0.7"
3
3
  end
@@ -3,278 +3,334 @@ picard:
3
3
  name: Jean-Luc Picard
4
4
  rank: Captain
5
5
  position: Commanding Officer
6
+ ship: uss_enterprise_d
6
7
 
7
8
  riker:
8
9
  name: William T. Riker
9
10
  rank: Commander
10
11
  position: First Officer
12
+ ship: uss_enterprise_d
11
13
 
12
14
  data:
13
15
  name: Data
14
16
  rank: Lieutenant Commander
15
17
  position: Second Officer
18
+ ship: uss_enterprise_d
16
19
 
17
20
  crusher:
18
21
  name: Beverly Crusher
19
22
  rank: Commander
20
23
  position: Chief Medical Officer
24
+ ship: uss_enterprise_d
21
25
 
22
26
  worf:
23
27
  name: Worf
24
28
  rank: Lieutenant Commander
25
29
  position: Chief of Security
30
+ ship: uss_enterprise_d
26
31
 
27
32
  la_forge:
28
33
  name: Geordi La Forge
29
34
  rank: Lieutenant Commander
30
35
  position: Chief Engineering Officer
36
+ ship: uss_enterprise_d
31
37
 
32
38
  troi:
33
39
  name: Deanna Troi
34
40
  rank: Commander
35
41
  position: Counselor
42
+ ship: uss_enterprise_d
36
43
 
37
44
  tasha:
38
45
  name: Natasha Yar
39
46
  rank: Lieutenant
40
47
  position: Chief of Security
48
+ ship: uss_enterprise_d
41
49
 
42
50
  miles:
43
51
  name: Miles O'Brien
44
52
  rank: NCO
45
53
  position: Transporter Chief
54
+ ship: uss_enterprise_d
46
55
 
47
56
  guinan:
48
57
  name: Guinan
49
58
  rank: NCO
50
59
  position: Bartender
60
+ ship: uss_enterprise_d
51
61
 
52
62
  sepulveda:
53
63
  name: Fernando Sepulveda
54
64
  rank: Lieutenant
55
65
  position: Ops engineer
66
+ ship: uss_enterprise_d
56
67
 
57
68
  jaxa:
58
69
  name: Sito Jaxa
59
70
  rank: Ensign
60
71
  position: Security officer
72
+ ship: uss_enterprise_d
61
73
 
62
74
  calloway:
63
75
  name: Maddy Calloway
64
76
  rank: Ensign
65
77
  position: Medical technician
78
+ ship: uss_enterprise_d
66
79
 
67
80
  mayter:
68
81
  name: Van Mayter
69
82
  rank: NCO
70
83
  position: Engineer
84
+ ship: uss_enterprise_d
71
85
 
72
86
  sutter:
73
87
  name: Daniel Sutter
74
88
  rank: Ensign
75
89
  position: Engineer
90
+ ship: uss_enterprise_d
76
91
 
77
92
  bernard:
78
93
  name: Harry Bernard, Sr.
79
94
  rank: Lieutenant
80
95
  position: Oceanographer
96
+ ship: uss_enterprise_d
81
97
 
82
98
  dangelo:
83
99
  name: Dick D'Angelo
84
100
  rank: Lieutenant
85
101
  position: Ops Engineer
102
+ ship: uss_enterprise_d
86
103
 
87
104
  ogawa:
88
105
  name: Alyssa Ogawa
89
106
  rank: Lieutenant
90
107
  position: Nurse
108
+ ship: uss_enterprise_d
91
109
 
92
110
  nesterowicz:
93
111
  name: John Nesterowicz
94
112
  rank: Lieutenant
95
113
  position: WarpField Tech 2
114
+ ship: uss_enterprise_d
96
115
 
97
116
  keiko:
98
117
  name: Keiko O'Brien
99
118
  rank: NCO
100
119
  position: Botanist
120
+ ship: uss_enterprise_d
101
121
 
102
122
  anaya:
103
123
  name: April Anaya
104
124
  rank: Ensign
105
125
  position: Flight controller
126
+ ship: uss_enterprise_d
106
127
 
107
128
  ziff:
108
129
  name: Anaanda Ziff
109
130
  rank: Lieutenant
110
131
  position: Specialist
132
+ ship: uss_enterprise_d
111
133
 
112
134
  tarses:
113
135
  name: Simon Tarses
114
136
  rank: NCO
115
137
  position: Medical technician
138
+ ship: uss_enterprise_d
116
139
 
117
140
  wallace:
118
141
  name: Darien Wallace
119
142
  rank: Lieutenant
120
143
  position: Crewmember
144
+ ship: uss_enterprise_d
121
145
 
122
146
  giddings:
123
147
  name: Diana Giddings
124
148
  rank: Lieutenant
125
149
  position: Junior engineer
150
+ ship: uss_enterprise_d
126
151
 
127
152
  pulaski:
128
153
  name: Katherine Pulaski
129
154
  rank: Commander
130
155
  position: Medical officer
156
+ ship: uss_enterprise_d
131
157
 
132
158
  dumont:
133
159
  name: Suzanne Dumont
134
160
  rank: Ensign
135
161
  position: Crewmember
162
+ ship: uss_enterprise_d
136
163
 
137
164
  tsu:
138
165
  name: Lian T'Su
139
166
  rank: Ensign
140
167
  position: Operations officer
168
+ ship: uss_enterprise_d
141
169
 
142
170
  lynch:
143
171
  name: Leland T. Lynch
144
172
  rank: Lieutenant Commander
145
173
  position: Chief engineer
174
+ ship: uss_enterprise_d
146
175
 
147
176
  dsora:
148
177
  name: Jenna D'Sora
149
178
  rank: Lieutenant Junior Grade
150
179
  position: Security officer
180
+ ship: uss_enterprise_d
151
181
 
152
182
  macdougal:
153
183
  name: Sarah MacDougal
154
184
  rank: Lieutenant Commander
155
185
  position: Chief engineer
186
+ ship: uss_enterprise_d
156
187
 
157
188
  shimoda:
158
189
  name: Jim Shimoda
159
190
  rank: NCO
160
191
  position: Assistant chief engineer
192
+ ship: uss_enterprise_d
161
193
 
162
194
  solis:
163
195
  name: Orfil Solis
164
196
  rank: Lieutenant Junior Grade
165
197
  position: Flight controller
198
+ ship: uss_enterprise_d
166
199
 
167
200
  rhodes:
168
201
  name: Sandra Rhodes
169
202
  rank: Lieutenant
170
203
  position: Security officer
204
+ ship: uss_enterprise_d
171
205
 
172
206
  fratis:
173
207
  name: Jeffrey Fratis
174
208
  rank: Lieutenant
175
209
  position: Crewmember
210
+ ship: uss_enterprise_d
176
211
 
177
212
  mees:
178
213
  name: Jim Mees
179
214
  rank: Lieutenant Commander
180
215
  position: Crewmember
216
+ ship: uss_enterprise_d
181
217
 
182
218
  hubbell:
183
219
  name: Maggie Hubbell
184
220
  rank: Ensign
185
221
  position: Transporter chief
222
+ ship: uss_enterprise_d
186
223
 
187
224
  rager:
188
225
  name: Sariel Rager
189
226
  rank: Ensign
190
227
  position: Helmsman
228
+ ship: uss_enterprise_d
191
229
 
192
230
  robinson:
193
231
  name: B.G. Robinson
194
232
  rank: Lieutenant
195
233
  position: Transporter chief
234
+ ship: uss_enterprise_d
196
235
 
197
236
  allenby:
198
237
  name: Tess Allenby
199
238
  rank: Ensign
200
239
  position: Flight controller
240
+ ship: uss_enterprise_d
201
241
 
202
242
  brooks:
203
243
  name: Janet Brooks
204
244
  rank: Ensign
205
245
  position: Crewmember
246
+ ship: uss_enterprise_d
206
247
 
207
248
  foster:
208
249
  name: Don Foster, Jr.
209
250
  rank: Lieutenant
210
251
  position: WarpField Tech 1
252
+ ship: uss_enterprise_d
211
253
 
212
254
  lefler:
213
255
  name: Robin Lefler
214
256
  rank: Ensign
215
257
  position: Mission Specialist
258
+ ship: uss_enterprise_d
216
259
 
217
260
  lavelle:
218
261
  name: Sam Lavelle
219
262
  rank: Lieutenant Junior Grade
220
263
  position: Operations officer
264
+ ship: uss_enterprise_d
221
265
 
222
266
  prieto:
223
267
  name: Ben Prieto
224
268
  rank: Lieutenant
225
269
  position: Shuttlecraft Pilot
270
+ ship: uss_enterprise_d
226
271
 
227
272
  pacelli:
228
273
  name: Alfonse Pacelli
229
274
  rank: Ensign
230
275
  position: Specialist
276
+ ship: uss_enterprise_d
231
277
 
232
278
  aster:
233
279
  name: Marla Aster
234
280
  rank: Lieutenant
235
281
  position: Archaeologist
282
+ ship: uss_enterprise_d
236
283
 
237
284
  barclay:
238
285
  name: Reginald Barclay
239
286
  rank: Lieutenant
240
287
  position: Systems diagnostic engineer
288
+ ship: uss_enterprise_d
241
289
 
242
290
  salvatore:
243
291
  name: Bruno Salvatore
244
292
  rank: Ensign
245
293
  position: Specialist in biomechanical research
294
+ ship: uss_enterprise_d
246
295
 
247
296
  juarez:
248
297
  name: Francisca Juarez
249
298
  rank: Lieutenant
250
299
  position: Crewmember
300
+ ship: uss_enterprise_d
251
301
 
252
302
  finks:
253
303
  name: Wilbur Finks
254
304
  rank: Lieutenant
255
305
  position: Safety officer
306
+ ship: uss_enterprise_d
256
307
 
257
308
  larson:
258
309
  name: Linda Larson
259
310
  rank: Lieutenant Junior Grade
260
311
  position: Engineer
312
+ ship: uss_enterprise_d
261
313
 
262
314
  gomez:
263
315
  name: Sonya Gomez
264
316
  rank: Ensign
265
317
  position: Engineer
318
+ ship: uss_enterprise_d
266
319
 
267
320
  hagler:
268
321
  name: Edward Hagler
269
322
  rank: Lieutenant
270
323
  position: Crewmember
324
+ ship: uss_enterprise_d
271
325
 
272
326
  lin:
273
327
  name: Peter Lin
274
328
  rank: Ensign
275
329
  position: Flight controller
330
+ ship: uss_enterprise_d
276
331
 
277
332
  kwan:
278
333
  name: Daniel Kwan
279
334
  rank: Lieutenant Junior Grade
280
335
  position: Specialist
336
+ ship: uss_enterprise_d
@@ -0,0 +1,10 @@
1
+ ---
2
+ uss_enterprise_d:
3
+ name: USS Enterprise
4
+ registry: NCC-1701-D
5
+ class_name: Galaxy
6
+
7
+ uss_jenolan:
8
+ name: USS Jenolan
9
+ registry: NCC-2010
10
+ class_name: Sydney
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: super_test_engine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zach Ahn
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-29 00:00:00.000000000 Z
11
+ date: 2019-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -49,11 +49,16 @@ files:
49
49
  - README.md
50
50
  - Rakefile
51
51
  - app/controllers/admin/members_controller.rb
52
+ - app/controllers/admin/ships_controller.rb
52
53
  - app/controllers/admin_controller.rb
53
54
  - app/dashboards/member_dashboard.rb
54
55
  - app/models/member.rb
56
+ - app/models/ship.rb
57
+ - app/super/ship_dashboard.rb
55
58
  - config/routes.rb
56
59
  - db/migrate/20190216224956_create_members.rb
60
+ - db/migrate/20190803143320_create_ships.rb
61
+ - db/migrate/20190806014121_add_ship_to_members.rb
57
62
  - db/seeds.rb
58
63
  - lib/generators/super_test_engine/dummy/USAGE
59
64
  - lib/generators/super_test_engine/dummy/dummy_generator.rb
@@ -62,6 +67,7 @@ files:
62
67
  - lib/super_test_engine/engine.rb
63
68
  - lib/super_test_engine/version.rb
64
69
  - test/fixtures/members.yml
70
+ - test/fixtures/ships.yml
65
71
  homepage:
66
72
  licenses:
67
73
  - MIT