hyper-spec 1.0.alpha1.8 → 1.0.0.lap28

Sign up to get free protection for your applications and to get access to all the features.
@@ -59,10 +59,6 @@ if RUBY_ENGINE == 'opal'
59
59
  ticker
60
60
  end
61
61
 
62
- def init(scale: 1, resolution: 10)
63
- update_lolex(Time.now, scale, resolution)
64
- end
65
-
66
62
  def update_lolex(time, scale, resolution)
67
63
  `#{@lolex}.uninstall()` && return if scale.nil?
68
64
  @mock_start_time = time.to_f * 1000
@@ -84,14 +80,6 @@ if RUBY_ENGINE == 'opal'
84
80
  end
85
81
  end
86
82
 
87
- # create an alias for Lolex.init so we can say Timecop.init on the client
88
-
89
- class Timecop
90
- def self.init(*args)
91
- Lolex.init(*args)
92
- end
93
- end
94
-
95
83
  else
96
84
  require 'timecop'
97
85
 
@@ -148,7 +136,7 @@ else
148
136
 
149
137
  def evaluate_ruby(&block)
150
138
  if @capybara_page
151
- @capybara_page.internal_evaluate_ruby(yield)
139
+ @capybara_page.evaluate_ruby(yield)
152
140
  else
153
141
  pending_evaluations << block
154
142
  end
@@ -156,7 +144,7 @@ else
156
144
 
157
145
  def run_pending_evaluations
158
146
  return if pending_evaluations.empty?
159
- @capybara_page.internal_evaluate_ruby(pending_evaluations.collect(&:call).join("\n"))
147
+ @capybara_page.evaluate_ruby(pending_evaluations.collect(&:call).join("\n"))
160
148
  @pending_evaluations ||= []
161
149
  end
162
150
  end
@@ -1,3 +1,3 @@
1
1
  module HyperSpec
2
- VERSION = '1.0.alpha1.8'
2
+ VERSION = '1.0.0.lap28'
3
3
  end
@@ -12,9 +12,9 @@ module HyperSpec
12
12
  def running?
13
13
  jscode = <<-CODE
14
14
  (function() {
15
- if (typeof Opal !== "undefined" && Opal.Hyperstack !== undefined) {
15
+ if (typeof Opal !== "undefined" && Opal.Hyperloop !== undefined) {
16
16
  try {
17
- return Opal.Hyperstack.$const_get("HTTP")["$active?"]();
17
+ return Opal.Hyperloop.$const_get("HTTP")["$active?"]();
18
18
  } catch(err) {
19
19
  if (typeof jQuery !== "undefined" && jQuery.active !== undefined) {
20
20
  return (jQuery.active > 0);
@@ -29,7 +29,7 @@ module HyperSpec
29
29
  }
30
30
  })();
31
31
  CODE
32
- Capybara.page.evaluate_script(jscode)
32
+ page.evaluate_script(jscode)
33
33
  rescue Exception => e
34
34
  puts "wait_for_ajax failed while testing state of ajax requests: #{e}"
35
35
  end
@@ -39,7 +39,7 @@ module HyperSpec
39
39
  rescue Capybara::NotSupportedByDriverError
40
40
  true
41
41
  rescue Exception => e
42
- e.message == 'either jQuery or Hyperstack::HTTP is not defined'
42
+ e.message == 'either jQuery or Hyperloop::HTTP is not defined'
43
43
  end
44
44
  end
45
45
  end
@@ -0,0 +1,94 @@
1
+ module React
2
+ class TopLevelRailsComponent
3
+ class << self
4
+ attr_accessor :event_history
5
+
6
+ def callback_history_for(proc_name)
7
+ event_history[proc_name]
8
+ end
9
+
10
+ def last_callback_for(proc_name)
11
+ event_history[proc_name].last
12
+ end
13
+
14
+ def clear_callback_history_for(proc_name)
15
+ event_history[proc_name] = []
16
+ end
17
+
18
+ def event_history_for(event_name)
19
+ event_history["_on#{event_name.event_camelize}"]
20
+ end
21
+
22
+ def last_event_for(event_name)
23
+ event_history["_on#{event_name.event_camelize}"].last
24
+ end
25
+
26
+ def clear_event_history_for(event_name)
27
+ event_history["_on#{event_name.event_camelize}"] = []
28
+ end
29
+ end
30
+
31
+ def component
32
+ return @component if @component
33
+ paths_searched = []
34
+ component = nil
35
+ if params.component_name.start_with?('::')
36
+ # if absolute path of component is given, look it up and fail if not found
37
+ paths_searched << params.component_name
38
+ component = begin
39
+ Object.const_get(params.component_name)
40
+ rescue NameError
41
+ nil
42
+ end
43
+ else
44
+ # if relative path is given, look it up like this
45
+ # 1) we check each path + controller-name + component-name
46
+ # 2) if we can't find it there we check each path + component-name
47
+ # if we can't find it we just try const_get
48
+ # so (assuming controller name is Home)
49
+ # ::Foo::Bar will only resolve to some component named ::Foo::Bar
50
+ # but Foo::Bar will check (in this order) ::Home::Foo::Bar, ::Components::Home::Foo::Bar, ::Foo::Bar, ::Components::Foo::Bar
51
+ self.class.search_path.each do |scope|
52
+ paths_searched << "#{scope.name}::#{params.controller}::#{params.component_name}"
53
+ component = begin
54
+ scope.const_get(params.controller, false).const_get(params.component_name, false)
55
+ rescue NameError
56
+ nil
57
+ end
58
+ break if component != nil
59
+ end
60
+ unless component
61
+ self.class.search_path.each do |scope|
62
+ paths_searched << "#{scope.name}::#{params.component_name}"
63
+ component = begin
64
+ scope.const_get(params.component_name, false)
65
+ rescue NameError
66
+ nil
67
+ end
68
+ break if component != nil
69
+ end
70
+ end
71
+ end
72
+ @component = component
73
+ return @component if @component && @component.method_defined?(:render)
74
+ raise "Could not find component class '#{params.component_name}' for params.controller '#{params.controller}' in any component directory. Tried [#{paths_searched.join(", ")}]"
75
+ end
76
+
77
+ before_mount do
78
+ TopLevelRailsComponent.event_history = Hash.new { |h, k| h[k] = [] }
79
+ @render_params = params.render_params
80
+ component.validator.rules.each do |name, rules|
81
+ next unless rules[:type] == Proc
82
+
83
+ TopLevelRailsComponent.event_history[name] = []
84
+ @render_params[name] = lambda do |*args|
85
+ TopLevelRailsComponent.event_history[name] << args
86
+ end
87
+ end
88
+ end
89
+
90
+ def render
91
+ React::RenderingContext.render(component, @render_params)
92
+ end
93
+ end
94
+ end
metadata CHANGED
@@ -1,31 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyper-spec
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.alpha1.8
4
+ version: 1.0.0.lap28
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mitch VanDuyn
8
- - AdamCreekroad
8
+ - Adam Creekroad
9
9
  - Jan Biedermann
10
10
  autorequire:
11
11
  bindir: exe
12
12
  cert_chain: []
13
- date: 2021-04-13 00:00:00.000000000 Z
13
+ date: 2018-05-06 00:00:00.000000000 Z
14
14
  dependencies:
15
- - !ruby/object:Gem::Dependency
16
- name: actionview
17
- requirement: !ruby/object:Gem::Requirement
18
- requirements:
19
- - - ">="
20
- - !ruby/object:Gem::Version
21
- version: '0'
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- requirements:
26
- - - ">="
27
- - !ruby/object:Gem::Version
28
- version: '0'
29
15
  - !ruby/object:Gem::Dependency
30
16
  name: capybara
31
17
  requirement: !ruby/object:Gem::Requirement
@@ -42,20 +28,6 @@ dependencies:
42
28
  version: '0'
43
29
  - !ruby/object:Gem::Dependency
44
30
  name: chromedriver-helper
45
- requirement: !ruby/object:Gem::Requirement
46
- requirements:
47
- - - '='
48
- - !ruby/object:Gem::Version
49
- version: 1.2.0
50
- type: :runtime
51
- prerelease: false
52
- version_requirements: !ruby/object:Gem::Requirement
53
- requirements:
54
- - - '='
55
- - !ruby/object:Gem::Version
56
- version: 1.2.0
57
- - !ruby/object:Gem::Dependency
58
- name: filecache
59
31
  requirement: !ruby/object:Gem::Requirement
60
32
  requirements:
61
33
  - - ">="
@@ -91,7 +63,7 @@ dependencies:
91
63
  version: 0.11.0
92
64
  - - "<"
93
65
  - !ruby/object:Gem::Version
94
- version: '2.0'
66
+ version: 0.12.0
95
67
  type: :runtime
96
68
  prerelease: false
97
69
  version_requirements: !ruby/object:Gem::Requirement
@@ -101,9 +73,23 @@ dependencies:
101
73
  version: 0.11.0
102
74
  - - "<"
103
75
  - !ruby/object:Gem::Version
104
- version: '2.0'
76
+ version: 0.12.0
105
77
  - !ruby/object:Gem::Dependency
106
78
  name: parser
79
+ requirement: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: 2.3.3.1
84
+ type: :runtime
85
+ prerelease: false
86
+ version_requirements: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - ">="
89
+ - !ruby/object:Gem::Version
90
+ version: 2.3.3.1
91
+ - !ruby/object:Gem::Dependency
92
+ name: pry
107
93
  requirement: !ruby/object:Gem::Requirement
108
94
  requirements:
109
95
  - - ">="
@@ -117,7 +103,7 @@ dependencies:
117
103
  - !ruby/object:Gem::Version
118
104
  version: '0'
119
105
  - !ruby/object:Gem::Dependency
120
- name: rspec
106
+ name: rspec-rails
121
107
  requirement: !ruby/object:Gem::Requirement
122
108
  requirements:
123
109
  - - ">="
@@ -178,14 +164,14 @@ dependencies:
178
164
  requirements:
179
165
  - - ">="
180
166
  - !ruby/object:Gem::Version
181
- version: 0.4.2
167
+ version: '0'
182
168
  type: :runtime
183
169
  prerelease: false
184
170
  version_requirements: !ruby/object:Gem::Requirement
185
171
  requirements:
186
172
  - - ">="
187
173
  - !ruby/object:Gem::Version
188
- version: 0.4.2
174
+ version: '0'
189
175
  - !ruby/object:Gem::Dependency
190
176
  name: webdrivers
191
177
  requirement: !ruby/object:Gem::Requirement
@@ -215,33 +201,33 @@ dependencies:
215
201
  - !ruby/object:Gem::Version
216
202
  version: '0'
217
203
  - !ruby/object:Gem::Dependency
218
- name: hyper-component
204
+ name: hyper-react
219
205
  requirement: !ruby/object:Gem::Requirement
220
206
  requirements:
221
207
  - - '='
222
208
  - !ruby/object:Gem::Version
223
- version: 1.0.alpha1.8
209
+ version: 1.0.0.lap28
224
210
  type: :development
225
211
  prerelease: false
226
212
  version_requirements: !ruby/object:Gem::Requirement
227
213
  requirements:
228
214
  - - '='
229
215
  - !ruby/object:Gem::Version
230
- version: 1.0.alpha1.8
216
+ version: 1.0.0.lap28
231
217
  - !ruby/object:Gem::Dependency
232
218
  name: mini_racer
233
219
  requirement: !ruby/object:Gem::Requirement
234
220
  requirements:
235
- - - ">="
221
+ - - "~>"
236
222
  - !ruby/object:Gem::Version
237
- version: '0'
223
+ version: 0.1.15
238
224
  type: :development
239
225
  prerelease: false
240
226
  version_requirements: !ruby/object:Gem::Requirement
241
227
  requirements:
242
- - - ">="
228
+ - - "~>"
243
229
  - !ruby/object:Gem::Version
244
- version: '0'
230
+ version: 0.1.15
245
231
  - !ruby/object:Gem::Dependency
246
232
  name: opal-browser
247
233
  requirement: !ruby/object:Gem::Requirement
@@ -260,18 +246,18 @@ dependencies:
260
246
  name: opal-rails
261
247
  requirement: !ruby/object:Gem::Requirement
262
248
  requirements:
263
- - - ">="
249
+ - - "~>"
264
250
  - !ruby/object:Gem::Version
265
251
  version: 0.9.4
266
252
  type: :development
267
253
  prerelease: false
268
254
  version_requirements: !ruby/object:Gem::Requirement
269
255
  requirements:
270
- - - ">="
256
+ - - "~>"
271
257
  - !ruby/object:Gem::Version
272
258
  version: 0.9.4
273
259
  - !ruby/object:Gem::Dependency
274
- name: pry-rescue
260
+ name: puma
275
261
  requirement: !ruby/object:Gem::Requirement
276
262
  requirements:
277
263
  - - ">="
@@ -285,21 +271,21 @@ dependencies:
285
271
  - !ruby/object:Gem::Version
286
272
  version: '0'
287
273
  - !ruby/object:Gem::Dependency
288
- name: pry-stack_explorer
274
+ name: rails
289
275
  requirement: !ruby/object:Gem::Requirement
290
276
  requirements:
291
277
  - - ">="
292
278
  - !ruby/object:Gem::Version
293
- version: '0'
279
+ version: 4.0.0
294
280
  type: :development
295
281
  prerelease: false
296
282
  version_requirements: !ruby/object:Gem::Requirement
297
283
  requirements:
298
284
  - - ">="
299
285
  - !ruby/object:Gem::Version
300
- version: '0'
286
+ version: 4.0.0
301
287
  - !ruby/object:Gem::Dependency
302
- name: puma
288
+ name: rake
303
289
  requirement: !ruby/object:Gem::Requirement
304
290
  requirements:
305
291
  - - ">="
@@ -313,27 +299,7 @@ dependencies:
313
299
  - !ruby/object:Gem::Version
314
300
  version: '0'
315
301
  - !ruby/object:Gem::Dependency
316
- name: rails
317
- requirement: !ruby/object:Gem::Requirement
318
- requirements:
319
- - - ">="
320
- - !ruby/object:Gem::Version
321
- version: 5.0.0
322
- - - "<"
323
- - !ruby/object:Gem::Version
324
- version: '7.0'
325
- type: :development
326
- prerelease: false
327
- version_requirements: !ruby/object:Gem::Requirement
328
- requirements:
329
- - - ">="
330
- - !ruby/object:Gem::Version
331
- version: 5.0.0
332
- - - "<"
333
- - !ruby/object:Gem::Version
334
- version: '7.0'
335
- - !ruby/object:Gem::Dependency
336
- name: rake
302
+ name: pry-rescue
337
303
  requirement: !ruby/object:Gem::Requirement
338
304
  requirements:
339
305
  - - ">="
@@ -366,20 +332,6 @@ dependencies:
366
332
  - - "<"
367
333
  - !ruby/object:Gem::Version
368
334
  version: 2.5.0
369
- - !ruby/object:Gem::Dependency
370
- name: rspec-rails
371
- requirement: !ruby/object:Gem::Requirement
372
- requirements:
373
- - - ">="
374
- - !ruby/object:Gem::Version
375
- version: '0'
376
- type: :development
377
- prerelease: false
378
- version_requirements: !ruby/object:Gem::Requirement
379
- requirements:
380
- - - ">="
381
- - !ruby/object:Gem::Version
382
- version: '0'
383
335
  - !ruby/object:Gem::Dependency
384
336
  name: rspec-collection_matchers
385
337
  requirement: !ruby/object:Gem::Requirement
@@ -454,16 +406,16 @@ dependencies:
454
406
  name: rubocop
455
407
  requirement: !ruby/object:Gem::Requirement
456
408
  requirements:
457
- - - ">="
409
+ - - "~>"
458
410
  - !ruby/object:Gem::Version
459
- version: '0'
411
+ version: 0.51.0
460
412
  type: :development
461
413
  prerelease: false
462
414
  version_requirements: !ruby/object:Gem::Requirement
463
415
  requirements:
464
- - - ">="
416
+ - - "~>"
465
417
  - !ruby/object:Gem::Version
466
- version: '0'
418
+ version: 0.51.0
467
419
  - !ruby/object:Gem::Dependency
468
420
  name: shoulda
469
421
  requirement: !ruby/object:Gem::Requirement
@@ -506,7 +458,7 @@ dependencies:
506
458
  - - ">="
507
459
  - !ruby/object:Gem::Version
508
460
  version: '0'
509
- description: A Hyperstack application consists of isomorphic React Components, Active
461
+ description: A Hyperloop application consists of isomorphic React Components, Active
510
462
  Record Models, Stores, Operations and Policiespec. Test them all from Rspec, regardless
511
463
  if the code runs on the client or server.
512
464
  email:
@@ -517,34 +469,28 @@ extensions: []
517
469
  extra_rdoc_files: []
518
470
  files:
519
471
  - ".gitignore"
472
+ - ".rubocop.yml"
520
473
  - ".travis.yml"
474
+ - CODE_OF_CONDUCT.md
521
475
  - Gemfile
476
+ - LICENSE.txt
477
+ - README.md
522
478
  - Rakefile
523
479
  - bin/console
524
480
  - bin/setup
481
+ - dciy.toml
525
482
  - hyper-spec.gemspec
526
483
  - lib/bin/firebug-2.0.13-fx.xpi
527
484
  - lib/bin/firebug-2.0.19-fx.xpi
528
485
  - lib/hyper-spec.rb
529
- - lib/hyper-spec/controller_helpers.rb
530
- - lib/hyper-spec/expectations.rb
531
- - lib/hyper-spec/helpers.rb
532
- - lib/hyper-spec/internal/client_execution.rb
533
- - lib/hyper-spec/internal/component_mount.rb
534
- - lib/hyper-spec/internal/controller.rb
535
- - lib/hyper-spec/internal/copy_locals.rb
536
- - lib/hyper-spec/internal/patches.rb
537
- - lib/hyper-spec/internal/rails_controller_helpers.rb
538
- - lib/hyper-spec/internal/time_cop.rb
539
- - lib/hyper-spec/internal/window_sizing.rb
540
- - lib/hyper-spec/rack.rb
486
+ - lib/hyper-spec/component_test_helpers.rb
487
+ - lib/hyper-spec/time_cop.rb
541
488
  - lib/hyper-spec/version.rb
542
489
  - lib/hyper-spec/wait_for_ajax.rb
490
+ - lib/react/top_level_rails_component.rb
543
491
  - lib/selenium/web_driver/firefox/profile.rb
544
492
  - lib/sources/lolex.js
545
- - lib/sources/top_level_rails_component.rb
546
- - multi_level_how_it_works.md
547
- homepage: http://hyperstack.org
493
+ homepage: http://ruby-hyperloop.org
548
494
  licenses:
549
495
  - MIT
550
496
  metadata: {}
@@ -563,8 +509,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
563
509
  - !ruby/object:Gem::Version
564
510
  version: 1.3.1
565
511
  requirements: []
566
- rubygems_version: 3.0.8
512
+ rubyforge_project:
513
+ rubygems_version: 2.7.6
567
514
  signing_key:
568
515
  specification_version: 4
569
- summary: Drive your Opal and Hyperstack client and server specs from RSpec and Capybara
516
+ summary: Drive your Hyperloop client and server specs from RSpec and Capybara
570
517
  test_files: []