2018-03-04 15:09:32 +00:00
|
|
|
require_relative '../../spec_helper'
|
|
|
|
require_relative 'fixtures/classes'
|
2017-05-07 12:04:49 +00:00
|
|
|
|
|
|
|
describe "Kernel#class" do
|
|
|
|
it "returns the class of the object" do
|
|
|
|
Object.new.class.should equal(Object)
|
|
|
|
|
2020-12-21 01:16:26 +09:00
|
|
|
1.class.should equal(Integer)
|
2017-05-07 12:04:49 +00:00
|
|
|
3.14.class.should equal(Float)
|
|
|
|
:hello.class.should equal(Symbol)
|
|
|
|
"hello".class.should equal(String)
|
|
|
|
[1, 2].class.should equal(Array)
|
|
|
|
{ 1 => 2 }.class.should equal(Hash)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "returns Class for a class" do
|
|
|
|
BasicObject.class.should equal(Class)
|
|
|
|
String.class.should equal(Class)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "returns the first non-singleton class" do
|
|
|
|
a = "hello"
|
|
|
|
def a.my_singleton_method; end
|
|
|
|
a.class.should equal(String)
|
|
|
|
end
|
|
|
|
end
|