summaryrefslogtreecommitdiff
path: root/spec/ruby/core/kernel/class_spec.rb
blob: 2725bde19b47f43ee9d2876c2fc38be41e39f459 (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
require_relative '../../spec_helper'
require_relative 'fixtures/classes'

describe "Kernel#class" do
  it "returns the class of the object" do
    Object.new.class.should equal(Object)

    1.class.should equal(Integer)
    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