Skip to content

Commit e7f6d37

Browse files
committed
[tests] simplify custom cross-runtime expectation matchers
(cherry picked from commit 9e80b84) # Conflicts: # src/spec/ruby/jruby/rack/booter_spec.rb
1 parent c68cff6 commit e7f6d37

File tree

3 files changed

+25
-42
lines changed

3 files changed

+25
-42
lines changed

src/spec/ruby/jruby/rack/booter_spec.rb

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -299,17 +299,17 @@
299299
@runtime.evalScriptlet("load 'jruby/rack/boot/rack.rb'")
300300

301301
# booter got setup :
302-
should_not_eval_as_nil "defined?(JRuby::Rack.booter)"
303-
should_not_eval_as_nil "JRuby::Rack.booter"
302+
should_eval_as_not_nil "defined?(JRuby::Rack.booter)"
303+
should_eval_as_not_nil "JRuby::Rack.booter"
304304
should_eval_as_eql_to "JRuby::Rack.booter.class.name", 'JRuby::Rack::Booter'
305305

306306
# Booter.boot! run :
307-
should_not_eval_as_nil "ENV['RACK_ENV']"
307+
should_eval_as_not_nil "ENV['RACK_ENV']"
308308
# rack got required :
309-
should_not_eval_as_nil "defined?(Rack::VERSION)"
310-
should_not_eval_as_nil "defined?(Rack.release)"
309+
should_eval_as_not_nil "defined?(Rack::VERSION)"
310+
should_eval_as_not_nil "defined?(Rack.release)"
311311
# check if it got loaded correctly :
312-
should_not_eval_as_nil "Rack::Request.new({}) rescue nil"
312+
should_eval_as_not_nil "Rack::Request.new({}) rescue nil"
313313
end
314314

315315
end
@@ -346,13 +346,13 @@
346346
@runtime.evalScriptlet("load 'jruby/rack/boot/rails.rb'")
347347

348348
# booter got setup :
349-
should_not_eval_as_nil "defined?(JRuby::Rack.booter)"
350-
should_not_eval_as_nil "JRuby::Rack.booter"
349+
should_eval_as_not_nil "defined?(JRuby::Rack.booter)"
350+
should_eval_as_not_nil "JRuby::Rack.booter"
351351
should_eval_as_eql_to "JRuby::Rack.booter.class.name", 'JRuby::Rack::RailsBooter'
352352

353353
# Booter.boot! run :
354-
should_not_eval_as_nil "ENV['RACK_ENV']"
355-
should_not_eval_as_nil "ENV['RAILS_ENV']"
354+
should_eval_as_not_nil "ENV['RACK_ENV']"
355+
should_eval_as_not_nil "ENV['RAILS_ENV']"
356356

357357
# rack not yet required (let bundler decide which rack version to load) :
358358
should_eval_as_nil "defined?(Rack::VERSION)"

src/spec/ruby/rack/application_spec.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -300,8 +300,8 @@ def newRuntime()
300300

301301
it "creates a new Ruby runtime with the jruby-rack environment pre-loaded" do
302302
@runtime = app_factory.newRuntime
303-
should_not_eval_as_nil "defined?(::Rack)"
304-
should_not_eval_as_nil "defined?(::Rack::Handler::Servlet)"
303+
should_eval_as_not_nil "defined?(::Rack)"
304+
should_eval_as_not_nil "defined?(::Rack::Handler::Servlet)"
305305
should_eval_as_nil "defined?(Rack::Handler::Bogus)"
306306
end
307307

@@ -330,7 +330,7 @@ def newRuntime()
330330
app_factory.checkAndSetRackVersion(@runtime)
331331
@runtime.evalScriptlet "require 'rack'"
332332

333-
should_not_eval_as_nil "defined?(Bundler)"
333+
should_eval_as_not_nil "defined?(Bundler)"
334334
should_eval_as_eql_to "Rack.release", '2.2.0'
335335
should_eval_as_eql_to "Gem.loaded_specs['rack'].version.to_s", '2.2.0'
336336
end

src/spec/ruby/spec_helper.rb

Lines changed: 12 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -86,42 +86,25 @@ def expect_eql_java_bytes(actual, expected)
8686

8787
# org.jruby.Ruby.evalScriptlet helpers - comparing values from different runtimes
8888

89-
def should_eval_as_eql_to(code, expected, options = {})
90-
if options.is_a?(Hash)
91-
runtime = options[:runtime] || @runtime
92-
else
93-
runtime, options = options, {}
94-
end
95-
message = options[:message] || "expected eval #{code.inspect} to be == $expected but was $actual"
96-
be_flag = options.has_key?(:should) ? options[:should] : be_truthy
97-
98-
expected = expected.inspect.to_java
99-
actual = runtime.evalScriptlet(code).inspect.to_java
100-
expect(actual.equals(expected)).to be_flag, message.gsub('$expected', expected.to_s).gsub('$actual', actual.to_s)
89+
def should_eval_as_eql_to(code, expected)
90+
actual = @runtime.evalScriptlet(code)
91+
expect(actual.inspect).to eq(expected.inspect), "expected eval #{code.inspect} to be == #{expected.to_s} but was #{actual.to_s}"
10192
end
10293

103-
def should_eval_as_not_eql_to(code, expected, options = {})
104-
should_eval_as_eql_to(code, expected, options.merge(
105-
:should => be_falsy,
106-
:message => options[:message] || "expected eval #{code.inspect} to be != $expected but was not")
107-
)
94+
def should_eval_as_not_eql_to(code, expected)
95+
actual = @runtime.evalScriptlet(code)
96+
expect(actual.inspect).not_to eq(expected.inspect), "expected eval #{code.inspect} NOT to be == #{expected.to_s}"
10897
end
10998

110-
def should_eval_as_nil(code, runtime = @runtime)
111-
should_eval_as_eql_to code, nil, :runtime => runtime,
112-
:message => "expected eval #{code.inspect} to be nil but was $actual"
99+
def should_eval_as_nil(code)
100+
actual = @runtime.evalScriptlet(code)
101+
expect(actual).to be_nil, "expected eval #{code.inspect} to be nil but was #{actual.to_s}"
113102
end
114103

115-
def should_eval_as_not_nil(code, runtime = @runtime)
116-
should_eval_as_eql_to code, nil, :should => be_falsy, :runtime => runtime,
117-
:message => "expected eval #{code.inspect} to not be nil but was"
104+
def should_eval_as_not_nil(code)
105+
actual = @runtime.evalScriptlet(code)
106+
expect(actual).to_not be_nil, "expected eval #{code.inspect} to not be nil"
118107
end
119-
120-
def should_not_eval_as_nil(code, runtime = @runtime)
121-
# alias
122-
should_eval_as_not_nil(code, runtime)
123-
end
124-
125108
end
126109

127110
# NOTE: avoid chunked-patch (loaded by default from a hook at

0 commit comments

Comments
 (0)