Sha256: 9684d1e17918337af633b143e7686d7930fa0e9896baa04d6f5080c3ea884bba

Contents?: true

Size: 1.02 KB

Versions: 1

Compression:

Stored size: 1.02 KB

Contents

#!/usr/bin/env ruby

require 'test/unit'
require 'fileutils'

require 'rubygems/remote_installer'
require 'test/yaml_data'
require 'test/gemutilities'

class TestCachedFetcher < RubyGemTestCase

  class MockFetcher
    attr_reader :count
    attr_accessor :size

    def initialize
      @count = 0
      @size = 5
    end

    def fetch_path(path=nil)
    end
    
    def source_index
      @count += 1
    end
  end

  def setup
    super
    @source_uri = "http://localhost:12344"
    make_cache_area(@gemhome, @source_uri)
    @cf = Gem::CachedFetcher.new(@source_uri, nil)
    @mf = MockFetcher.new
    @cf.instance_variable_set("@fetcher", @mf)
  end

  def test_create
    assert_not_nil @cf
    assert_equal 5, @cf.size
    assert_equal 0, @mf.count
  end

  def test_cache_miss
    @cf.source_index
    assert_equal 1, @mf.count
  end

  def test_cache_hit
    @mf.size = YAML_DATA.size
    @cf.source_index
    assert_equal 0, @mf.count
  end

  def make_cache_area(path, *uris)
    Utilities.make_cache_area(path, *uris)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rubygems-update-0.8.11 test/test_cached_fetcher.rb