summaryrefslogtreecommitdiff
path: root/test/test_hoe_package.rb
blob: 9cd7b5b0e4df395168a02b548c839325f17fbde1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
require "minitest/autorun"
require "hoe"

Hoe.load_plugins

class TestHoePackage < Minitest::Test
  def setup
    @orig_PRE        = ENV["PRE"]
    @orig_PRERELEASE = ENV["PRERELEASE"]

    ENV.delete "PRE"
    ENV.delete "PRERELEASE"

    @tester = Module.new do
      include Hoe::Package

      extend self

      initialize_package

      @spec = Gem::Specification.new do |s|
        s.version = "1.2.3"
      end

      attr_reader :spec
    end
  end

  def teardown
    ENV["PRE"]        = @orig_PRE
    ENV["PRERELEASE"] = @orig_PRERELEASE
  end

  def test_prerelease_version_pre
    ENV["PRE"] = "pre.0"

    @tester.prerelease_version

    expected = Gem::Version.new "1.2.3.pre.0"

    assert_equal expected, @tester.spec.version
  end

  def test_prerelease_version_prerelease
    ENV["PRERELEASE"] = "prerelease.0"

    @tester.prerelease_version

    expected = Gem::Version.new "1.2.3.prerelease.0"

    assert_equal expected, @tester.spec.version
  end

  def test_prerelease_version_regular
    @tester.prerelease_version

    expected = Gem::Version.new "1.2.3"

    assert_equal expected, @tester.spec.version
  end
end