summaryrefslogtreecommitdiff
path: root/spec/ruby/core/random/default_spec.rb
blob: a709eddd53f5567f5de58e1ebe82e59c07dce0a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
require_relative '../../spec_helper'

describe "Random::DEFAULT" do

  it "returns a random number generator" do
    suppress_warning do
      Random::DEFAULT.should respond_to(:rand)
    end
  end

  ruby_version_is ''...'3.0' do
    it "returns a Random instance" do
      suppress_warning do
        Random::DEFAULT.should be_an_instance_of(Random)
      end
    end
  end

  ruby_version_is '3.0' do
    it "refers to the Random class" do
      suppress_warning do
        Random::DEFAULT.should.equal?(Random)
      end
    end

    it "is deprecated" do
      -> {
        Random::DEFAULT.should.equal?(Random)
      }.should complain(/constant Random::DEFAULT is deprecated/)
    end
  end

  it "changes seed on reboot" do
    seed1 = ruby_exe('p Random::DEFAULT.seed', options: '--disable-gems')
    seed2 = ruby_exe('p Random::DEFAULT.seed', options: '--disable-gems')
    seed1.should != seed2
  end
end