isomorfeus-puppetmaster 0.2.7 → 0.2.8
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 69207b6e61550c662682e11d237709f62f01e6d12b6282b9c239325dde35336d
|
4
|
+
data.tar.gz: 8ec945e61d1aa91be2765824468c9b64f60efcd1d24f61a1bc3998303fb489d1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 26d40a97edbea084811349728123e200d7fe056a94115f04a4445322148c266666810d80d3110cb2cd3362759b53d1dc01a4fd2e0d7f6d296f5b07e0196d5f57
|
7
|
+
data.tar.gz: e1db2b3df0fb3b4c3fddf77ec2d65eed0b4ec05779a4e3e7e7cbbcb4f866882105cb00989af2df84e0002d39a338a51ff71f8a955f07f2d0ec0c0e51480946e1
|
@@ -69,6 +69,35 @@ module Isomorfeus
|
|
69
69
|
@driver.browser
|
70
70
|
end
|
71
71
|
|
72
|
+
def await_ruby(ruby_source = '', &block)
|
73
|
+
ruby_source = Isomorfeus::Puppetmaster.block_source_code(&block) if block_given?
|
74
|
+
ruby_source = "#{ruby_source}.then { |result| $promise_result = result; $promise_resolved = true }"
|
75
|
+
compiled_ruby = compile_ruby_source(ruby_source)
|
76
|
+
if compiled_ruby.start_with?('/*')
|
77
|
+
start_of_code = compiled_ruby.index('*/') + 3
|
78
|
+
compiled_ruby = compiled_ruby[start_of_code..-1]
|
79
|
+
end
|
80
|
+
evaluate_script <<~JAVASCRIPT
|
81
|
+
(function(){
|
82
|
+
Opal.gvars.promise_resolved = false;
|
83
|
+
return #{compiled_ruby}
|
84
|
+
})()
|
85
|
+
JAVASCRIPT
|
86
|
+
have_result = false
|
87
|
+
until have_result do
|
88
|
+
have_result = evaluate_script 'Opal.gvars.promise_resolved'
|
89
|
+
sleep 0.1 unless have_result
|
90
|
+
end
|
91
|
+
execute_script <<~JAVASCRIPT
|
92
|
+
var result;
|
93
|
+
if (typeof Opal.gvars.promise_result.$to_n === 'function') { result = Opal.gvars.promise_result.$to_n(); }
|
94
|
+
else { result = Opal.gvars.promise_result };
|
95
|
+
delete Opal.gvars.promise_result;
|
96
|
+
delete Opal.gvars.promise_resolved;
|
97
|
+
return result;
|
98
|
+
JAVASCRIPT
|
99
|
+
end
|
100
|
+
|
72
101
|
def evaluate_ruby(ruby_source = '', &block)
|
73
102
|
ruby_source = Isomorfeus::Puppetmaster.block_source_code(&block) if block_given?
|
74
103
|
compiled_ruby = compile_ruby_source(ruby_source)
|
@@ -297,7 +297,7 @@ module Isomorfeus
|
|
297
297
|
def node_evaluate_script(node, script, *args)
|
298
298
|
await <<~JAVASCRIPT
|
299
299
|
var node_handle = #{node.handle};
|
300
|
-
await AllElementHandles[node_handle].executionContext().evaluateHandle((node, arguments) => {
|
300
|
+
handle = await AllElementHandles[node_handle].executionContext().evaluateHandle((node, arguments) => {
|
301
301
|
arguments.unshift(node);
|
302
302
|
return #{script};
|
303
303
|
}, AllElementHandles[node_handle], #{args[1..-1]});
|
@@ -571,13 +571,7 @@ module Isomorfeus
|
|
571
571
|
def node_style(node, *styles)
|
572
572
|
await <<~JAVASCRIPT
|
573
573
|
var handle = await AllElementHandles[#{node.handle}].executionContext().evaluateHandle(function(node, styles){
|
574
|
-
|
575
|
-
if (styles.length > 0) {
|
576
|
-
return styles.reduce(function(res,name) {
|
577
|
-
res[name] = style[name];
|
578
|
-
return res;
|
579
|
-
}, {});
|
580
|
-
} else { return style; }
|
574
|
+
return = window.getComputedStyle(node);
|
581
575
|
}, AllElementHandles[#{node.handle}], #{styles});
|
582
576
|
LastResult = await handle.jsonValue();
|
583
577
|
JAVASCRIPT
|
@@ -35,10 +35,7 @@ Isomorfeus::Puppetmaster.register_server :iodine do |app, port, host, **options|
|
|
35
35
|
raise LoadError, "Unable to load 'iodine' as server."
|
36
36
|
end
|
37
37
|
|
38
|
-
|
39
|
-
puts "* Version #{Iodine::VERSION}"
|
40
|
-
|
41
|
-
Iodine::Rack.run(app, { Host: host, Port: port }.merge(options)).join
|
38
|
+
Iodine::Rack.run(app, { Host: host, Port: port }.merge(options))
|
42
39
|
end
|
43
40
|
|
44
41
|
Isomorfeus::Puppetmaster.register_server :puma do |app, port, host, **options|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: isomorfeus-puppetmaster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Biedermann
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-06-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.2.
|
33
|
+
version: 0.2.3
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.2.
|
40
|
+
version: 0.2.3
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: method_source
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|