Sha256: 04a06d58c023c868dd55030b6bc91788136ca711326b456fd93e90837e3a6970

Contents?: true

Size: 1.43 KB

Versions: 16

Compression:

Stored size: 1.43 KB

Contents

require 'enumerated_attribute'

#used to test that method_missing chaining plays nice in inheritance situations

class Vehicle  
  def vehicle_method_missing_called?; @vehicle_method_missing_called; end
	def self.vehicle_new_called?; @@vehicle_new_called; end
	def self.reset; @@vehicle_new_called = false; end
	
	@@vehicle_new_called = false  
  def initialize
    @vehicle_method_missing_called = false
		super
  end
  
  def method_missing(methId, *args)
    @vehicle_method_missing_called = true
    #end here
  end
	
	def self.new
		@@vehicle_new_called = true
		super
	end
  
end

class CarWithMethods < Vehicle  
  def car_method_missing_called?; @car_method_missing_called; end
	def self.car_new_called?; @@car_new_called; end
	def self.reset; @@car_new_called = false; super; end

	def self.new 
		@@car_new_called = true
		super
	end
	
  def method_missing(methId, *args)
    @car_method_missing_called = true
    super
  end		

  enum_attr :gear, %w(reverse ^neutral drive)  

	@@car_new_called = false  
  def initialize
    @car_method_missing_called = false
    super
  end
  
end

class CarWithoutMethods < Vehicle
  def car_method_missing_called?; @car_method_missing_called; end
	def self.car_new_called?; @@car_new_called; end
	def self.reset; @@car_new_called = false; super; end
  
  enum_attr :gear, %w(reverse ^neutral drive)  

	@@car_new_called = false  
  def initialize
    @car_method_missing_called = false
    super
  end
  
end
	

Version data entries

16 entries across 16 versions & 3 rubygems

Version Path
jeffp-enumerated_attribute-0.1.4 spec/car.rb
jeffp-enumerated_attribute-0.1.5 spec/car.rb
jeffp-enumerated_attribute-0.1.6 spec/car.rb
jeffp-enumerated_attribute-0.1.7 spec/car.rb
jeffp-enumerated_attribute-0.2.0.2 spec/car.rb
jeffp-enumerated_attribute-0.2.1 spec/car.rb
jeffp-enumerated_attribute-0.2.2 spec/car.rb
jeffp-enumerated_attribute-0.2.3 spec/car.rb
edave-enumerated_attribute-0.2.18 spec/car.rb
enumerated_attribute-0.2.16 spec/car.rb
enumerated_attribute-0.2.13 spec/car.rb
enumerated_attribute-0.2.12 spec/car.rb
enumerated_attribute-0.2.11 spec/car.rb
enumerated_attribute-0.2.10 spec/car.rb
enumerated_attribute-0.2.8 spec/car.rb
enumerated_attribute-0.2.7 spec/car.rb