rspec-javascript-matchers 0.0.1 → 0.0.2
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 +4 -4
- data/lib/rspec-javascript-matchers.rb +10 -2
- data/lib/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d8c355d142407b9e1634ea013dd57c207c6a5e0933e4f9e0c69dd8b7790b6c98
|
|
4
|
+
data.tar.gz: 557309a850c23478d55f67e6645df925face50f3905135635dc13dbf72cb7e9f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2a528441d63ec13e2aa9993c565ae45e54c858a8d98b42685e5858180c0fda9ca7a8f39319c94e0330b744488505e820c918c15364428235f1cfdebf462222ce
|
|
7
|
+
data.tar.gz: d95a016a7674c4beec883e253f10d66d081aad67fbdc986b8c13a0fccd919bcaca05991a9beecc9bcb3ddac49d7929698dfa2c5339f10ebe56e77a2e5fa7eb2c
|
|
@@ -16,9 +16,14 @@ RSpec::Matchers.define :be_valid_javascript do
|
|
|
16
16
|
cxt.eval(actual)
|
|
17
17
|
''
|
|
18
18
|
rescue V8::Error => e
|
|
19
|
+
#e.in_javascript? => true
|
|
20
|
+
|
|
21
|
+
# this looks more like a runtime error rather than parse error
|
|
22
|
+
return '' if e.root_cause.to_s.include?('is not defined')
|
|
23
|
+
|
|
19
24
|
# Because <eval> doesn't provide any meaningful context info here:k:w
|
|
20
25
|
# Invalid regular expression: missing / at <eval>:4:12
|
|
21
|
-
e.root_cause.message.gsub('<eval>:', '')
|
|
26
|
+
e.root_cause.message.gsub('<eval>:', '') + "\nActual:\n#{actual}"
|
|
22
27
|
end
|
|
23
28
|
elsif defined?(MiniRacer)
|
|
24
29
|
context = MiniRacer::Context.new
|
|
@@ -28,7 +33,10 @@ RSpec::Matchers.define :be_valid_javascript do
|
|
|
28
33
|
rescue MiniRacer::ParseError => e
|
|
29
34
|
# Because default is:
|
|
30
35
|
# "Uncaught SyntaxError: Invalid regular expression: missing / at undefined:4:10"
|
|
31
|
-
e.message.gsub('Uncaught SyntaxError: ', '').gsub(' undefined:', ' ')
|
|
36
|
+
e.message.gsub('Uncaught SyntaxError: ', '').gsub(' undefined:', ' ') + "\nActual:\n#{actual}"
|
|
37
|
+
rescue MiniRacer::RuntimeError => e
|
|
38
|
+
# Most likely smth like: "ReferenceError: $ is not defined" which we don't care about in specs
|
|
39
|
+
''
|
|
32
40
|
end
|
|
33
41
|
else
|
|
34
42
|
%(Maker sure you have "mini_racer" or "therubyracer" gem in your Gemfile dependencies)
|
data/lib/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rspec-javascript-matchers
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Nikita Fedyashev
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2018-06-
|
|
11
|
+
date: 2018-06-17 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rspec
|