Class: Finitio::Generation::Heuristic::Constant

Inherits:
Finitio::Generation::Heuristic show all
Defined in:
lib/finitio/generation/heuristic/constant.rb

Constant Summary collapse

CONSTANTS =
{
  NilClass => nil,
  TrueClass => true,
  FalseClass => false,
  Integer => 99,
  Float => 99.99,
  String => "Hello world",
  Date => Date.today,
  Time => Time.now,
  DateTime => DateTime.now,
}

Instance Method Summary collapse

Instance Method Details

#call(ruby_type, generator, world = nil) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/finitio/generation/heuristic/constant.rb', line 18

def call(ruby_type, generator, world = nil)
  CONSTANTS.fetch(ruby_type) do
    CONSTANTS.each_pair do |clazz, value|
      return value if clazz >= ruby_type
    end
    throw :unfound
  end
end