Sha256: 76b6aa638acd44b2a85c4261794a16a9991ced1e1b68e8eeda47d5f8280846eb

Contents?: true

Size: 1014 Bytes

Versions: 6

Compression:

Stored size: 1014 Bytes

Contents

require 'spec_helper'

describe Index::File::Text do
  
  before(:each) do
    @file = Index::File::Text.new "some_cache_path"
  end
  
  describe "load" do
    it "raises" do
      lambda do
        @file.load
      end.should raise_error("Can't load from text file. Use JSON or Marshal.")
    end
  end
  describe "dump" do
    it "raises" do
      lambda do
        @file.dump :anything
      end.should raise_error("Can't dump to text file. Use JSON or Marshal.")
    end
  end
  describe "retrieve" do
    before(:each) do
      @io = stub :io
      @io.should_receive(:each_line).once.with.and_yield '123456,some_nice_token'
      ::File.should_receive(:open).any_number_of_times.and_yield @io
    end
    it "yields split lines and returns the id and token text" do
      @file.retrieve do |id, token|
        id.should    == '123456'
        token.should == :some_nice_token
      end
    end
    it "is fast" do
      performance_of { @file.retrieve { |id, token| } }.should < 0.00005
    end
  end
  
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
picky-1.4.1 spec/lib/index/file/text_spec.rb
picky-1.4.0 spec/lib/index/file/text_spec.rb
picky-1.3.4 spec/lib/index/file/text_spec.rb
picky-1.3.3 spec/lib/index/file/text_spec.rb
picky-1.3.2 spec/lib/index/file/text_spec.rb
picky-1.3.1 spec/lib/index/file/text_spec.rb