Skip to content

Commit 921ca9d

Browse files
committed
Use syntax_suggest instead of erb executable.
erb is only working with Ruby 3.5dev.
1 parent 2dff416 commit 921ca9d

File tree

1 file changed

+22
-21
lines changed

1 file changed

+22
-21
lines changed

spec/bundler/commands/exec_spec.rb

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -193,74 +193,75 @@
193193
end
194194

195195
context "with default gems" do
196-
let(:default_erb_version) { ruby "gem 'erb', '< 999999'; require 'erb'; puts ERB.const_get(:VERSION)", raise_on_error: false }
196+
let(:default_ss_version) { ruby "gem 'syntax_suggest', '< 999999'; require 'syntax_suggest/version'; puts SyntaxSuggest::VERSION", raise_on_error: false }
197197

198198
context "when not specified in Gemfile" do
199199
before do
200-
skip "erb isn't a default gem" if default_erb_version.empty?
200+
skip "syntax_suggest isn't a default gem" if default_ss_version.empty?
201+
skip "syntax_suggest executable is broken" if default_ss_version <= "1.1.0"
201202

202203
install_gemfile "source \"https://gem.repo1\""
203204
end
204205

205206
it "uses version provided by ruby" do
206-
bundle "exec erb --version"
207+
bundle "exec ruby --disable-syntax-suggest -S syntax_suggest --version"
207208

208-
expect(out).to include(default_erb_version)
209+
expect(out).to include(default_ss_version)
209210
end
210211
end
211212

212213
context "when specified in Gemfile directly" do
213-
let(:specified_erb_version) { "2.2.3" }
214+
let(:specified_ss_version) { "2.0.0" }
214215

215216
before do
216-
skip "erb isn't a default gem" if default_erb_version.empty?
217+
skip "syntax_suggest isn't a default gem" if default_ss_version.empty?
217218

218219
build_repo2 do
219-
build_gem "erb", specified_erb_version do |s|
220-
s.executables = "erb"
220+
build_gem "syntax_suggest", specified_ss_version do |s|
221+
s.executables = "syntax_suggest"
221222
end
222223
end
223224

224225
install_gemfile <<-G
225226
source "https://gem.repo2"
226-
gem "erb", "#{specified_erb_version}"
227+
gem "syntax_suggest", "#{specified_ss_version}"
227228
G
228229
end
229230

230231
it "uses version specified" do
231-
bundle "exec erb --version"
232+
bundle "exec ruby --disable-syntax-suggest -S syntax_suggest --version"
232233

233-
expect(out).to eq(specified_erb_version)
234+
expect(out).to eq(specified_ss_version)
234235
expect(err).to be_empty
235236
end
236237
end
237238

238239
context "when specified in Gemfile indirectly" do
239-
let(:indirect_erb_version) { "2.2.3" }
240+
let(:indirect_ss_version) { "2.0.0" }
240241

241242
before do
242-
skip "erb isn't a default gem" if default_erb_version.empty?
243+
skip "syntax_suggest isn't a default gem" if default_ss_version.empty?
243244

244245
build_repo2 do
245-
build_gem "erb", indirect_erb_version do |s|
246-
s.executables = "erb"
246+
build_gem "syntax_suggest", indirect_ss_version do |s|
247+
s.executables = "syntax_suggest"
247248
end
248249

249-
build_gem "gem_depending_on_old_erb" do |s|
250-
s.add_dependency "erb", indirect_erb_version
250+
build_gem "gem_depending_on_old_ss" do |s|
251+
s.add_dependency "syntax_suggest", indirect_ss_version
251252
end
252253
end
253254

254255
install_gemfile <<-G
255256
source "https://gem.repo2"
256-
gem "gem_depending_on_old_erb"
257+
gem "gem_depending_on_old_ss"
257258
G
258259

259-
bundle "exec erb --version"
260+
bundle "exec ruby --disable-syntax-suggest -S syntax_suggest --version"
260261
end
261262

262263
it "uses resolved version" do
263-
expect(out).to eq(indirect_erb_version)
264+
expect(out).to eq(indirect_ss_version)
264265
expect(err).to be_empty
265266
end
266267
end
@@ -657,7 +658,7 @@
657658
gem "foo", :path => "#{lib_path("foo-1.0")}"
658659
G
659660

660-
bundle "exec erb", raise_on_error: false
661+
bundle "exec syntax_suggest", raise_on_error: false
661662

662663
expect(err).to match("The gemspec at #{lib_path("foo-1.0").join("foo.gemspec")} is not valid")
663664
expect(err).to match(/missing value for attribute rubygems_version|rubygems_version must not be nil/)

0 commit comments

Comments
 (0)