Sha256: cf805e9d3be6dc8b398532ceeae66c6b1222b0d0e6c0cb1629e6663496e04bff

Contents?: true

Size: 1.21 KB

Versions: 8

Compression:

Stored size: 1.21 KB

Contents

TEST_CHANGES_SINCE = Time.now - 600

namespace :test do
  namespace :recent do
    desc "Open recently modified files into browser"
    task :javascript do
      require 'rubygems'
      gem 'activesupport'
      require 'active_support'

      since = TEST_CHANGES_SINCE
      touched = FileList[
        'test/unit/*_test.html', 
        'src/*.js'].select { |path| File.mtime(path) > since }
      next if touched.blank?
      
      gem 'newjs'
      require 'newjs'
      require 'newjs/autotest'
      
      touched.each do |file|
        if file =~ /\/([^\/]+)\.js$/
          file = "test/unit/#{$1}_test.html"
        end
        file = "#{APP_ROOT}/#{file}"
        unless File.exists?(file)
          puts "Notice: Test file does not exist: #{file}"
          next
        end
        browsers = JavascriptTestAutotest::Config.get :browsers
        if browsers.blank?
          puts "WARNING: No browsers setup in config/javascript_test_autotest.yml"
          next
        end
        browsers.each_pair do |name, path|
          browser = JavascriptTestAutotest::Browser.browser(name, path)
          browser.setup
          browser.visit(file)
          browser.teardown          
        end
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
newjs-1.7.4 vendor/jsunittest/tasks/javascript_test_autotest_tasks.rake
newjs-1.2.0 app_generators/newjs/templates/tasks/javascript_test_autotest_tasks.rake
newjs-1.2.1 app_generators/newjs/templates/tasks/javascript_test_autotest_tasks.rake
newjs-1.3.0 app_generators/newjs/templates/tasks/javascript_test_autotest_tasks.rake
newjs-1.1.0 app_generators/newjs/templates/tasks/javascript_test_autotest_tasks.rake
newjs-1.7.1 vendor/jsunittest/tasks/javascript_test_autotest_tasks.rake
newjs-1.7.0 vendor/jsunittest/tasks/javascript_test_autotest_tasks.rake
newjs-1.7.2 vendor/jsunittest/tasks/javascript_test_autotest_tasks.rake