[4] | 1 | require 'test/unit'
|
---|
| 2 | require 'am.rb'
|
---|
| 3 | require 'rm.rb'
|
---|
| 4 |
|
---|
| 5 | class ArchetypeModelTest < Test::Unit::TestCase
|
---|
| 6 | def setup
|
---|
[23] | 7 | @archetype = OpenEHR::AM::Archetype::ARCHETYPE.new
|
---|
| 8 | @validity_kind = OpenEHR::AM::Archetype::VALIDITY_KIND.new
|
---|
| 9 |
|
---|
[21] | 10 | @archetype_description = OpenEHR::AM::Archetype::Archetype_Description::ARCHETYPE_DESCRIPTION.new
|
---|
[23] | 11 | @archetype_description_item = OpenEHR::AM::Archetype::Archetype_Description::ARCHETYPE_DESCRIPTION_ITEM.new
|
---|
| 12 | end
|
---|
| 13 |
|
---|
| 14 | def test_init
|
---|
| 15 | assert_instance_of OpenEHR::AM::Archetype::ARCHETYPE, @archetype
|
---|
| 16 | assert_instance_of OpenEHR::AM::Archetype::VALIDITY_KIND, @validity_kind
|
---|
| 17 | assert_instance_of OpenEHR::AM::Archetype::Archetype_Description::ARCHETYPE_DESCRIPTION, @archetype_description
|
---|
| 18 | assert_instance_of OpenEHR::AM::Archetype::Archetype_Description::ARCHETYPE_DESCRIPTION_ITEM, @archetype_description_item
|
---|
| 19 | assert_instance_of OpenEHR::AM::Archetype::ARCHETYPE, @archetype
|
---|
| 20 | end
|
---|
[24] | 21 |
|
---|
| 22 | def test_create
|
---|
| 23 | archetype_instance = OpenEHR::AM::Archetype::ARCHETYPE.create() do |archetype|
|
---|
| 24 | archetype.adl_version = '1.4'
|
---|
| 25 | end
|
---|
| 26 |
|
---|
| 27 | assert_instance_of OpenEHR::AM::Archetype::ARCHETYPE, archetype_instance
|
---|
| 28 | end
|
---|
[23] | 29 | end
|
---|
[21] | 30 |
|
---|
[23] | 31 | class ArchetypeModelConstraintTest < Test::Unit::TestCase
|
---|
| 32 | def setup
|
---|
[21] | 33 | @archetype_constraint = OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_CONSTRAINT.new
|
---|
[23] | 34 | @cardinality = OpenEHR::AM::Archetype::Constraint_Model::CARDINALITY.new
|
---|
| 35 |
|
---|
| 36 | @archetype_constraint = OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_CONSTRAINT.new
|
---|
[21] | 37 | @c_object = OpenEHR::AM::Archetype::Constraint_Model::C_OBJECT.new
|
---|
| 38 | @c_defined_object = OpenEHR::AM::Archetype::Constraint_Model::C_DEFINED_OBJECT.new
|
---|
| 39 | @c_attribute = OpenEHR::AM::Archetype::Constraint_Model::C_ATTRIBUTE.new
|
---|
[23] | 40 | @c_single_attribute = OpenEHR::AM::Archetype::Constraint_Model::C_SINGLE_ATTRIBUTE.new
|
---|
| 41 | @c_multiple_attribute = OpenEHR::AM::Archetype::Constraint_Model::C_MULTIPLE_ATTRIBUTE.new(:rm_attribute_name => 'attribute_name', :cardinality => @cardinality)
|
---|
[21] | 42 | @c_primitive_object = OpenEHR::AM::Archetype::Constraint_Model::C_PRIMITIVE_OBJECT.new
|
---|
| 43 | @c_reference_object = OpenEHR::AM::Archetype::Constraint_Model::C_REFERENCE_OBJECT.new
|
---|
| 44 | @archetype_internal_ref = OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_INTERNAL_REF.new
|
---|
| 45 | @archetype_slot = OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_SLOT.new
|
---|
| 46 | @constraint_ref = OpenEHR::AM::Archetype::Constraint_Model::CONSTRAINT_REF.new
|
---|
| 47 | @c_domain_type = OpenEHR::AM::Archetype::Constraint_Model::C_DOMAIN_TYPE.new
|
---|
[23] | 48 | @c_complex_object = OpenEHR::AM::Archetype::Constraint_Model::C_COMPLEX_OBJECT.new(:attributes => [@c_single_attribute])
|
---|
[4] | 49 | end
|
---|
[23] | 50 |
|
---|
[4] | 51 | def test_init
|
---|
[21] | 52 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_CONSTRAINT, @archetype_constraint
|
---|
| 53 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_OBJECT, @c_object
|
---|
| 54 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_DEFINED_OBJECT, @c_defined_object
|
---|
| 55 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_ATTRIBUTE, @c_attribute
|
---|
[23] | 56 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_SINGLE_ATTRIBUTE, @c_single_attribute
|
---|
| 57 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_MULTIPLE_ATTRIBUTE, @c_multiple_attribute
|
---|
| 58 | assert_equal 'attribute_name', @c_multiple_attribute.rm_attribute_name
|
---|
| 59 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::CARDINALITY, @c_multiple_attribute.cardinality
|
---|
[21] | 60 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_PRIMITIVE_OBJECT, @c_primitive_object
|
---|
| 61 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_REFERENCE_OBJECT, @c_reference_object
|
---|
| 62 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_INTERNAL_REF, @archetype_internal_ref
|
---|
| 63 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_SLOT, @archetype_slot
|
---|
| 64 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::CONSTRAINT_REF, @constraint_ref
|
---|
| 65 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_DOMAIN_TYPE, @c_domain_type
|
---|
| 66 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_COMPLEX_OBJECT, @c_complex_object
|
---|
[23] | 67 | assert_instance_of Array, @c_complex_object.attributes
|
---|
| 68 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::ARCHETYPE_CONSTRAINT, @archetype_constraint
|
---|
| 69 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::CARDINALITY, @cardinality
|
---|
[4] | 70 | end
|
---|
[21] | 71 |
|
---|
[23] | 72 | def test_create
|
---|
| 73 | c_complex_object = OpenEHR::AM::Archetype::Constraint_Model::C_COMPLEX_OBJECT.create(:node_id => 'test_node',
|
---|
| 74 | :attributes => [1,2],
|
---|
| 75 | :assumed_value => Array
|
---|
| 76 | )
|
---|
| 77 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::C_COMPLEX_OBJECT, c_complex_object
|
---|
| 78 | assert_equal 'test_node', c_complex_object.node_id
|
---|
| 79 | end
|
---|
| 80 | end
|
---|
| 81 |
|
---|
| 82 | class ArchetypeModelPrimitiveTest < Test::Unit::TestCase
|
---|
| 83 | def setup
|
---|
[32] | 84 | #@c_primitive = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_PRIMITIVE.new
|
---|
[23] | 85 | @c_boolean = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_BOOLEAN.new(:true_valid => true,
|
---|
| 86 | :false_valid => true,
|
---|
| 87 | :assumed_value => true)
|
---|
| 88 | @c_string = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_STRING.new
|
---|
| 89 | @c_integer = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_INTEGER.new
|
---|
| 90 | @c_real = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_REAL.new
|
---|
| 91 | @c_time = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_TIME.new
|
---|
| 92 | @c_date = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_DATE.new
|
---|
| 93 | @c_date_time = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_DATE_TIME.new
|
---|
| 94 | @c_duration = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_DURATION.new
|
---|
| 95 | end
|
---|
| 96 |
|
---|
| 97 | def test_init
|
---|
[32] | 98 | #assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_PRIMITIVE, @c_primitive
|
---|
[23] | 99 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_BOOLEAN, @c_boolean
|
---|
| 100 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_STRING, @c_string
|
---|
| 101 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_INTEGER, @c_integer
|
---|
| 102 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_REAL, @c_real
|
---|
| 103 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_TIME, @c_time
|
---|
| 104 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_DATE, @c_date
|
---|
| 105 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_DATE_TIME, @c_date_time
|
---|
| 106 | assert_instance_of OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_DURATION, @c_duration
|
---|
| 107 | end
|
---|
| 108 |
|
---|
[4] | 109 | def test_primitive
|
---|
[23] | 110 | assert @c_boolean.true_valid
|
---|
| 111 | assert @c_boolean.false_valid
|
---|
[4] | 112 | assert @c_boolean.assumed_value
|
---|
| 113 | assert @c_boolean.has_assumed_value?
|
---|
| 114 | assert @c_boolean.default_value
|
---|
| 115 | assert @c_boolean.default_value(true)
|
---|
[23] | 116 | assert_raise(ArgumentError) do
|
---|
| 117 | @c_boolean.true_valid = false
|
---|
| 118 | @c_boolean.false_valid = false
|
---|
| 119 | end
|
---|
| 120 | assert_raise(ArgumentError) do
|
---|
| 121 | OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_BOOLEAN.new(:true_valid =>false,
|
---|
| 122 | :false_valid => false,
|
---|
| 123 | :assumed_value => false)
|
---|
| 124 | end
|
---|
[4] | 125 | end
|
---|
[23] | 126 |
|
---|
[4] | 127 | end
|
---|
| 128 |
|
---|
[23] | 129 | class ArchetypeModelOntologyTest < Test::Unit::TestCase
|
---|
| 130 | def setup
|
---|
| 131 | @archetype_ontology = OpenEHR::AM::Archetype::Ontology::ARCHETYPE_ONTOLOGY.new
|
---|
| 132 | @archetype_term = OpenEHR::AM::Archetype::Ontology::ARCHETYPE_TERM.new(:code => '', :items => '')
|
---|
| 133 | end
|
---|
| 134 |
|
---|
| 135 | def test_init
|
---|
| 136 | assert_instance_of OpenEHR::AM::Archetype::Ontology::ARCHETYPE_ONTOLOGY, @archetype_ontology
|
---|
| 137 | assert_instance_of OpenEHR::AM::Archetype::Ontology::ARCHETYPE_TERM, @archetype_term
|
---|
| 138 | end
|
---|
| 139 | end
|
---|
| 140 |
|
---|
| 141 | class ArchetypeModelAssertionTest < Test::Unit::TestCase
|
---|
| 142 | def setup
|
---|
| 143 | @assertion = OpenEHR::AM::Archetype::Assertion::ASSERTION.new
|
---|
| 144 | @assertion_variable = OpenEHR::AM::Archetype::Assertion::ASSERTION_VARIABLE.new
|
---|
| 145 | @operator_kind = OpenEHR::AM::Archetype::Assertion::OPERATOR_KIND.new
|
---|
| 146 | @expr_item = OpenEHR::AM::Archetype::Assertion::EXPR_ITEM.new
|
---|
| 147 | @expr_leaf = OpenEHR::AM::Archetype::Assertion::EXPR_LEAF.new
|
---|
| 148 | @expr_operator = OpenEHR::AM::Archetype::Assertion::EXPR_OPERATOR.new
|
---|
| 149 | @expr_unary_operator = OpenEHR::AM::Archetype::Assertion::EXPR_UNARY_OPERATOR.new
|
---|
| 150 | @expr_binary_operator = OpenEHR::AM::Archetype::Assertion::EXPR_BINARY_OPERATOR.new
|
---|
| 151 | end
|
---|
| 152 |
|
---|
| 153 | def test_init
|
---|
| 154 | assert_instance_of OpenEHR::AM::Archetype::Assertion::ASSERTION, @assertion
|
---|
| 155 | assert_instance_of OpenEHR::AM::Archetype::Assertion::ASSERTION_VARIABLE, @assertion_variable
|
---|
| 156 | assert_instance_of OpenEHR::AM::Archetype::Assertion::OPERATOR_KIND, @operator_kind
|
---|
| 157 | assert_instance_of OpenEHR::AM::Archetype::Assertion::EXPR_ITEM, @expr_item
|
---|
| 158 | assert_instance_of OpenEHR::AM::Archetype::Assertion::EXPR_LEAF, @expr_leaf
|
---|
| 159 | assert_instance_of OpenEHR::AM::Archetype::Assertion::EXPR_OPERATOR, @expr_operator
|
---|
| 160 | assert_instance_of OpenEHR::AM::Archetype::Assertion::EXPR_UNARY_OPERATOR, @expr_unary_operator
|
---|
| 161 | assert_instance_of OpenEHR::AM::Archetype::Assertion::EXPR_BINARY_OPERATOR, @expr_binary_operator
|
---|
| 162 | end
|
---|
| 163 | end
|
---|
| 164 |
|
---|
| 165 | class ArchetypeModelProfileTest < Test::Unit::TestCase
|
---|
| 166 | def setup
|
---|
| 167 | @c_dv_state = OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::C_DV_STATE.new
|
---|
| 168 | @state_machine = OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::STATE_MACHINE.new
|
---|
| 169 | @state = OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::STATE.new
|
---|
| 170 | @terminal_state = OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::TERMINAL_STATE.new
|
---|
| 171 | @non_terminal_state = OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::NON_TERMINAL_STATE.new
|
---|
| 172 | @transition = OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::TRANSITION.new
|
---|
| 173 |
|
---|
| 174 | @c_code_phase = OpenEHR::AM::OpenEHR_Profile::Data_Types::Text::C_CODE_PHASE.new
|
---|
| 175 |
|
---|
| 176 | @c_dv_quantity = OpenEHR::AM::OpenEHR_Profile::Data_Types::Quantity::C_DV_QUANTITY.new
|
---|
| 177 | @c_dv_ordinal = OpenEHR::AM::OpenEHR_Profile::Data_Types::Quantity::C_DV_ORDINAL.new
|
---|
| 178 | @c_quantity_item = OpenEHR::AM::OpenEHR_Profile::Data_Types::Quantity::C_QUANTITY_ITEM.new
|
---|
| 179 | end
|
---|
| 180 |
|
---|
| 181 | def test_init
|
---|
| 182 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::C_DV_STATE, @c_dv_state
|
---|
| 183 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::STATE_MACHINE, @state_machine
|
---|
| 184 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::STATE, @state
|
---|
| 185 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::TERMINAL_STATE, @terminal_state
|
---|
| 186 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::NON_TERMINAL_STATE, @non_terminal_state
|
---|
| 187 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Basic::TRANSITION, @transition
|
---|
| 188 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Text::C_CODE_PHASE, @c_code_phase
|
---|
| 189 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Quantity::C_DV_QUANTITY, @c_dv_quantity
|
---|
| 190 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Quantity::C_DV_ORDINAL, @c_dv_ordinal
|
---|
| 191 | assert_instance_of OpenEHR::AM::OpenEHR_Profile::Data_Types::Quantity::C_QUANTITY_ITEM, @c_quantity_item
|
---|
| 192 | end
|
---|
| 193 | end
|
---|