Sha256: 38872f14405324df58a34b06464d847e8474d2eb74fc61a5ba5a7914464ff6c7

Contents?: true

Size: 683 Bytes

Versions: 7

Compression:

Stored size: 683 Bytes

Contents

# coding: utf-8
describe Integer, "#fermat?" do
  # A000215
  @seq = [3,5,17,257,65537,4294967297,18446744073709551617,
          340282366920938463463374607431768211457,
          115792089237316195423570985008687907853269984665640564039457584007913129639937,
          13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084097]
  
  @seq.each do |n|
    it "returns true for Fermat number #{n}" do
      n.should be_fermat
    end
  end

  @seq.to_seq.invert.sample(100).each do |n|
    it "returns false for non-Fermat number #{n}" do
      n.should_not be_fermat
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
numb-0.186.0 spec/numb/fermat_spec.rb
numb-0.185.0 spec/numb/fermat_spec.rb
numb-0.184.0 spec/numb/fermat_spec.rb
numb-0.181.0 spec/numb/fermat_spec.rb
numb-0.170.0 spec/numb/fermat_spec.rb
numb-0.152.0 spec/numb/fermat_spec.rb
numb-0.138.0 spec/numb/fermat_spec.rb