|
193 | 193 | end |
194 | 194 |
|
195 | 195 | 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 } |
197 | 197 |
|
198 | 198 | context "when not specified in Gemfile" do |
199 | 199 | 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" |
201 | 202 |
|
202 | 203 | install_gemfile "source \"https://gem.repo1\"" |
203 | 204 | end |
204 | 205 |
|
205 | 206 | it "uses version provided by ruby" do |
206 | | - bundle "exec erb --version" |
| 207 | + bundle "exec ruby --disable-syntax-suggest -S syntax_suggest --version" |
207 | 208 |
|
208 | | - expect(out).to include(default_erb_version) |
| 209 | + expect(out).to include(default_ss_version) |
209 | 210 | end |
210 | 211 | end |
211 | 212 |
|
212 | 213 | context "when specified in Gemfile directly" do |
213 | | - let(:specified_erb_version) { "2.2.3" } |
| 214 | + let(:specified_ss_version) { "2.0.0" } |
214 | 215 |
|
215 | 216 | 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? |
217 | 218 |
|
218 | 219 | 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" |
221 | 222 | end |
222 | 223 | end |
223 | 224 |
|
224 | 225 | install_gemfile <<-G |
225 | 226 | source "https://gem.repo2" |
226 | | - gem "erb", "#{specified_erb_version}" |
| 227 | + gem "syntax_suggest", "#{specified_ss_version}" |
227 | 228 | G |
228 | 229 | end |
229 | 230 |
|
230 | 231 | it "uses version specified" do |
231 | | - bundle "exec erb --version" |
| 232 | + bundle "exec ruby --disable-syntax-suggest -S syntax_suggest --version" |
232 | 233 |
|
233 | | - expect(out).to eq(specified_erb_version) |
| 234 | + expect(out).to eq(specified_ss_version) |
234 | 235 | expect(err).to be_empty |
235 | 236 | end |
236 | 237 | end |
237 | 238 |
|
238 | 239 | context "when specified in Gemfile indirectly" do |
239 | | - let(:indirect_erb_version) { "2.2.3" } |
| 240 | + let(:indirect_ss_version) { "2.0.0" } |
240 | 241 |
|
241 | 242 | 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? |
243 | 244 |
|
244 | 245 | 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" |
247 | 248 | end |
248 | 249 |
|
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 |
251 | 252 | end |
252 | 253 | end |
253 | 254 |
|
254 | 255 | install_gemfile <<-G |
255 | 256 | source "https://gem.repo2" |
256 | | - gem "gem_depending_on_old_erb" |
| 257 | + gem "gem_depending_on_old_ss" |
257 | 258 | G |
258 | 259 |
|
259 | | - bundle "exec erb --version" |
| 260 | + bundle "exec ruby --disable-syntax-suggest -S syntax_suggest --version" |
260 | 261 | end |
261 | 262 |
|
262 | 263 | it "uses resolved version" do |
263 | | - expect(out).to eq(indirect_erb_version) |
| 264 | + expect(out).to eq(indirect_ss_version) |
264 | 265 | expect(err).to be_empty |
265 | 266 | end |
266 | 267 | end |
|
657 | 658 | gem "foo", :path => "#{lib_path("foo-1.0")}" |
658 | 659 | G |
659 | 660 |
|
660 | | - bundle "exec erb", raise_on_error: false |
| 661 | + bundle "exec syntax_suggest", raise_on_error: false |
661 | 662 |
|
662 | 663 | expect(err).to match("The gemspec at #{lib_path("foo-1.0").join("foo.gemspec")} is not valid") |
663 | 664 | expect(err).to match(/missing value for attribute rubygems_version|rubygems_version must not be nil/) |
|
0 commit comments