Sha256: 549364a45bf9a1f39c175375cc9ca14f957fbb76f4e4c37561b59b8d7f66427b

Contents?: true

Size: 1.92 KB

Versions: 2

Compression:

Stored size: 1.92 KB

Contents

require File.expand_path '../test_helper.rb', __FILE__

class DeepThoughtCIServiceTest < MiniTest::Unit::TestCase
  def setup
    DatabaseCleaner.start

    DeepThought::CIService.adapters = {}
    DeepThought::CIService.ci_service = nil
  end

  def teardown
    DatabaseCleaner.clean
  end

  def test_no_ci_service
    DeepThought::CIService.setup({})

    assert !DeepThought::CIService.ci_service
  end

  def test_ci_service_not_found
    assert_raises(DeepThought::CIService::CIServiceNotFoundError) { DeepThought::CIService.setup({"CI_SERVICE" => "no-service"}) }
  end

  def test_ci_service_setup_failed
    ci_service = mock('class')
    ci_service.expects(:new).returns(ci_service)
    ci_service.expects(:setup?).with({"CI_SERVICE" => "mock"}).returns(false)
    DeepThought::CIService.register_adapter('mock', ci_service)
    assert_raises(DeepThought::CIService::CIServiceSetupFailedError) { DeepThought::CIService.setup({"CI_SERVICE" => "mock"}) }
  end

  def test_ci_service_is_branch_green_success
    ci_service = mock('class')
    ci_service.expects(:new).returns(ci_service)
    ci_service.expects(:setup?).with({"CI_SERVICE" => "mock"}).returns(true)
    ci_service.expects(:is_branch_green?).with('app', 'master', 'hash').returns(true)
    DeepThought::CIService.register_adapter('mock', ci_service)
    DeepThought::CIService.setup({"CI_SERVICE" => "mock"})
    assert DeepThought::CIService.is_branch_green?('app', 'master', 'hash')
  end

  def test_ci_service_is_branch_green_failed
    ci_service = mock('class')
    ci_service.expects(:new).returns(ci_service)
    ci_service.expects(:setup?).with({"CI_SERVICE" => "mock"}).returns(true)
    ci_service.expects(:is_branch_green?).with('app', 'master', 'hash').returns(false)
    DeepThought::CIService.register_adapter('mock', ci_service)
    DeepThought::CIService.setup({"CI_SERVICE" => "mock"})
    assert !DeepThought::CIService.is_branch_green?('app', 'master', 'hash')
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
deep_thought-0.2.1 test/deep_thought_ci_service_test.rb
deep_thought-0.1.1 test/deep_thought_ci_service_test.rb