Sha256: 97746536767fbe54e076b6c6a85a16f41ed171392d0f4cdf73fc06a3c2d8c016

Contents?: true

Size: 1.28 KB

Versions: 10

Compression:

Stored size: 1.28 KB

Contents

require "spec_helper"

module Capistrano
  class Configuration
    describe SCMResolver do
      include Capistrano::DSL

      let(:resolver) { SCMResolver.new }

      before do
        Rake::Task.define_task("deploy:check")
        Rake::Task.define_task("deploy:new_release_path")
        Rake::Task.define_task("deploy:set_current_revision")
        set :scm, SCMResolver::DEFAULT_GIT
      end

      after do
        Rake::Task.clear
        Capistrano::Configuration.reset!
      end

      context "default scm, no plugin installed" do
        it "emits a warning" do
          expect { resolver.resolve }.to output(/will not load the git scm/i).to_stderr
        end

        it "activates the git scm" do
          resolver.resolve
          expect(Rake::Task["git:wrapper"]).not_to be_nil
        end

        it "sets :scm to :git" do
          resolver.resolve
          expect(fetch(:scm)).to eq(:git)
        end
      end

      context "default scm, git plugin installed" do
        before do
          install_plugin Capistrano::SCM::Git
        end

        it "emits no warning" do
          expect { resolver.resolve }.not_to output.to_stderr
        end

        it "deletes :scm" do
          resolver.resolve
          expect(fetch(:scm)).to be_nil
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 2 rubygems

Version Path
honeybadger-4.5.3 vendor/bundle/ruby/2.6.0/gems/capistrano-3.11.0/spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.11.0 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.10.2 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.10.1 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.10.0 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.9.1 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.9.0 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.8.2 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.8.1 spec/lib/capistrano/configuration/scm_resolver_spec.rb
capistrano-3.8.0 spec/lib/capistrano/configuration/scm_resolver_spec.rb