Sha256: 43fb662ded6a6c5d28b8dbe74e1fcd478c56caa142a3ef03edc1efaa1d44d839

Contents?: true

Size: 1.17 KB

Versions: 14

Compression:

Stored size: 1.17 KB

Contents

require 'spec_helper'

describe Internals::Indexing::Bundle::Memory do

  before(:each) do
    @category         = stub :category, :name => :some_category
    @index            = stub :index, :name => :some_index
    @configuration    = Configuration::Index.new @index, @category
    
    @partial_strategy = Internals::Generators::Partial::Substring.new :from => 1
    @exact            = described_class.new :some_name, @configuration, nil, @partial_strategy, nil
  end

  def generate_random_keys amount
    alphabet = ('a'..'z').to_a
    (1..amount).to_a.collect! do |n|
      Array.new(20).collect! { alphabet[rand(26)] }.join.to_sym
    end
  end
  def generate_random_ids amount
    (1..amount).to_a.collect! do |_|
      Array.new(rand(100)+5).collect! do |_|
        rand(5_000_000)
      end
    end
  end

  describe 'speed' do
    context 'medium arrays' do
      before(:each) do
        random_keys  = generate_random_keys 300
        random_ids   = generate_random_ids  300
        @exact.index = Hash[random_keys.zip(random_ids)]
      end
      it 'should be fast' do
        performance_of do
          @exact.generate_partial
        end.should < 0.1
      end
    end
  end

end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
picky-2.1.2 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-2.1.1 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-2.1.0 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-2.0.0 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-2.0.0.pre3 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-2.0.0.pre2 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-2.0.0.pre1 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-1.5.4 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-1.5.3 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-1.5.2 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-1.5.1 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-1.5.0 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-1.4.3 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb
picky-1.4.2 spec/lib/internals/indexing/bundle/memory_partial_generation_speed_spec.rb