Sha256: 4a790a4adea8e182001d8b0bdd2c754a674ab8375a2ae569ed5b9266c207c73d

Contents?: true

Size: 1.47 KB

Versions: 4

Compression:

Stored size: 1.47 KB

Contents

require File.dirname(__FILE__) + '/test_helper'

class RakeTest < Test::Unit::TestCase
  def setup
    @rakefile = File.expand_path(File.join(File.dirname(__FILE__),'rake_test.rake'))
  end

  def test_should_run_rake_task
    using 'astrovan.local', :password => ENV['PASSWORD'], :rakefile => @rakefile do
      rake 'succeed'
    end
  end

  def test_should_fail_when_rake_task_fails
    assert_raise(RuntimeError) do
      using 'astrovan.local', :password => ENV['PASSWORD'], :rakefile => @rakefile do
        rake 'fail'
      end
    end
  end

  def test_should_fail_when_rake_task_not_defined
    assert_raise(RuntimeError) do
      using 'astrovan.local', :password => ENV['PASSWORD'], :rakefile => @rakefile do
        rake 'undefined'
      end
    end
  end

  def test_should_define_methods_to_run_rake_task
    using 'astrovan.local', :password => ENV['PASSWORD'] do
      raise "succeed method should not be defined" if methods.include?('succeed')
      raise "fail method should not be defined" if methods.include?('fail')
      surrogates :succeed => 'success', :fail => 'failure'
      raise "succeed method should be defined" unless methods.include?('succeed')
      raise "fail method should be defined" unless methods.include?('fail')
    end
  end

  def test_should_fail_to_define_method_if_already_defined
    assert_raise(ArgumentError) do
      using 'astrovan.local', :password => ENV['PASSWORD'] do
        surrogate :freeze => 'rails:freeze:edge'
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sbfaulkner-astrovan-0.5.0 test/rake_test.rb
sbfaulkner-astrovan-0.5.2 test/rake_test.rb
sbfaulkner-astrovan-0.5.3 test/rake_test.rb
sbfaulkner-astrovan-0.5.4 test/rake_test.rb