Sha256: 5cbefcac9fb31723f93922e92d66fee96e1d5dbba57089ddf081d8529ab9e6d3
Contents?: true
Size: 894 Bytes
Versions: 52
Compression:
Stored size: 894 Bytes
Contents
require File.expand_path('../../../spec_helper', __FILE__) require File.expand_path('../fixtures/classes', __FILE__) describe "Struct#[]=" do it "assigns the passed value" do car = StructClasses::Car.new('Ford', 'Ranger') car[:model] = 'Escape' car[:model].should == 'Escape' car['model'] = 'Fusion' car[:model].should == 'Fusion' car[1] = 'Excursion' car[:model].should == 'Excursion' car[-1] = '2000-2005' car[:year].should == '2000-2005' end it "fails when trying to assign attributes which don't exist" do car = StructClasses::Car.new('Ford', 'Ranger') lambda { car[:something] = true }.should raise_error(NameError) lambda { car[3] = true }.should raise_error(IndexError) lambda { car[-4] = true }.should raise_error(IndexError) lambda { car[Object.new] = true }.should raise_error(TypeError) end end
Version data entries
52 entries across 52 versions & 2 rubygems