Sha256: a1c991baab17fc32c1386146f7a1156e232cd798fbaccad98f37d214decba682

Contents?: true

Size: 1.76 KB

Versions: 63

Compression:

Stored size: 1.76 KB

Contents

require 'rubygems/test_case'
require 'rubygems/command'
require 'rubygems/version_option'

class TestGemVersionOption < Gem::TestCase

  def setup
    super

    @cmd = Gem::Command.new 'dummy', 'dummy'
    @cmd.extend Gem::VersionOption
  end

  def test_add_platform_option
    @cmd.add_platform_option

    assert @cmd.handles?(%w[--platform x86-darwin])
  end

  def test_add_version_option
    @cmd.add_version_option

    assert @cmd.handles?(%w[--version >1])
  end

  def test_enables_prerelease
    @cmd.add_version_option

    @cmd.handle_options %w[mygem -v 0.2.0.a]
    assert @cmd.options[:prerelease]

    @cmd.handle_options %w[mygem -v 0.2.0]
    refute @cmd.options[:prerelease]

    @cmd.handle_options %w[mygem]
    refute @cmd.options[:prerelease]
  end

  def test_platform_option
    @cmd.add_platform_option

    @cmd.handle_options %w[--platform x86-freebsd6 --platform x86-freebsd7]

    expected = [
      Gem::Platform::RUBY,
      Gem::Platform.new('x86-freebsd6'),
      Gem::Platform.new('x86-freebsd7'),
    ]

    assert_equal expected, Gem.platforms
  end

  def test_platform_option_ruby
    @cmd.add_platform_option

    @cmd.handle_options %w[--platform ruby]

    expected = [
      Gem::Platform::RUBY
    ]

    assert_equal expected, Gem.platforms
  end

  def test_platform_option_twice
    @cmd.add_platform_option

    @cmd.handle_options %w[--platform x86-freebsd6 --platform x86-freebsd-6]

    expected = [
      Gem::Platform::RUBY,
      Gem::Platform.new('x86-freebsd6'),
    ]

    assert_equal expected, Gem.platforms
  end

  def test_version_option
    @cmd.add_version_option

    @cmd.handle_options %w[--version >1]

    expected = { :version => Gem::Requirement.new('> 1'), :args => [] }

    assert_equal expected, @cmd.options
  end

end

Version data entries

63 entries across 63 versions & 1 rubygems

Version Path
rubygems-update-2.0.17 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.16 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.15 test/rubygems/test_gem_version_option.rb
rubygems-update-1.8.30 test/rubygems/test_gem_version_option.rb
rubygems-update-1.8.29 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.14 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.13 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.12 test/rubygems/test_gem_version_option.rb
rubygems-update-1.8.28 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.11 test/rubygems/test_gem_version_option.rb
rubygems-update-1.8.23.2 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.10 test/rubygems/test_gem_version_option.rb
rubygems-update-1.8.27 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.9 test/rubygems/test_gem_version_option.rb
rubygems-update-1.8.26 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.8 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.7 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.6 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.5 test/rubygems/test_gem_version_option.rb
rubygems-update-2.0.4 test/rubygems/test_gem_version_option.rb