summaryrefslogtreecommitdiff
path: root/spec/bundler/gem_helper_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/bundler/gem_helper_spec.rb')
-rw-r--r--spec/bundler/gem_helper_spec.rb46
1 files changed, 14 insertions, 32 deletions
diff --git a/spec/bundler/gem_helper_spec.rb b/spec/bundler/gem_helper_spec.rb
index 134fc87099..ea0ca2b283 100644
--- a/spec/bundler/gem_helper_spec.rb
+++ b/spec/bundler/gem_helper_spec.rb
@@ -50,44 +50,26 @@ describe "Bundler::GemHelper tasks" do
mock_confirm_message "test 0.0.1 built to pkg/test-0.0.1.gem."
end
- before(:each) do
- bundle 'gem test'
- @app = bundled_app("test")
- @gemspec = File.read("#{@app.to_s}/test.gemspec")
- File.open("#{@app.to_s}/test.gemspec", 'w'){|f| f << @gemspec.gsub('TODO: ', '') }
- @helper = Bundler::GemHelper.new(@app.to_s)
- end
-
- it "uses a shell UI for output" do
- expect(Bundler.ui).to be_a(Bundler::UI::Shell)
+ around do |it|
+ Dir.chdir(bundled_app){ bundle 'gem test' }
+ gemspec_path = bundled_app("test/test.gemspec")
+ working_spec = gemspec_path.read.gsub('TODO: ', '')
+ gemspec_path.open('w'){|f| f << working_spec }
+
+ old, Rake.application = Rake.application, Rake::Application.new
+ Bundler::GemHelper.install_tasks(:dir => bundled_app("test"), :name => 'test')
+ it.run
+ Rake.application = old
end
describe 'install_tasks' do
- before(:each) do
- @saved, Rake.application = Rake.application, Rake::Application.new
- end
-
- after(:each) do
- Rake.application = @saved
- end
-
it "defines Rake tasks" do
- names = %w[build install release]
-
- names.each { |name|
- expect { Rake.application[name] }.to raise_error(/Don't know how to build task/)
- }
-
- @helper.install
-
- names.each { |name|
- expect { Rake.application[name] }.not_to raise_error
- expect(Rake.application[name]).to be_instance_of Rake::Task
- }
+ %w[build install release].each do |task|
+ expect(Rake.application[task]).to be_a(Rake::Task)
+ end
end
it "provides a way to access the gemspec object" do
- @helper.install
expect(Bundler::GemHelper.gemspec.name).to eq('test')
end
end
@@ -95,7 +77,7 @@ describe "Bundler::GemHelper tasks" do
describe 'build' do
it "builds" do
mock_build_message
- @helper.build_gem
+ Rake.application[:build].execute
expect(bundled_app('test/pkg/test-0.0.1.gem')).to exist
end