Sha256: 7ff5dea59f09ea6c35d25356e4865250f321bcef762ae2833e6b45983dd92d8d

Contents?: true

Size: 1.25 KB

Versions: 21

Compression:

Stored size: 1.25 KB

Contents

require 'spec_helper'

describe Picky::Backends::Memory::Text do

  let(:text) { described_class.new "some_cache_path" }

  describe 'extension' do
    it 'is correct' do
      text.extension.should == :txt
    end
  end

  describe 'initial' do
    it 'raises' do
      expect {
        text.initial
      }.to raise_error("Can't have an initial content from text file. Use JSON or Marshal.")
    end
  end

  describe "load" do
    it "raises" do
      lambda do
        text.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
        text.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
      text.retrieve do |id, token|
        id.should    == '123456'
        token.should == 'some_nice_token'
      end
    end
    it "is fast" do
      performance_of { text.retrieve { |id, token| } }.should < 0.00006
    end
  end

end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
picky-3.6.16 spec/lib/backends/memory/text_spec.rb
picky-3.6.15 spec/lib/backends/memory/text_spec.rb
picky-3.6.14 spec/lib/backends/memory/text_spec.rb
picky-3.6.13 spec/lib/backends/memory/text_spec.rb
picky-3.6.12 spec/lib/backends/memory/text_spec.rb
picky-3.6.11 spec/lib/backends/memory/text_spec.rb
picky-3.6.10 spec/lib/backends/memory/text_spec.rb
picky-3.6.9 spec/lib/backends/memory/text_spec.rb
picky-3.6.8 spec/lib/backends/memory/text_spec.rb
picky-3.6.7 spec/lib/backends/memory/text_spec.rb
picky-3.6.6 spec/lib/backends/memory/text_spec.rb
picky-3.6.4 spec/lib/backends/memory/text_spec.rb
picky-3.6.3 spec/lib/backends/memory/text_spec.rb
picky-3.6.2 spec/lib/backends/memory/text_spec.rb
picky-3.6.1 spec/lib/backends/memory/text_spec.rb
picky-3.6.0 spec/lib/backends/memory/text_spec.rb
picky-3.5.4 spec/lib/backends/memory/text_spec.rb
picky-3.5.3 spec/lib/backends/memory/text_spec.rb
picky-3.5.2 spec/lib/backends/memory/text_spec.rb
picky-3.5.1 spec/lib/backends/memory/text_spec.rb