diff options
Diffstat (limited to 'spec/rubyspec/core/random/equal_value_spec.rb')
-rw-r--r-- | spec/rubyspec/core/random/equal_value_spec.rb | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/spec/rubyspec/core/random/equal_value_spec.rb b/spec/rubyspec/core/random/equal_value_spec.rb new file mode 100644 index 0000000000..738f549f1d --- /dev/null +++ b/spec/rubyspec/core/random/equal_value_spec.rb @@ -0,0 +1,37 @@ +require File.expand_path('../../../spec_helper', __FILE__) + +describe "Random#==" do + it "returns true if the two objects have the same state" do + a = Random.new(42) + b = Random.new(42) + a.send(:state).should == b.send(:state) + a.should == b + end + + it "returns false if the two objects have different state" do + a = Random.new + b = Random.new + a.send(:state).should_not == b.send(:state) + a.should_not == b + end + + it "returns true if the two objects have the same seed" do + a = Random.new(42) + b = Random.new(42.5) + a.seed.should == b.seed + a.should == b + end + + it "returns false if the two objects have a different seed" do + a = Random.new(42) + b = Random.new(41) + a.seed.should_not == b.seed + a.should_not == b + end + + it "returns false if the other object is not a Random" do + a = Random.new(42) + a.should_not == 42 + a.should_not == [a] + end +end |