1require 'rubygems/test_case'
2require 'rubygems/source_specific_file'
3
4class TestGemSourceSpecificFile < Gem::TestCase
5  def setup
6    super
7
8    @a, @a_gem = util_gem "a", '1'
9    @sf = Gem::Source::SpecificFile.new(@a_gem)
10  end
11
12  def test_spec
13    assert_equal @a, @sf.spec
14  end
15
16  def test_load_specs
17    assert_equal [@a.name_tuple], @sf.load_specs
18  end
19
20  def test_fetch_spec
21    assert_equal @a, @sf.fetch_spec(@a.name_tuple)
22  end
23
24  def test_fetch_spec_fails_on_unknown_name
25    assert_raises Gem::Exception do
26      @sf.fetch_spec(nil)
27    end
28  end
29
30  def test_download
31    assert_equal @a_gem, @sf.download(@a)
32  end
33end
34