Sha256: d5af26fee1d332de64b0d4f0f54d3fde9475981bc45e1af31816344e5532d566

Contents?: true

Size: 849 Bytes

Versions: 5

Compression:

Stored size: 849 Bytes

Contents

describe Array do
  around do |example|
    old_seed = srand(12072)
    example.call
    srand(old_seed)
  end

  it '#random_index' do
    expect(20.times.collect { [].random_index }.uniq.sort).to          eq([nil])
    expect(20.times.collect { %w{a}.random_index }.uniq.sort).to       eq([0])
    expect(20.times.collect { %w{a b}.random_index }.uniq.sort).to     eq([0, 1])
    expect(20.times.collect { %w{a b c d}.random_index }.uniq.sort).to eq([0, 1, 2, 3])
  end

  it '#random_element' do
    expect(20.times.collect { [].random_element }.uniq.sort).to          eq([nil])
    expect(20.times.collect { %w{a}.random_element }.uniq.sort).to       eq(%w{a})
    expect(20.times.collect { %w{a b}.random_element }.uniq.sort).to     eq(%w{a b})
    expect(20.times.collect { %w{a b c d}.random_element }.uniq.sort).to eq(%w{a b c d})
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
more_core_extensions-3.2.0 spec/core_ext/array/random_spec.rb
more_core_extensions-3.1.1 spec/core_ext/array/random_spec.rb
more_core_extensions-3.1.0 spec/core_ext/array/random_spec.rb
more_core_extensions-3.0.0 spec/core_ext/array/random_spec.rb
more_core_extensions-2.0.0 spec/core_ext/array/random_spec.rb