discourse/lib/tasks/smoke_test.rake

27 lines
652 B
Ruby
Raw Normal View History

2013-02-21 09:07:22 +08:00
desc "run phantomjs based smoke tests on current build"
2013-02-21 13:01:18 +08:00
task "smoke:test" => :environment do
phantom_path = File.expand_path('~/phantomjs/bin/phantomjs')
phantom_path = nil unless File.exists?(phantom_path)
phantom_path = phantom_path || 'phantomjs'
url = ENV["URL"] || Discourse.base_url
2013-02-21 13:37:17 +08:00
2013-02-21 13:01:18 +08:00
puts "Testing: #{url}"
2013-02-21 13:37:17 +08:00
require 'open-uri'
require 'net/http'
res = Net::HTTP.get_response(URI.parse(url))
if res.code != "200"
raise "TRIVIAL GET FAILED WITH #{res.code}"
end
2013-02-21 13:01:18 +08:00
results = `#{phantom_path} #{Rails.root}/spec/phantom_js/smoke_test.js #{url}`
2013-02-21 09:07:22 +08:00
puts results
2013-02-21 13:01:18 +08:00
if results !~ /ALL PASSED/
raise "FAILED"
end
2013-02-21 09:07:22 +08:00
end