Sha256: d9ea9c99b31dc97bbe60cf4e4c517f1e390f2f851d8c1275673aae4501697586
Contents?: true
Size: 1.4 KB
Versions: 1
Compression:
Stored size: 1.4 KB
Contents
# Author:: Nicolas Pouillard <ertai@lrde.epita.fr>. # Copyright:: Copyright (c) 2005 Nicolas Pouillard. All rights reserved. # License:: GNU General Public License (GPL). # Revision:: $Id: factory.rb 221 2005-05-09 12:40:57Z ertai $ module Commands module Datas class Factory < Data attr_accessor :command_data_class def initialize @command_data_class = Data end def new_command_data ( *a, &b ) data = @command_data_class.new(*a, &b) instance_variables.each do |var| next if var =~ /command_data_class/ data.send(var[1..-1] + '=', instance_variable_get(var)) end data end alias :create :new_command_data end # class Factory if $0 == __FILE__ require 'test/unit' class FactoryTest < Test::Unit::TestCase def setup assert_nothing_raised { @fa = Factory.new } end def test_0_initialize end def test_new_command_data assert_nothing_raised do assert_kind_of(Data, @fa.create) assert_kind_of(Data, @fa.new_command_data) end end def test_simple assert_nothing_raised do @fa.pid = 42 @data = @fa.create end assert_equal(42, @data.pid) end end # class FactoryTest end end # module Datas end # module Commands
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
vcs-0.2.148 | ruby_ex/commands/datas/factory.rb |