Sha256: 60fd3b4c108ea5617197eb58f07033e1de1c5ac92c700b837b5a8b0b606545a5

Contents?: true

Size: 1.85 KB

Versions: 69

Compression:

Stored size: 1.85 KB

Contents

require File.expand_path("../common", __FILE__)
require "gem_publisher"

module GemPublisher
  class IntegrationTest < MiniTest::Unit::TestCase
    def setup
      Open3.stubs(:capture3)
    end

    def expect_cli(command, response = "")
      Open3.expects(:capture3).
        with(command).
        returns([response, "", stub(:exitstatus => 0)])
    end

    def test_should_build_and_tag_and_publish
      gemspec = data_file_path("example.gemspec")
      expect_cli "git ls-remote --tags origin", data_file("tags")
      expect_cli "gem build #{gemspec}", data_file("gem_build")
      expect_cli "gem push example-0.0.3.gem"
      expect_cli "git rev-parse HEAD", "1234abcd"
      expect_cli "git update-ref refs/tags/v0.0.3 1234abcd"
      expect_cli "git push origin tag v0.0.3"
      GemPublisher.publish_if_updated gemspec
    end

    def test_should_build_and_tag_and_publish_to_gemfury
      gemspec = data_file_path("example.gemspec")
      expect_cli "git ls-remote --tags origin", data_file("tags")
      expect_cli "gem build #{gemspec}", data_file("gem_build")
      expect_cli "fury push example-0.0.3.gem"
      expect_cli "git rev-parse HEAD", "1234abcd"
      expect_cli "git update-ref refs/tags/v0.0.3 1234abcd"
      expect_cli "git push origin tag v0.0.3"
      GemPublisher.publish_if_updated gemspec, :gemfury
    end

    def test_should_build_and_tag_and_publish_to_gemfury_as_given_user
      gemspec = data_file_path("example.gemspec")
      expect_cli "git ls-remote --tags origin", data_file("tags")
      expect_cli "gem build #{gemspec}", data_file("gem_build")
      expect_cli "fury push example-0.0.3.gem --as foo"
      expect_cli "git rev-parse HEAD", "1234abcd"
      expect_cli "git update-ref refs/tags/v0.0.3 1234abcd"
      expect_cli "git push origin tag v0.0.3"
      GemPublisher.publish_if_updated gemspec, :gemfury, :as => "foo"
    end
  end
end

Version data entries

69 entries across 65 versions & 18 rubygems

Version Path
logstash-output-scalyr-0.2.1.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.2.0 vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.2.0.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.26.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.25.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.24.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.23.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.22.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.21.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.20.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.19.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.18.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.17.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.16.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.15.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.14.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.13 vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.12 vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.11.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb
logstash-output-scalyr-0.1.10.beta vendor/bundle/jruby/2.5.0/gems/gem_publisher-1.5.0/test/integration_test.rb