[DRE-commits] [gem2deb] 01/01: add smoke-test
Praveen Arimbrathodiyil
praveen at moszumanska.debian.org
Wed Sep 16 20:05:21 UTC 2015
This is an automated email from the git hooks/post-receive script.
praveen pushed a commit to branch smoke-test
in repository gem2deb.
commit c4ccfad2fc3962b2cecea96a51206e469d6a8853
Author: Praveen Arimbrathodiyil <praveen at debian.org>
Date: Thu Sep 17 01:34:28 2015 +0530
add smoke-test
---
bin/gem2deb-test-runner | 4 ++++
lib/gem2deb/test_runner.rb | 38 ++++++++++++++++++++++++++++++++++++++
2 files changed, 42 insertions(+)
diff --git a/bin/gem2deb-test-runner b/bin/gem2deb-test-runner
index edc9ac0..42c3518 100755
--- a/bin/gem2deb-test-runner
+++ b/bin/gem2deb-test-runner
@@ -42,6 +42,10 @@ optparse = OptionParser.new do |opts|
options[:check_dependencies] = true
end
+ opts.on('-s', '--smoke-assets', 'Run smoke test on assets') do
+ options[:smoke_assets] = true
+ end
+
end
optparse.parse!
diff --git a/lib/gem2deb/test_runner.rb b/lib/gem2deb/test_runner.rb
index 9af2498..6540902 100644
--- a/lib/gem2deb/test_runner.rb
+++ b/lib/gem2deb/test_runner.rb
@@ -16,6 +16,7 @@
require 'rbconfig'
require 'fileutils'
require 'shellwords'
+require 'tmpdir'
require 'gem2deb/banner'
require 'gem2deb/metadata'
@@ -27,6 +28,7 @@ module Gem2Deb
attr_accessor :autopkgtest
attr_accessor :check_dependencies
+ attr_accessor :smoke_assets
def load_path
if self.autopkgtest
@@ -67,6 +69,9 @@ module Gem2Deb
if check_dependencies
do_check_dependencies
end
+ if smoke_assets
+ do_smoke_assets
+ end
do_run_tests
end
@@ -85,6 +90,39 @@ module Gem2Deb
end
end
+ def do_smoke_assets
+ print_banner "Running smoke test for rails assets on #{rubyver}"
+ metadata = Gem2Deb::Metadata.new('.')
+ if metadata.name =~ /^rails-assets/
+ asset_name = metadata.name.split('rails-assets-')[1]
+ do_smoke(asset_name, metadata.name)
+ elsif metadata.name =~ /-rails$/
+ asset_name = metadata.name.split('-rails')[0]
+ do_smoke(asset_name, metadata.name)
+ end
+ end
+
+ def do_smoke(asset, gem)
+ print_banner "Running smoke test for #{asset}"
+ if ENV['ADTTMP']
+ tmpdir = ENV['ADTTMP']
+ else
+ tmpdir = Dir.mktmpdir
+ end
+ Dir.chdir(tmpdir)
+ # 'rails new foo' throws errors which cause autopkgtest to fail
+ system "rails new foo >/dev/null 2>&1"
+ Dir.chdir("foo")
+ open('app/assets/javascripts/application.js', 'a') { |f|
+ f.puts "# =require #{asset}"
+ }
+ open('Gemfile', 'a') { |f|
+ f.puts "gem \'#{gem}\'"
+ }
+ system "bundle install --local"
+ system "bundle exec rake assets:precompile"
+ end
+
# Override in subclasses
def do_run_tests
end
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/gem2deb.git
More information about the Pkg-ruby-extras-commits
mailing list