Sha256: aa0afbed832f25c9077c91471727ae462ae6edfebd0ebd24ef8b0f1453ab83da

Contents?: true

Size: 834 Bytes

Versions: 4

Compression:

Stored size: 834 Bytes

Contents

require 'queencheck/arbitrary'

describe QueenCheck::Arbitrary do
  class Example
    extend QueenCheck::Arbitrary
  end

  it 'arbitrary' do
    expect {
      Example.arbitrary(1)
    }.to raise_error NotImplementedError

    Example.class_eval do
      def arbitrary(seed)
      end
    end
  end

  describe 'Original Arbitrary' do
    it 'new' do
      arb = QueenCheck::Arbitrary() do | seed |
        if seed < 0.5
          10**20
        else
          ""
        end
      end

      arb.arbitrary?.should be_true
      arb.arbitrary(0).should eq(10**20)
      arb.arbitrary(1).should eq("")
    end

    it 'named search' do
      arb = QueenCheck::Arbitrary(:sample) { (1..10).to_a[rand(10)] }

      QueenCheck::Arbitrary(:sample).should eq(arb)
      QueenCheck(Kernel, :p, :sample).should_not be_nil
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
queencheck-0.1.2 spec/queencheck/arbitrary_spec.rb
queencheck-0.1.1 spec/queencheck/arbitrary_spec.rb
queencheck-0.1.0 spec/queencheck/arbitrary_spec.rb
queencheck-0.0.2 spec/queencheck/arbitrary_spec.rb