Changeset 186 for ruby/branches


Ignore:
Timestamp:
Aug 11, 2009, 11:19:02 PM (15 years ago)
Author:
KOBAYASHI, Shinji
Message:

refs #53

Location:
ruby/branches/0.5
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • ruby/branches/0.5/lib/open_ehr/rm/common/archetyped.rb

    r167 r186  
    1717          attr_accessor :parent
    1818
    19           def initialize(parent = nil)
    20             @parent = parent
     19          def initialize(args = { })
     20            self.parent = args[:parent]
    2121          end
    2222
     
    4848
    4949          def initialize(args = { })
    50             super(args[:parent])
     50            super(args)
    5151            self.archetype_node_id = args[:archetype_node_id]
    5252            self.name = args[:name]
     
    5858         
    5959          def archetype_node_id=(archetype_node_id)
    60             raise ArgumentError, 'archetype_node_id should not be nil' if archetype_node_id.nil?
     60            if archetype_node_id.nil? or archetype_node_id.empty?
     61              raise ArgumentError, 'archetype_node_id should not be nil'
     62            end
    6163            @archetype_node_id = archetype_node_id
    6264          end
  • ruby/branches/0.5/test/unit/lib/open_ehr/rm/data_structures/tc_representation.rb

    r184 r186  
    1 include OpenEhr::RM::DataStructure::Representation
     1# refs #53
     2include OpenEhr::RM::DataStructures::Representation
     3include OpenEhr::RM::DataTypes::Text
     4include OpenEhr::RM::Support::Identification
    25
    3 class TestDataStructureRepresentationItem
     6class TestDataStructuresRepresentationItem < Test::Unit::TestCase
    47  def setup
    5     @item = Item.new
     8    name = DvText.new('BP')
     9    @item = Item.new(:name => name, :archetype_node_id => 'test')
    610  end
    711
     
    1014  end
    1115end
     16
     17class TestDataStructuresRepresentationElement < Test::Unit::TestCase
     18  def setup
     19    name = DvText.new('element')
     20    @element = Element.new(:name => name, :archetype_node_id => 'test')
     21  end
     22
     23  def test_init
     24    assert_instance_of Element, @element
     25  end
     26
     27  def test_is_null_true
     28    assert @element.is_null?
     29  end
     30
     31  def test_value_assign
     32    @element.value = 'test'
     33    assert_equal 'test', @element.value
     34  end
     35
     36  def test_is_null_false
     37    @element.value = 'test'
     38    assert !@element.is_null?
     39  end
     40
     41  def test_null_flavor
     42    terminology_id = TerminologyId.new('openehr')
     43    code_phrase = CodePhrase.new('271', terminology_id)
     44    null_flavor = DvCodedText.new('no information', code_phrase)
     45    @element.null_flavor = null_flavor
     46    assert_equal 'no information', @element.null_flavor.value
     47  end
     48
     49  def test_valid_null_flavor_is_nil
     50    assert_nothing_raised(ArgumentError){@element.null_flavor = nil}
     51  end
     52
     53  def test_invalid_null_flavor_is_not_null_flavor
     54    terminology_id = TerminologyId.new('ICD10')
     55    code_phrase = CodePhrase.new('C92.0', terminology_id)
     56    null_flavor = DvCodedText.new('Acute Myeloid Leukemia', code_phrase)
     57    assert_raise(ArgumentError){@element.null_flavor = null_flavor}
     58  end
     59end
     60
     61
     62
     63
  • ruby/branches/0.5/test/unit/lib/open_ehr/rm/tc_common.rb

    r179 r186  
    151151  end
    152152
     153  def test_pathable_parent
     154    assert_nil @pathable.parent
     155  end
     156
     157  def test_locatable_archetype_node_id
     158    assert_equal 'at0001', @locatable.archetype_node_id
     159  end
     160
     161  def test_locatable_name
     162    assert_equal 'blood', @locatable.name.value
     163  end
     164
     165  def test_locatable_link
     166    assert_equal 'rrip::0.0.5', @locatable.links.to_a[0].value
     167  end
     168
     169  def test_locatable_name_valid
     170    assert_raise(ArgumentError){@locatable.name = nil }
     171  end
     172
     173  def test_locatable_link_valid
     174    assert_raise(ArgumentError){@locatable.links = Set[]}
     175  end
     176
     177  def test_locatable_archetype_id_not_nil
     178    assert_raise(ArgumentError){@locatable.archetype_node_id = nil}
     179  end
     180
     181  def test_locatable_archetype_id_not_empty
     182    assert_raise(ArgumentError){@locatable.archetype_node_id = ''}
     183  end
     184
    153185  def test_link
    154186    # test constructor
  • ruby/branches/0.5/test/unit/lib/open_ehr/ts_rm.rb

    r176 r186  
    77require 'unit/lib/open_ehr/rm/tc_security'
    88require 'unit/lib/open_ehr/rm/tc_data_structure'
     9require 'unit/lib/open_ehr/rm/data_structures/tc_representation'
Note: See TracChangeset for help on using the changeset viewer.