open_ehr 0.6.1 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. data/Gemfile +10 -2
  2. data/Gemfile.lock +58 -18
  3. data/Guardfile +2 -1
  4. data/History.txt +10 -3
  5. data/Manifest.txt +3 -5
  6. data/README.rdoc +36 -32
  7. data/Rakefile +1 -1
  8. data/VERSION +1 -1
  9. data/bin/adl_validator.rb +84 -0
  10. data/lib/open_ehr/am/archetype/constraint_model/primitive.rb +11 -7
  11. data/lib/open_ehr/am/archetype/constraint_model.rb +4 -16
  12. data/lib/open_ehr/am/archetype/ontology.rb +37 -6
  13. data/lib/open_ehr/am/archetype.rb +6 -7
  14. data/lib/open_ehr/am/open_ehr_profile/data_types/text.rb +5 -2
  15. data/lib/open_ehr/parser/adl.rb +19 -0
  16. data/lib/open_ehr/parser/adl_grammar.tt +155 -0
  17. data/lib/open_ehr/parser/adl_parser.rb +48 -0
  18. data/lib/open_ehr/parser/cadl_grammar.tt +803 -0
  19. data/lib/open_ehr/parser/dadl.rb +13 -0
  20. data/lib/open_ehr/parser/dadl_grammar.tt +358 -0
  21. data/lib/open_ehr/parser/exception.rb +68 -0
  22. data/lib/open_ehr/parser/scanner/adl_scanner.rb +819 -0
  23. data/lib/open_ehr/parser/shared_token_grammar.tt +1200 -0
  24. data/lib/open_ehr/parser/validator.rb +20 -0
  25. data/lib/open_ehr/parser.rb +16 -12
  26. data/lib/open_ehr.rb +1 -0
  27. data/open_ehr.gemspec +364 -0
  28. data/spec/lib/open_ehr/am/archetype/archetype_spec.rb +7 -2
  29. data/spec/lib/open_ehr/am/archetype/constraint_model/c_multiple_attribute_spec.rb +0 -6
  30. data/spec/lib/open_ehr/am/archetype/constraint_model/c_object_spec.rb +10 -10
  31. data/spec/lib/open_ehr/am/archetype/constraint_model/c_single_attribute_spec.rb +0 -6
  32. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_boolean_spec.rb +5 -0
  33. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_date_time_spec.rb +5 -0
  34. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_duration_spec.rb +5 -0
  35. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_integer_spec.rb +5 -0
  36. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_primitive_spec.rb +8 -6
  37. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_real_spec.rb +7 -2
  38. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_string_spec.rb +5 -0
  39. data/spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_time_spec.rb +5 -0
  40. data/spec/lib/open_ehr/am/archetype/ontology/archetype_ontology_spec.rb +27 -7
  41. data/spec/lib/open_ehr/am/archetype/ontology/archetype_term_spec.rb +3 -3
  42. data/spec/lib/open_ehr/parser/adl/adl-test-ENTRY.assumed_types.v1.adl +88 -0
  43. data/spec/lib/open_ehr/parser/adl/adl-test-ENTRY.basic_types.v1.adl +143 -0
  44. data/spec/lib/open_ehr/parser/adl/adl-test-ENTRY.basic_types_fail.v1.adl +50 -0
  45. data/spec/lib/open_ehr/parser/adl/adl-test-ENTRY.most_minimal.v1.adl +27 -0
  46. data/spec/lib/open_ehr/parser/adl/adl-test-ENTRY.structure_test1.v1.adl +46 -0
  47. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ACTION.imaging.v1.adl +275 -0
  48. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ACTION.referral.v1.adl +351 -0
  49. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.auscultation-chest.v1.adl +765 -0
  50. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.auscultation.v1.adl +217 -0
  51. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.dimensions-circumference.v1.adl +134 -0
  52. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.dimensions.v1.adl +241 -0
  53. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-abdomen.v1.adl +321 -0
  54. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-chest.v1.adl +379 -0
  55. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-fetus.v1.adl +577 -0
  56. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic-joint.v1.adl +146 -0
  57. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1.adl +176 -0
  58. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic-mass.v1.adl +221 -0
  59. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic.v1.adl +139 -0
  60. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-nervous_system.v1.adl +116 -0
  61. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-uterine_cervix.v1.adl +420 -0
  62. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-uterus.v1.adl +293 -0
  63. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-COMPOSITION.discharge.v1draft.adl +53 -0
  64. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-COMPOSITION.encounter.v1draft.adl +45 -0
  65. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-EVALUATION.adverse.v1.adl +411 -0
  66. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-INSTRUCTION.medication.v1.adl +88 -0
  67. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-INSTRUCTION.referral.v1.adl +84 -0
  68. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.Laboratory_request.v1.adl +492 -0
  69. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.follow_up.v1draft.adl +94 -0
  70. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.imaging.v1.adl +127 -0
  71. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.medication-formulation.v1.adl +457 -0
  72. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.medication.v1.adl +869 -0
  73. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.referral.v1.adl +494 -0
  74. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-OBSERVATION.apgar.v1.adl +545 -0
  75. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-OBSERVATION.blood_pressure.v1.adl +673 -0
  76. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-OBSERVATION.body_mass_index.v1.adl +166 -0
  77. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.findings.v1.adl +47 -0
  78. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.reason_for_encounter.v1.adl +51 -0
  79. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.summary.v1.adl +52 -0
  80. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.vital_signs.v1.adl +54 -0
  81. data/spec/lib/open_ehr/parser/adl/openEHR-EHR-cadl_sample.v1.adl +9 -0
  82. data/spec/lib/open_ehr/parser/adl_parser_spec.rb +210 -0
  83. data/spec/lib/open_ehr/parser/base_spec.rb +19 -0
  84. data/spec/spec.opts +2 -1
  85. data/spec/spec_helper.rb +3 -0
  86. metadata +166 -52
  87. data/doc/README_rdoc.html +0 -148
  88. data/doc/created.rid +0 -2
  89. data/doc/images/brick.png +0 -0
  90. data/doc/images/brick_link.png +0 -0
  91. data/doc/images/bug.png +0 -0
  92. data/doc/images/bullet_black.png +0 -0
  93. data/doc/images/bullet_toggle_minus.png +0 -0
  94. data/doc/images/bullet_toggle_plus.png +0 -0
  95. data/doc/images/date.png +0 -0
  96. data/doc/images/find.png +0 -0
  97. data/doc/images/loadingAnimation.gif +0 -0
  98. data/doc/images/macFFBgHack.png +0 -0
  99. data/doc/images/package.png +0 -0
  100. data/doc/images/page_green.png +0 -0
  101. data/doc/images/page_white_text.png +0 -0
  102. data/doc/images/page_white_width.png +0 -0
  103. data/doc/images/plugin.png +0 -0
  104. data/doc/images/ruby.png +0 -0
  105. data/doc/images/tag_green.png +0 -0
  106. data/doc/images/wrench.png +0 -0
  107. data/doc/images/wrench_orange.png +0 -0
  108. data/doc/images/zoom.png +0 -0
  109. data/doc/index.html +0 -54
  110. data/doc/js/darkfish.js +0 -116
  111. data/doc/js/jquery.js +0 -32
  112. data/doc/js/quicksearch.js +0 -114
  113. data/doc/js/thickbox-compressed.js +0 -10
  114. data/doc/rdoc.css +0 -706
  115. data/lib/#open_ehr.rb# +0 -11
@@ -0,0 +1,20 @@
1
+ $:.unshift File.join(File.dirname(__FILE__))
2
+ require 'parser.rb'
3
+
4
+
5
+ module OpenEhr
6
+ module ADL
7
+
8
+ class Validator
9
+ def initialize(parser)
10
+ @parser = parser
11
+ end
12
+
13
+ def validate(input_string, name = nil)
14
+ @parser.parse(input_string, name)
15
+ end
16
+ end
17
+
18
+ end
19
+ end
20
+
@@ -1,19 +1,23 @@
1
+ $:.unshift(File.dirname(__FILE__)) unless
2
+ $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
1
3
  module OpenEHR
2
- class Parser
3
- def parse
4
+ module Parser
5
+ class Base
6
+ attr_reader :filename
4
7
 
5
- end
6
-
7
- def load(file)
8
+ def initialize(filename)
9
+ @filename = filename
10
+ end
8
11
 
12
+ def parse
13
+ raise NotImplementedError
14
+ end
9
15
  end
10
- end
11
-
12
- class ADLParser < Parser
13
-
14
- end
15
16
 
16
- class XMLParser < Parser
17
-
17
+ autoload :ADLParser, 'parser/adl_parser'
18
+ # autoload :CADLParser, 'parser/adl_parser'
19
+ # autoload :XMLParser, 'parser/xml_perser'
20
+ # autoload :Exception, 'parser/exception'
21
+ # autoload :Scanner, 'parser/scanner'
18
22
  end
19
23
  end
data/lib/open_ehr.rb CHANGED
@@ -8,4 +8,5 @@ module OpenEHR
8
8
  autoload :AM, 'open_ehr/am'
9
9
  autoload :Terminology, 'open_ehr/terminology'
10
10
  autoload :Serializer, 'open_ehr/serializer'
11
+ autoload :Parser, 'open_ehr/parser'
11
12
  end
data/open_ehr.gemspec ADDED
@@ -0,0 +1,364 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{open_ehr}
8
+ s.version = "0.9.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = [%q{Shinji KOBAYASHI}, %q{Akimichi Tatsukawa}]
12
+ s.date = %q{2011-09-25}
13
+ s.description = %q{This project is an implementation of the openEHR specification on Ruby.}
14
+ s.email = %q{skoba@moss.gr.jp}
15
+ s.executables = [%q{adl_validator.rb}]
16
+ s.extra_rdoc_files = [
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ "Gemfile",
22
+ "Gemfile.lock",
23
+ "Guardfile",
24
+ "History.txt",
25
+ "Manifest.txt",
26
+ "PostInstall.txt",
27
+ "README.rdoc",
28
+ "Rakefile",
29
+ "VERSION",
30
+ "bin/adl_validator.rb",
31
+ "doc/openehr_terminology.xml",
32
+ "lib/open_ehr.rb",
33
+ "lib/open_ehr/am.rb",
34
+ "lib/open_ehr/am/archetype.rb",
35
+ "lib/open_ehr/am/archetype/archetype_description/archetype_description.rb",
36
+ "lib/open_ehr/am/archetype/assertion.rb",
37
+ "lib/open_ehr/am/archetype/constraint_model.rb",
38
+ "lib/open_ehr/am/archetype/constraint_model/primitive.rb",
39
+ "lib/open_ehr/am/archetype/ontology.rb",
40
+ "lib/open_ehr/am/open_ehr_profile/data_types/basic.rb",
41
+ "lib/open_ehr/am/open_ehr_profile/data_types/quantity.rb",
42
+ "lib/open_ehr/am/open_ehr_profile/data_types/text.rb",
43
+ "lib/open_ehr/assumed_library_types.rb",
44
+ "lib/open_ehr/parser.rb",
45
+ "lib/open_ehr/parser/adl.rb",
46
+ "lib/open_ehr/parser/adl_grammar.tt",
47
+ "lib/open_ehr/parser/adl_parser.rb",
48
+ "lib/open_ehr/parser/cadl_grammar.tt",
49
+ "lib/open_ehr/parser/dadl.rb",
50
+ "lib/open_ehr/parser/dadl_grammar.tt",
51
+ "lib/open_ehr/parser/exception.rb",
52
+ "lib/open_ehr/parser/scanner/adl_scanner.rb",
53
+ "lib/open_ehr/parser/shared_token_grammar.tt",
54
+ "lib/open_ehr/parser/validator.rb",
55
+ "lib/open_ehr/parser/xml_perser.rb",
56
+ "lib/open_ehr/rm.rb",
57
+ "lib/open_ehr/rm/common.rb",
58
+ "lib/open_ehr/rm/common/archetyped.rb",
59
+ "lib/open_ehr/rm/common/change_control.rb",
60
+ "lib/open_ehr/rm/common/directory.rb",
61
+ "lib/open_ehr/rm/common/generic.rb",
62
+ "lib/open_ehr/rm/common/resource.rb",
63
+ "lib/open_ehr/rm/composition.rb",
64
+ "lib/open_ehr/rm/composition/content.rb",
65
+ "lib/open_ehr/rm/composition/content/entry.rb",
66
+ "lib/open_ehr/rm/composition/content/navigation.rb",
67
+ "lib/open_ehr/rm/data_structures.rb",
68
+ "lib/open_ehr/rm/data_structures/history.rb",
69
+ "lib/open_ehr/rm/data_structures/item_structure.rb",
70
+ "lib/open_ehr/rm/data_structures/item_structure/representation.rb",
71
+ "lib/open_ehr/rm/data_types.rb",
72
+ "lib/open_ehr/rm/data_types/basic.rb",
73
+ "lib/open_ehr/rm/data_types/charset.lst",
74
+ "lib/open_ehr/rm/data_types/charset_extract.rb",
75
+ "lib/open_ehr/rm/data_types/encapsulated.rb",
76
+ "lib/open_ehr/rm/data_types/quantity.rb",
77
+ "lib/open_ehr/rm/data_types/quantity/date_time.rb",
78
+ "lib/open_ehr/rm/data_types/text.rb",
79
+ "lib/open_ehr/rm/data_types/time_specification.rb",
80
+ "lib/open_ehr/rm/data_types/uri.rb",
81
+ "lib/open_ehr/rm/demographic.rb",
82
+ "lib/open_ehr/rm/ehr.rb",
83
+ "lib/open_ehr/rm/integration.rb",
84
+ "lib/open_ehr/rm/security.rb",
85
+ "lib/open_ehr/rm/support.rb",
86
+ "lib/open_ehr/rm/support/assumed_types.rb",
87
+ "lib/open_ehr/rm/support/definition.rb",
88
+ "lib/open_ehr/rm/support/identification.rb",
89
+ "lib/open_ehr/rm/support/measurement.rb",
90
+ "lib/open_ehr/rm/support/terminology.rb",
91
+ "lib/open_ehr/serializer.rb",
92
+ "lib/open_ehr/terminology.rb",
93
+ "lib/open_ehr/terminology/open_ehr_terminology.rb",
94
+ "lib/open_ehr/writer.rb",
95
+ "open_ehr.gemspec",
96
+ "spec/lib/open_ehr/am/archetype/archetype_spec.rb",
97
+ "spec/lib/open_ehr/am/archetype/assertion/assertion_spec.rb",
98
+ "spec/lib/open_ehr/am/archetype/assertion/assertion_variable_spec.rb",
99
+ "spec/lib/open_ehr/am/archetype/assertion/expr_binary_operator.rb",
100
+ "spec/lib/open_ehr/am/archetype/assertion/expr_item_spec.rb",
101
+ "spec/lib/open_ehr/am/archetype/assertion/expr_leaf_spec.rb",
102
+ "spec/lib/open_ehr/am/archetype/assertion/expr_operator_spec.rb",
103
+ "spec/lib/open_ehr/am/archetype/assertion/expr_unary_operator_spec.rb",
104
+ "spec/lib/open_ehr/am/archetype/assertion/operator_kind_spec.rb",
105
+ "spec/lib/open_ehr/am/archetype/constraint_model/archetype_constraint_spec.rb",
106
+ "spec/lib/open_ehr/am/archetype/constraint_model/archetype_internal_ref_spec.rb",
107
+ "spec/lib/open_ehr/am/archetype/constraint_model/archetype_slot_spec.rb",
108
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_attribute_spec.rb",
109
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_complex_object_spec.rb",
110
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_defined_object_spec.rb",
111
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_domain_type_spec.rb",
112
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_multiple_attribute_spec.rb",
113
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_object_spec.rb",
114
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_primitive_object_spec.rb",
115
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_reference_object_spec.rb",
116
+ "spec/lib/open_ehr/am/archetype/constraint_model/c_single_attribute_spec.rb",
117
+ "spec/lib/open_ehr/am/archetype/constraint_model/cardinality_spec.rb",
118
+ "spec/lib/open_ehr/am/archetype/constraint_model/constraint_ref_spec.rb",
119
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_boolean_spec.rb",
120
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_date_spec.rb",
121
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_date_time_spec.rb",
122
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_duration_spec.rb",
123
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_integer_spec.rb",
124
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_primitive_spec.rb",
125
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_real_spec.rb",
126
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_string_spec.rb",
127
+ "spec/lib/open_ehr/am/archetype/constraint_model/primitive/c_time_spec.rb",
128
+ "spec/lib/open_ehr/am/archetype/ontology/archetype_ontology_spec.rb",
129
+ "spec/lib/open_ehr/am/archetype/ontology/archetype_term_spec.rb",
130
+ "spec/lib/open_ehr/am/archetype/validity_kind_spec.rb",
131
+ "spec/lib/open_ehr/assumed_library_types/interval_spec.rb",
132
+ "spec/lib/open_ehr/assumed_library_types/iso8601_date_spec.rb",
133
+ "spec/lib/open_ehr/assumed_library_types/iso8601_date_time_spec.rb",
134
+ "spec/lib/open_ehr/assumed_library_types/iso8601_duration_spec.rb",
135
+ "spec/lib/open_ehr/assumed_library_types/iso8601_time_spec.rb",
136
+ "spec/lib/open_ehr/assumed_library_types/iso8601_timezone_spec.rb",
137
+ "spec/lib/open_ehr/assumed_library_types/time_definitions_spec.rb",
138
+ "spec/lib/open_ehr/parser/adl/adl-test-ENTRY.assumed_types.v1.adl",
139
+ "spec/lib/open_ehr/parser/adl/adl-test-ENTRY.basic_types.v1.adl",
140
+ "spec/lib/open_ehr/parser/adl/adl-test-ENTRY.basic_types_fail.v1.adl",
141
+ "spec/lib/open_ehr/parser/adl/adl-test-ENTRY.most_minimal.v1.adl",
142
+ "spec/lib/open_ehr/parser/adl/adl-test-ENTRY.structure_test1.v1.adl",
143
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ACTION.imaging.v1.adl",
144
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ACTION.referral.v1.adl",
145
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.auscultation-chest.v1.adl",
146
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.auscultation.v1.adl",
147
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.dimensions-circumference.v1.adl",
148
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.dimensions.v1.adl",
149
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-abdomen.v1.adl",
150
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-chest.v1.adl",
151
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-fetus.v1.adl",
152
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic-joint.v1.adl",
153
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic-lymphnode.v1.adl",
154
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic-mass.v1.adl",
155
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-generic.v1.adl",
156
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-nervous_system.v1.adl",
157
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-uterine_cervix.v1.adl",
158
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-CLUSTER.exam-uterus.v1.adl",
159
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-COMPOSITION.discharge.v1draft.adl",
160
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-COMPOSITION.encounter.v1draft.adl",
161
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-EVALUATION.adverse.v1.adl",
162
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-INSTRUCTION.medication.v1.adl",
163
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-INSTRUCTION.referral.v1.adl",
164
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.Laboratory_request.v1.adl",
165
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.follow_up.v1draft.adl",
166
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.imaging.v1.adl",
167
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.medication-formulation.v1.adl",
168
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.medication.v1.adl",
169
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-ITEM_TREE.referral.v1.adl",
170
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-OBSERVATION.apgar.v1.adl",
171
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-OBSERVATION.blood_pressure.v1.adl",
172
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-OBSERVATION.body_mass_index.v1.adl",
173
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.findings.v1.adl",
174
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.reason_for_encounter.v1.adl",
175
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.summary.v1.adl",
176
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-SECTION.vital_signs.v1.adl",
177
+ "spec/lib/open_ehr/parser/adl/openEHR-EHR-cadl_sample.v1.adl",
178
+ "spec/lib/open_ehr/parser/adl_parser_spec.rb",
179
+ "spec/lib/open_ehr/parser/base_spec.rb",
180
+ "spec/lib/open_ehr/rm/common/archetyped/archetyped_spec.rb",
181
+ "spec/lib/open_ehr/rm/common/archetyped/feeder_audit_details_spec.rb",
182
+ "spec/lib/open_ehr/rm/common/archetyped/feeder_audit_spec.rb",
183
+ "spec/lib/open_ehr/rm/common/archetyped/link_spec.rb",
184
+ "spec/lib/open_ehr/rm/common/archetyped/locatable_spec.rb",
185
+ "spec/lib/open_ehr/rm/common/archetyped/pathable_spec.rb",
186
+ "spec/lib/open_ehr/rm/common/change_control/contribution_spec.rb",
187
+ "spec/lib/open_ehr/rm/common/change_control/imported_version_spec.rb",
188
+ "spec/lib/open_ehr/rm/common/change_control/original_version_spec.rb",
189
+ "spec/lib/open_ehr/rm/common/change_control/version_spec.rb",
190
+ "spec/lib/open_ehr/rm/common/change_control/versioned_object_spec.rb",
191
+ "spec/lib/open_ehr/rm/common/directory/folder_spec.rb",
192
+ "spec/lib/open_ehr/rm/common/generic/attestation_spec.rb",
193
+ "spec/lib/open_ehr/rm/common/generic/audit_details_spec.rb",
194
+ "spec/lib/open_ehr/rm/common/generic/participation_spec.rb",
195
+ "spec/lib/open_ehr/rm/common/generic/party_identified_spec.rb",
196
+ "spec/lib/open_ehr/rm/common/generic/party_proxy_spec.rb",
197
+ "spec/lib/open_ehr/rm/common/generic/party_related_spec.rb",
198
+ "spec/lib/open_ehr/rm/common/generic/revision_history_item_spec.rb",
199
+ "spec/lib/open_ehr/rm/common/generic/revision_history_spec.rb",
200
+ "spec/lib/open_ehr/rm/common/resource/authored_resource_spec.rb",
201
+ "spec/lib/open_ehr/rm/common/resource/resource_description_item_spec.rb",
202
+ "spec/lib/open_ehr/rm/common/resource/resource_description_spec.rb",
203
+ "spec/lib/open_ehr/rm/common/resource/translation_details_spec.rb",
204
+ "spec/lib/open_ehr/rm/composition/composition_spec.rb",
205
+ "spec/lib/open_ehr/rm/composition/content/content_item_spec.rb",
206
+ "spec/lib/open_ehr/rm/composition/content/entry/action_spec.rb",
207
+ "spec/lib/open_ehr/rm/composition/content/entry/activity_spec.rb",
208
+ "spec/lib/open_ehr/rm/composition/content/entry/admin_entry_spec.rb",
209
+ "spec/lib/open_ehr/rm/composition/content/entry/care_entry_spec.rb",
210
+ "spec/lib/open_ehr/rm/composition/content/entry/entry_spec.rb",
211
+ "spec/lib/open_ehr/rm/composition/content/entry/evaluation_spec.rb",
212
+ "spec/lib/open_ehr/rm/composition/content/entry/instruction_details_spec.rb",
213
+ "spec/lib/open_ehr/rm/composition/content/entry/instruction_spec.rb",
214
+ "spec/lib/open_ehr/rm/composition/content/entry/ism_transition_spec.rb",
215
+ "spec/lib/open_ehr/rm/composition/content/entry/observation_spec.rb",
216
+ "spec/lib/open_ehr/rm/composition/content/navigation/section_spec.rb",
217
+ "spec/lib/open_ehr/rm/composition/event_context_spec.rb",
218
+ "spec/lib/open_ehr/rm/data_structures/data_structure_spec.rb",
219
+ "spec/lib/open_ehr/rm/data_structures/history/event_spec.rb",
220
+ "spec/lib/open_ehr/rm/data_structures/history/history_spec.rb",
221
+ "spec/lib/open_ehr/rm/data_structures/history/interval_event_spec.rb",
222
+ "spec/lib/open_ehr/rm/data_structures/item_structure/item_list_spec.rb",
223
+ "spec/lib/open_ehr/rm/data_structures/item_structure/item_single_spec.rb",
224
+ "spec/lib/open_ehr/rm/data_structures/item_structure/item_table_spec.rb",
225
+ "spec/lib/open_ehr/rm/data_structures/item_structure/item_tree_spec.rb",
226
+ "spec/lib/open_ehr/rm/data_structures/item_structure/representation/cluster_spec.rb",
227
+ "spec/lib/open_ehr/rm/data_structures/item_structure/representation/element_spec.rb",
228
+ "spec/lib/open_ehr/rm/data_types/basic/data_value_spec.rb",
229
+ "spec/lib/open_ehr/rm/data_types/basic/dv_boolean_spec.rb",
230
+ "spec/lib/open_ehr/rm/data_types/basic/dv_identifier_spec.rb",
231
+ "spec/lib/open_ehr/rm/data_types/basic/dv_state_spec.rb",
232
+ "spec/lib/open_ehr/rm/data_types/encapsulated/dv_encapsulated_spec.rb",
233
+ "spec/lib/open_ehr/rm/data_types/encapsulated/dv_multimedia_spec.rb",
234
+ "spec/lib/open_ehr/rm/data_types/encapsulated/dv_parsable_spec.rb",
235
+ "spec/lib/open_ehr/rm/data_types/quantity/date_time/dv_date_spec.rb",
236
+ "spec/lib/open_ehr/rm/data_types/quantity/date_time/dv_date_time_spec.rb",
237
+ "spec/lib/open_ehr/rm/data_types/quantity/date_time/dv_tempral_spec.rb",
238
+ "spec/lib/open_ehr/rm/data_types/quantity/date_time/dv_time_spec.rb",
239
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_absolute_quantity_spec.rb",
240
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_amount_spec.rb",
241
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_count_spec.rb",
242
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_interval_spec.rb",
243
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_ordered_spec.rb",
244
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_ordinal_spec.rb",
245
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_proportion_spec.rb",
246
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_quantified_spec.rb",
247
+ "spec/lib/open_ehr/rm/data_types/quantity/dv_quantity_spec.rb",
248
+ "spec/lib/open_ehr/rm/data_types/quantity/proportion_kind_spec.rb",
249
+ "spec/lib/open_ehr/rm/data_types/quantity/reference_range_spec.rb",
250
+ "spec/lib/open_ehr/rm/data_types/text/code_phrase_spec.rb",
251
+ "spec/lib/open_ehr/rm/data_types/text/dv_paragraph_spec.rb",
252
+ "spec/lib/open_ehr/rm/data_types/text/dv_text_spec.rb",
253
+ "spec/lib/open_ehr/rm/data_types/text/term_mapping_spec.rb",
254
+ "spec/lib/open_ehr/rm/data_types/uri/dv_ehr_uri_spec.rb",
255
+ "spec/lib/open_ehr/rm/data_types/uri/dv_uri_spec.rb",
256
+ "spec/lib/open_ehr/rm/demographic/actor_spec.rb",
257
+ "spec/lib/open_ehr/rm/demographic/address_spec.rb",
258
+ "spec/lib/open_ehr/rm/demographic/capability_spec.rb",
259
+ "spec/lib/open_ehr/rm/demographic/contact_spec.rb",
260
+ "spec/lib/open_ehr/rm/demographic/party_identity_spec.rb",
261
+ "spec/lib/open_ehr/rm/demographic/party_relationship_spec.rb",
262
+ "spec/lib/open_ehr/rm/demographic/party_spec.rb",
263
+ "spec/lib/open_ehr/rm/demographic/role_spec.rb",
264
+ "spec/lib/open_ehr/rm/ehr/ehr_access_spec.rb",
265
+ "spec/lib/open_ehr/rm/ehr/ehr_spec.rb",
266
+ "spec/lib/open_ehr/rm/ehr/ehr_status_spec.rb",
267
+ "spec/lib/open_ehr/rm/ehr/versioned_composition_spec.rb",
268
+ "spec/lib/open_ehr/rm/integration/generic_entry_spec.rb",
269
+ "spec/lib/open_ehr/rm/support/identification/access_group_ref_spec.rb",
270
+ "spec/lib/open_ehr/rm/support/identification/archetype_id_spec.rb",
271
+ "spec/lib/open_ehr/rm/support/identification/generic_id_spec.rb",
272
+ "spec/lib/open_ehr/rm/support/identification/hier_object_id_spec.rb",
273
+ "spec/lib/open_ehr/rm/support/identification/internet_id_spec.rb",
274
+ "spec/lib/open_ehr/rm/support/identification/iso_oid_spec.rb",
275
+ "spec/lib/open_ehr/rm/support/identification/locatable_ref_spec.rb",
276
+ "spec/lib/open_ehr/rm/support/identification/object_id_spec.rb",
277
+ "spec/lib/open_ehr/rm/support/identification/object_ref_spec.rb",
278
+ "spec/lib/open_ehr/rm/support/identification/object_version_id_spec.rb",
279
+ "spec/lib/open_ehr/rm/support/identification/party_ref_spec.rb",
280
+ "spec/lib/open_ehr/rm/support/identification/template_id_spec.rb",
281
+ "spec/lib/open_ehr/rm/support/identification/terminology_id_spec.rb",
282
+ "spec/lib/open_ehr/rm/support/identification/uid_based_id_spec.rb",
283
+ "spec/lib/open_ehr/rm/support/identification/uid_spec.rb",
284
+ "spec/lib/open_ehr/rm/support/identification/version_tree_id_spec.rb",
285
+ "spec/lib/open_ehr/rm/support/measurement_service_spec.rb",
286
+ "spec/lib/open_ehr/rm/support/terminology_service_spec.rb",
287
+ "spec/lib/open_ehr/serializer/adl-test-entry.most_minimal.test.adl",
288
+ "spec/lib/open_ehr/serializer/adl_serializer_spec.rb",
289
+ "spec/lib/open_ehr/serializer/openEHR-EHR-SECTION.test.v1.adl",
290
+ "spec/lib/open_ehr/serializer/openEHR-EHR-SECTION.test.v1.xml",
291
+ "spec/lib/open_ehr/serializer/sample_archetype_spec.rb",
292
+ "spec/lib/open_ehr/serializer/xml_serializer_spec.rb",
293
+ "spec/lib/open_ehr/terminology/open_ehr_terminology_spec.rb",
294
+ "spec/rcov.opts",
295
+ "spec/spec.opts",
296
+ "spec/spec_helper.rb"
297
+ ]
298
+ s.homepage = %q{http://github.com/skoba/ruby-impl-openehr}
299
+ s.licenses = [%q{The openEHR Open Source Software license(mozilla tri-license)}]
300
+ s.require_paths = [%q{lib}]
301
+ s.rubygems_version = %q{1.8.7}
302
+ s.summary = %q{Ruby implementation of the openEHR specification}
303
+
304
+ if s.respond_to? :specification_version then
305
+ s.specification_version = 3
306
+
307
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
308
+ s.add_runtime_dependency(%q<xml-simple>, [">= 0"])
309
+ s.add_runtime_dependency(%q<activesupport>, [">= 0"])
310
+ s.add_runtime_dependency(%q<locale>, [">= 0"])
311
+ s.add_runtime_dependency(%q<builder>, [">= 0"])
312
+ s.add_runtime_dependency(%q<jeweler>, [">= 0"])
313
+ s.add_runtime_dependency(%q<i18n>, [">= 0"])
314
+ s.add_runtime_dependency(%q<treetop>, [">= 0"])
315
+ s.add_runtime_dependency(%q<polyglot>, [">= 0"])
316
+ s.add_runtime_dependency(%q<rdoc>, [">= 0"])
317
+ s.add_development_dependency(%q<rspec>, [">= 0"])
318
+ s.add_development_dependency(%q<guard-rspec>, [">= 0"])
319
+ s.add_development_dependency(%q<ruby-debug19>, [">= 0"])
320
+ s.add_development_dependency(%q<spork>, [">= 0.9.0.rc2"])
321
+ s.add_development_dependency(%q<guard-spork>, [">= 0"])
322
+ s.add_development_dependency(%q<simplecov>, [">= 0"])
323
+ s.add_development_dependency(%q<rb-inotify>, [">= 0"])
324
+ s.add_development_dependency(%q<libnotify>, [">= 0"])
325
+ else
326
+ s.add_dependency(%q<xml-simple>, [">= 0"])
327
+ s.add_dependency(%q<activesupport>, [">= 0"])
328
+ s.add_dependency(%q<locale>, [">= 0"])
329
+ s.add_dependency(%q<builder>, [">= 0"])
330
+ s.add_dependency(%q<jeweler>, [">= 0"])
331
+ s.add_dependency(%q<i18n>, [">= 0"])
332
+ s.add_dependency(%q<treetop>, [">= 0"])
333
+ s.add_dependency(%q<polyglot>, [">= 0"])
334
+ s.add_dependency(%q<rdoc>, [">= 0"])
335
+ s.add_dependency(%q<rspec>, [">= 0"])
336
+ s.add_dependency(%q<guard-rspec>, [">= 0"])
337
+ s.add_dependency(%q<ruby-debug19>, [">= 0"])
338
+ s.add_dependency(%q<spork>, [">= 0.9.0.rc2"])
339
+ s.add_dependency(%q<guard-spork>, [">= 0"])
340
+ s.add_dependency(%q<simplecov>, [">= 0"])
341
+ s.add_dependency(%q<rb-inotify>, [">= 0"])
342
+ s.add_dependency(%q<libnotify>, [">= 0"])
343
+ end
344
+ else
345
+ s.add_dependency(%q<xml-simple>, [">= 0"])
346
+ s.add_dependency(%q<activesupport>, [">= 0"])
347
+ s.add_dependency(%q<locale>, [">= 0"])
348
+ s.add_dependency(%q<builder>, [">= 0"])
349
+ s.add_dependency(%q<jeweler>, [">= 0"])
350
+ s.add_dependency(%q<i18n>, [">= 0"])
351
+ s.add_dependency(%q<treetop>, [">= 0"])
352
+ s.add_dependency(%q<polyglot>, [">= 0"])
353
+ s.add_dependency(%q<rdoc>, [">= 0"])
354
+ s.add_dependency(%q<rspec>, [">= 0"])
355
+ s.add_dependency(%q<guard-rspec>, [">= 0"])
356
+ s.add_dependency(%q<ruby-debug19>, [">= 0"])
357
+ s.add_dependency(%q<spork>, [">= 0.9.0.rc2"])
358
+ s.add_dependency(%q<guard-spork>, [">= 0"])
359
+ s.add_dependency(%q<simplecov>, [">= 0"])
360
+ s.add_dependency(%q<rb-inotify>, [">= 0"])
361
+ s.add_dependency(%q<libnotify>, [">= 0"])
362
+ end
363
+ end
364
+
@@ -1,4 +1,5 @@
1
1
  require File.dirname(__FILE__) + '/../../../../spec_helper'
2
+ require 'set'
2
3
  include OpenEHR::AM::Archetype
3
4
  include OpenEHR::AM::Archetype::ConstraintModel
4
5
  include OpenEHR::AM::Archetype::Ontology
@@ -11,7 +12,9 @@ describe Archetype do
11
12
  original_language = stub(CodePhrase, :code_string => 'ja')
12
13
  archetype_id = ArchetypeID.new(:value => 'openEHR-EHR-SECTION.physical_examination-prenatal.v2')
13
14
  definition = stub(CComplexObject, :rm_type_name => 'SECTION')
14
- ontology = stub(ArchetypeOntology, :specialisation_depth => 1)
15
+ items = {:text => 'Physical examination'}
16
+ term1 = ArchetypeTerm.new(:code => 'at0000', :items => items)
17
+ ontology = ArchetypeOntology.new(:specialisation_depth => 1, :term_definitions => {'ja' => [term1]})
15
18
  uid = HierObjectID.new(:value => 'ABCD::1')
16
19
  parent_archetype_id = ArchetypeID.new(:value => 'openEHR-EHR-SECTION.physical_examination.v1')
17
20
  invariants = stub(Set, :size => 2)
@@ -94,5 +97,7 @@ describe Archetype do
94
97
  @archetype.short_concept_name.should == 'physical_examination'
95
98
  end
96
99
 
97
- it 'concept name should be extracted from ontology'
100
+ it 'concept name should be extracted from ontology' do
101
+ @archetype.concept_name('ja').should == 'Physical examination'
102
+ end
98
103
  end
@@ -20,10 +20,4 @@ describe CMultipleAttribute do
20
20
  it 'cardinality should be assigned properly' do
21
21
  @c_multiple_attribute.cardinality.should be_ordered
22
22
  end
23
-
24
- it 'should raise ArgumentError when cardinality is nil' do
25
- lambda {
26
- @c_multiple_attribute.cardinality = nil
27
- }.should raise_error ArgumentError
28
- end
29
23
  end
@@ -37,11 +37,11 @@ describe CObject do
37
37
  @c_object.node_id.should == 'ac0001'
38
38
  end
39
39
 
40
- it 'should raise ArgumentError when node_id was assigned nil' do
41
- lambda {
42
- @c_object.node_id = nil
43
- }.should raise_error ArgumentError
44
- end
40
+ # it 'should raise ArgumentError when node_id was assigned nil' do
41
+ # lambda {
42
+ # @c_object.node_id = nil
43
+ # }.should raise_error ArgumentError
44
+ # end
45
45
 
46
46
  it 'should raise ArgumentError when node_id was assigned empty' do
47
47
  lambda {
@@ -53,9 +53,9 @@ describe CObject do
53
53
  @c_object.occurrences.lower.should be_equal 0
54
54
  end
55
55
 
56
- it 'should raise ArgumentError when occurences was assigned nil' do
57
- lambda {
58
- @c_object.occurrences = nil
59
- }.should raise_error ArgumentError
60
- end
56
+ # it 'should raise ArgumentError when occurences was assigned nil' do
57
+ # lambda {
58
+ # @c_object.occurrences = nil
59
+ # }.should raise_error ArgumentError
60
+ # end
61
61
  end
@@ -19,10 +19,4 @@ describe CSingleAttribute do
19
19
  it 'alternative should be assigned properly' do
20
20
  @c_single_attribute.alternatives.size.should be_equal 5
21
21
  end
22
-
23
- it 'should raise ArgumentError when alternative is nil' do
24
- lambda {
25
- @c_single_attribute.alternatives = nil
26
- }.should raise_error ArgumentError
27
- end
28
22
  end
@@ -6,6 +6,7 @@ describe CBoolean do
6
6
  before(:each) do
7
7
  default_value = DvBoolean.new(:value => true)
8
8
  @c_boolean = CBoolean.new(:default_value => true,
9
+ :type => 'Boolean',
9
10
  :true_valid => true,
10
11
  :false_valid => true)
11
12
  end
@@ -22,6 +23,10 @@ describe CBoolean do
22
23
  @c_boolean.should be_false_valid
23
24
  end
24
25
 
26
+ it 'type should be DvBoolean' do
27
+ @c_boolean.type.should == 'Boolean'
28
+ end
29
+
25
30
  it 'should raise ArgumentError when both true_valid and false_valid are false' do
26
31
  lambda {
27
32
  @c_boolean.true_valid = false
@@ -12,6 +12,7 @@ describe CDateTime do
12
12
  @c_date_time =
13
13
  CDateTime.new(:default_value => default_value,
14
14
  :assumed_value => assumed_value,
15
+ :type => 'Boolean',
15
16
  :range => range,
16
17
  :month_validity => ValidityKind::MANDATORY,
17
18
  :day_validity => ValidityKind::MANDATORY,
@@ -26,6 +27,10 @@ describe CDateTime do
26
27
  @c_date_time.should be_an_instance_of CDateTime
27
28
  end
28
29
 
30
+ it 'type is DvDateTime' do
31
+ @c_date_time.type.should == 'Boolean'
32
+ end
33
+
29
34
  it 'hour_validity should be assigned properly' do
30
35
  @c_date_time.hour_validity.should be_equal ValidityKind::MANDATORY
31
36
  end
@@ -10,6 +10,7 @@ describe CDuration do
10
10
  range = stub(Interval, :upper => assumed_value, :lower => default_value)
11
11
  @c_duration = CDuration.new(:assumed_value => assumed_value,
12
12
  :default_value => default_value,
13
+ :type => 'Boolean',
13
14
  :range => range,
14
15
  :years_allowed => true,
15
16
  :months_allowed => false,
@@ -25,6 +26,10 @@ describe CDuration do
25
26
  @c_duration.should be_an_instance_of CDuration
26
27
  end
27
28
 
29
+ it 'type is DvDuration' do
30
+ @c_duration.type.should == 'Boolean'
31
+ end
32
+
28
33
  it 'years_allowed should be assigned properly' do
29
34
  @c_duration.years_allowed.should be_true
30
35
  end
@@ -6,6 +6,7 @@ describe CInteger do
6
6
  before(:each) do
7
7
  @c_integer = CInteger.new(:default_value => 3,
8
8
  :assumed_value => 2,
9
+ :type => 'Integer',
9
10
  :list => [1,2])
10
11
  end
11
12
 
@@ -13,6 +14,10 @@ describe CInteger do
13
14
  @c_integer.should be_an_instance_of CInteger
14
15
  end
15
16
 
17
+ it 'type is DvInteger' do
18
+ @c_integer.type.should == 'Integer'
19
+ end
20
+
16
21
  it 'should raise ArgumentError if both range and list are nil' do
17
22
  lambda {
18
23
  @c_integer.list = nil
@@ -14,14 +14,12 @@ describe CPrimitive do
14
14
  @c_primitive.should be_an_instance_of CPrimitive
15
15
  end
16
16
 
17
- it 'default value should be assigned properly' do
18
- @c_primitive.default_value.value.should == 'DEFAULT'
17
+ it 'type is ANY' do
18
+ @c_primitive.type.should == 'ANY'
19
19
  end
20
20
 
21
- it 'should raise ArgumentError when default_value is nil' do
22
- lambda {
23
- @c_primitive.default_value = nil
24
- }.should raise_error ArgumentError
21
+ it 'default value should be assigned properly' do
22
+ @c_primitive.default_value.value.should == 'DEFAULT'
25
23
  end
26
24
 
27
25
  it 'assumed_value should be assigned properly' do
@@ -36,4 +34,8 @@ describe CPrimitive do
36
34
  @c_primitive.assumed_value = nil
37
35
  @c_primitive.should_not have_assumed_value
38
36
  end
37
+
38
+ it 'type should not empty' do
39
+ expect {@c_primitive.type = ''}.to raise_error
40
+ end
39
41
  end
@@ -4,11 +4,16 @@ include OpenEHR::AM::Archetype::ConstraintModel::Primitive
4
4
  describe CReal do
5
5
  before(:each) do
6
6
  @c_real = CReal.new(:default_value => 1.5,
7
- :assumed_value => 2.3,
8
- :list => [-1.5,20.3])
7
+ :assumed_value => 2.3,
8
+ :type => 'Real',
9
+ :list => [-1.5,20.3])
9
10
  end
10
11
 
11
12
  it 'should be an instance of CReal' do
12
13
  @c_real.should be_an_instance_of CReal
13
14
  end
15
+
16
+ it 'type is DvReal' do
17
+ @c_real.type.should == 'Real'
18
+ end
14
19
  end