~ubuntu-branches/ubuntu/quantal/ruby1.9.1/quantal

« back to all changes in this revision

Viewing changes to test/rubygems/test_gem_commands_dependency_command.rb

  • Committer: Bazaar Package Importer
  • Author(s): Lucas Nussbaum
  • Date: 2011-09-24 19:16:17 UTC
  • mfrom: (1.1.8 upstream) (13.1.7 experimental)
  • Revision ID: james.westby@ubuntu.com-20110924191617-o1qz4rcmqjot8zuy
Tags: 1.9.3~rc1-1
* New upstream release: 1.9.3 RC1.
  + Includes load.c fixes. Closes: #639959.
* Upload to unstable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
require_relative 'gemutilities'
 
1
require 'rubygems/test_case'
2
2
require 'rubygems/commands/dependency_command'
3
3
 
4
 
class TestGemCommandsDependencyCommand < RubyGemTestCase
 
4
class TestGemCommandsDependencyCommand < Gem::TestCase
5
5
 
6
6
  def setup
7
7
    super
18
18
      gem.add_dependency 'baz', '> 1'
19
19
    end
20
20
 
21
 
    Gem.source_index = nil
22
 
 
23
21
    @cmd.options[:args] = %w[foo]
24
22
 
25
23
    use_ui @ui do
26
24
      @cmd.execute
27
25
    end
28
26
 
29
 
    assert_equal "Gem foo-2\n  bar (> 1, runtime)\n  baz (> 1, runtime)\n\n",
 
27
    assert_equal "Gem foo-2\n  bar (> 1)\n  baz (> 1)\n\n",
30
28
                 @ui.output
31
29
    assert_equal '', @ui.error
32
30
  end
33
31
 
34
32
  def test_execute_no_args
35
 
    Gem.source_index = nil
36
 
 
37
33
    @cmd.options[:args] = []
38
34
 
39
35
    use_ui @ui do
66
62
  def test_execute_no_match
67
63
    @cmd.options[:args] = %w[foo]
68
64
 
69
 
    assert_raises MockGemUi::TermError do
 
65
    assert_raises Gem::MockGemUi::TermError do
70
66
      use_ui @ui do
71
67
        @cmd.execute
72
68
      end
77
73
  end
78
74
 
79
75
  def test_execute_pipe_format
80
 
    quick_gem 'foo' do |gem|
 
76
    quick_spec 'foo' do |gem|
81
77
      gem.add_dependency 'bar', '> 1'
82
78
    end
83
79
 
93
89
  end
94
90
 
95
91
  def test_execute_regexp
96
 
    Gem.source_index = nil
97
 
 
98
92
    @cmd.options[:args] = %w[/[ab]/]
99
93
 
100
94
    use_ui @ui do
121
115
  end
122
116
 
123
117
  def test_execute_reverse
 
118
    # FIX: this shouldn't need to write out, but fails if you switch it
124
119
    quick_gem 'foo' do |gem|
125
120
      gem.add_dependency 'bar', '> 1'
126
121
    end
129
124
      gem.add_dependency 'foo'
130
125
    end
131
126
 
132
 
    Gem.source_index = nil
133
 
 
134
127
    @cmd.options[:args] = %w[foo]
135
128
    @cmd.options[:reverse_dependencies] = true
136
129
 
140
133
 
141
134
    expected = <<-EOF
142
135
Gem foo-2
143
 
  bar (> 1, runtime)
 
136
  bar (> 1)
144
137
  Used by
145
 
    baz-2 (foo (>= 0, runtime))
 
138
    baz-2 (foo (>= 0))
146
139
 
147
140
    EOF
148
141
 
155
148
    @cmd.options[:reverse_dependencies] = true
156
149
    @cmd.options[:domain] = :remote
157
150
 
158
 
    assert_raises MockGemUi::TermError do
 
151
    assert_raises Gem::MockGemUi::TermError do
159
152
      use_ui @ui do
160
153
        @cmd.execute
161
154
      end
188
181
      @cmd.execute
189
182
    end
190
183
 
191
 
    assert_equal "Gem foo-2\n  bar (> 1, runtime)\n\n", @ui.output
 
184
    assert_equal "Gem foo-2\n  bar (> 1)\n\n", @ui.output
 
185
    assert_equal '', @ui.error
 
186
  end
 
187
 
 
188
  def test_execute_remote_version
 
189
    @fetcher = Gem::FakeFetcher.new
 
190
    Gem::RemoteFetcher.fetcher = @fetcher
 
191
 
 
192
    util_setup_spec_fetcher @a1, @a2
 
193
 
 
194
    @cmd.options[:args] = %w[a]
 
195
    @cmd.options[:domain] = :remote
 
196
    @cmd.options[:version] = req '= 1'
 
197
 
 
198
    use_ui @ui do
 
199
      @cmd.execute
 
200
    end
 
201
 
 
202
    assert_equal "Gem a-1\n\n", @ui.output
192
203
    assert_equal '', @ui.error
193
204
  end
194
205
 
196
207
    @fetcher = Gem::FakeFetcher.new
197
208
    Gem::RemoteFetcher.fetcher = @fetcher
198
209
 
 
210
    util_clear_gems
199
211
    util_setup_spec_fetcher @a2_pre
200
212
 
201
 
    FileUtils.rm File.join(@gemhome, 'specifications', @a2_pre.spec_name)
202
 
 
203
213
    @cmd.options[:args] = %w[a]
204
214
    @cmd.options[:domain] = :remote
205
215
    @cmd.options[:prerelease] = true