expressir 0.2.26-x86-mingw32 → 1.2.0-x86-mingw32

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 (215) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/rake.yml +50 -5
  3. data/.github/workflows/release.yml +8 -0
  4. data/.gitignore +2 -2
  5. data/.hound.yml +3 -0
  6. data/.rubocop.yml +6 -506
  7. data/.yardopts +11 -0
  8. data/Rakefile +3 -0
  9. data/demo.rb +5 -5
  10. data/exe/format +8 -8
  11. data/exe/format-test +11 -11
  12. data/expressir.gemspec +4 -2
  13. data/lib/expressir/cli.rb +0 -6
  14. data/lib/expressir/express/2.4/express_parser.so +0 -0
  15. data/lib/expressir/express/2.5/express_parser.so +0 -0
  16. data/lib/expressir/express/2.6/express_parser.so +0 -0
  17. data/lib/expressir/express/2.7/express_parser.so +0 -0
  18. data/lib/expressir/express/3.0/express_parser.so +0 -0
  19. data/lib/expressir/express/cache.rb +51 -0
  20. data/lib/expressir/{express_exp → express}/formatter.rb +304 -237
  21. data/lib/expressir/{express_exp → express}/hyperlink_formatter.rb +16 -2
  22. data/lib/expressir/{express_exp → express}/model_visitor.rb +2 -1
  23. data/lib/expressir/{express_exp → express}/parser.rb +19 -13
  24. data/lib/expressir/{express_exp → express}/resolve_references_model_visitor.rb +9 -7
  25. data/lib/expressir/express/schema_head_formatter.rb +23 -0
  26. data/lib/expressir/{express_exp → express}/visitor.rb +318 -270
  27. data/lib/expressir/model/cache.rb +6 -2
  28. data/lib/expressir/model/data_type.rb +9 -0
  29. data/lib/expressir/model/data_types/aggregate.rb +31 -0
  30. data/lib/expressir/model/data_types/array.rb +31 -0
  31. data/lib/expressir/model/data_types/bag.rb +25 -0
  32. data/lib/expressir/model/data_types/binary.rb +22 -0
  33. data/lib/expressir/model/data_types/boolean.rb +10 -0
  34. data/lib/expressir/model/data_types/enumeration.rb +25 -0
  35. data/lib/expressir/model/data_types/enumeration_item.rb +26 -0
  36. data/lib/expressir/model/data_types/generic.rb +26 -0
  37. data/lib/expressir/model/data_types/generic_entity.rb +26 -0
  38. data/lib/expressir/model/data_types/integer.rb +10 -0
  39. data/lib/expressir/model/data_types/list.rb +28 -0
  40. data/lib/expressir/model/data_types/logical.rb +10 -0
  41. data/lib/expressir/model/data_types/number.rb +10 -0
  42. data/lib/expressir/model/data_types/real.rb +19 -0
  43. data/lib/expressir/model/data_types/select.rb +28 -0
  44. data/lib/expressir/model/data_types/set.rb +25 -0
  45. data/lib/expressir/model/data_types/string.rb +22 -0
  46. data/lib/expressir/model/declaration.rb +9 -0
  47. data/lib/expressir/model/declarations/attribute.rb +47 -0
  48. data/lib/expressir/model/declarations/constant.rb +34 -0
  49. data/lib/expressir/model/declarations/entity.rb +53 -0
  50. data/lib/expressir/model/declarations/function.rb +67 -0
  51. data/lib/expressir/model/declarations/interface.rb +28 -0
  52. data/lib/expressir/model/declarations/interface_item.rb +23 -0
  53. data/lib/expressir/model/declarations/interfaced_item.rb +37 -0
  54. data/lib/expressir/model/declarations/parameter.rb +34 -0
  55. data/lib/expressir/model/declarations/procedure.rb +64 -0
  56. data/lib/expressir/model/declarations/remark_item.rb +21 -0
  57. data/lib/expressir/model/declarations/rule.rb +71 -0
  58. data/lib/expressir/model/declarations/schema.rb +117 -0
  59. data/lib/expressir/model/declarations/schema_version.rb +22 -0
  60. data/lib/expressir/model/declarations/schema_version_item.rb +22 -0
  61. data/lib/expressir/model/declarations/subtype_constraint.rb +40 -0
  62. data/lib/expressir/model/declarations/type.rb +45 -0
  63. data/lib/expressir/model/declarations/unique_rule.rb +31 -0
  64. data/lib/expressir/model/declarations/variable.rb +34 -0
  65. data/lib/expressir/model/declarations/where_rule.rb +31 -0
  66. data/lib/expressir/model/expression.rb +9 -0
  67. data/lib/expressir/model/expressions/aggregate_initializer.rb +7 -3
  68. data/lib/expressir/model/expressions/aggregate_initializer_item.rb +22 -0
  69. data/lib/expressir/model/expressions/binary_expression.rb +16 -5
  70. data/lib/expressir/model/expressions/entity_constructor.rb +9 -4
  71. data/lib/expressir/model/expressions/function_call.rb +22 -0
  72. data/lib/expressir/model/expressions/interval.rb +17 -6
  73. data/lib/expressir/model/expressions/query_expression.rb +11 -7
  74. data/lib/expressir/model/expressions/unary_expression.rb +9 -3
  75. data/lib/expressir/model/identifier.rb +26 -4
  76. data/lib/expressir/model/literal.rb +9 -0
  77. data/lib/expressir/model/literals/binary.rb +6 -2
  78. data/lib/expressir/model/literals/integer.rb +6 -2
  79. data/lib/expressir/model/literals/logical.rb +6 -2
  80. data/lib/expressir/model/literals/real.rb +6 -2
  81. data/lib/expressir/model/literals/string.rb +8 -3
  82. data/lib/expressir/model/model_element.rb +63 -37
  83. data/lib/expressir/model/reference.rb +9 -0
  84. data/lib/expressir/model/references/attribute_reference.rb +22 -0
  85. data/lib/expressir/model/references/group_reference.rb +22 -0
  86. data/lib/expressir/model/references/index_reference.rb +27 -0
  87. data/lib/expressir/model/references/simple_reference.rb +24 -0
  88. data/lib/expressir/model/repository.rb +6 -2
  89. data/lib/expressir/model/statement.rb +9 -0
  90. data/lib/expressir/model/statements/alias.rb +12 -8
  91. data/lib/expressir/model/statements/assignment.rb +8 -3
  92. data/lib/expressir/model/statements/case.rb +11 -5
  93. data/lib/expressir/model/statements/case_action.rb +8 -3
  94. data/lib/expressir/model/statements/compound.rb +7 -3
  95. data/lib/expressir/model/statements/escape.rb +3 -1
  96. data/lib/expressir/model/statements/if.rb +12 -6
  97. data/lib/expressir/model/statements/null.rb +3 -1
  98. data/lib/expressir/model/statements/procedure_call.rb +22 -0
  99. data/lib/expressir/model/statements/repeat.rb +20 -12
  100. data/lib/expressir/model/statements/return.rb +6 -2
  101. data/lib/expressir/model/statements/skip.rb +3 -1
  102. data/lib/expressir/model/supertype_expression.rb +9 -0
  103. data/lib/expressir/model/supertype_expressions/binary_supertype_expression.rb +29 -0
  104. data/lib/expressir/model/supertype_expressions/oneof_supertype_expression.rb +19 -0
  105. data/lib/expressir/model.rb +52 -43
  106. data/lib/expressir/version.rb +1 -1
  107. data/lib/expressir.rb +0 -1
  108. data/rakelib/cross-ruby.rake +1 -1
  109. data/spec/expressir/{express_exp → express}/cache_spec.rb +9 -9
  110. data/spec/expressir/express/formatter_spec.rb +127 -0
  111. data/spec/expressir/{express_exp → express}/parser_spec.rb +23 -23
  112. data/spec/expressir/model/model_element_spec.rb +153 -153
  113. data/{original/examples → spec}/syntax/multiple.exp +0 -0
  114. data/spec/syntax/multiple.yaml +198 -0
  115. data/{original/examples → spec}/syntax/multiple_formatted.exp +0 -0
  116. data/{original/examples → spec}/syntax/multiple_hyperlink_formatted.exp +0 -0
  117. data/{original/examples → spec}/syntax/multiple_schema_head_hyperlink_formatted.exp +0 -0
  118. data/{original/examples → spec}/syntax/remark.exp +0 -0
  119. data/{original/examples → spec}/syntax/remark.yaml +73 -73
  120. data/{original/examples → spec}/syntax/remark_formatted.exp +0 -0
  121. data/{original/examples → spec}/syntax/single.exp +1 -1
  122. data/spec/syntax/single.yaml +18 -0
  123. data/{original/examples → spec}/syntax/single_formatted.exp +1 -1
  124. data/{original/examples → spec}/syntax/single_formatted.yaml +9 -6
  125. data/{original/examples → spec}/syntax/syntax.exp +11 -11
  126. data/{original/examples → spec}/syntax/syntax.yaml +1100 -1111
  127. data/{original/examples → spec}/syntax/syntax_formatted.exp +11 -11
  128. data/{original/examples → spec}/syntax/syntax_hyperlink_formatted.exp +11 -11
  129. data/{original/examples → spec}/syntax/syntax_schema_head_formatted.exp +1 -1
  130. metadata +128 -121
  131. data/lib/expressir/express/aggregate_dimension.rb +0 -38
  132. data/lib/expressir/express/attribute.rb +0 -15
  133. data/lib/expressir/express/comment.rb +0 -7
  134. data/lib/expressir/express/defined_type.rb +0 -36
  135. data/lib/expressir/express/derived.rb +0 -65
  136. data/lib/expressir/express/derived_aggregate.rb +0 -43
  137. data/lib/expressir/express/entity.rb +0 -137
  138. data/lib/expressir/express/explicit.rb +0 -70
  139. data/lib/expressir/express/explicit_aggregate.rb +0 -46
  140. data/lib/expressir/express/explicit_or_derived.rb +0 -16
  141. data/lib/expressir/express/global_rule.rb +0 -44
  142. data/lib/expressir/express/interface_specification.rb +0 -51
  143. data/lib/expressir/express/interfaced_item.rb +0 -38
  144. data/lib/expressir/express/inverse.rb +0 -46
  145. data/lib/expressir/express/inverse_aggregate.rb +0 -37
  146. data/lib/expressir/express/model_element.rb +0 -7
  147. data/lib/expressir/express/named_type.rb +0 -19
  148. data/lib/expressir/express/remark.rb +0 -8
  149. data/lib/expressir/express/repository.rb +0 -306
  150. data/lib/expressir/express/schema_definition.rb +0 -96
  151. data/lib/expressir/express/subtype_constraint.rb +0 -14
  152. data/lib/expressir/express/type.rb +0 -26
  153. data/lib/expressir/express/type_aggregate.rb +0 -42
  154. data/lib/expressir/express/type_enum.rb +0 -29
  155. data/lib/expressir/express/type_parser.rb +0 -45
  156. data/lib/expressir/express/type_select.rb +0 -82
  157. data/lib/expressir/express/unique_rule.rb +0 -35
  158. data/lib/expressir/express/where_rule.rb +0 -32
  159. data/lib/expressir/express.rb +0 -11
  160. data/lib/expressir/express_exp/2.4/express_parser.so +0 -0
  161. data/lib/expressir/express_exp/2.5/express_parser.so +0 -0
  162. data/lib/expressir/express_exp/2.6/express_parser.so +0 -0
  163. data/lib/expressir/express_exp/2.7/express_parser.so +0 -0
  164. data/lib/expressir/express_exp/3.0/express_parser.so +0 -0
  165. data/lib/expressir/express_exp/cache.rb +0 -48
  166. data/lib/expressir/express_exp/schema_head_formatter.rb +0 -9
  167. data/lib/expressir/express_parser.rb +0 -30
  168. data/lib/expressir/model/attribute.rb +0 -38
  169. data/lib/expressir/model/constant.rb +0 -28
  170. data/lib/expressir/model/entity.rb +0 -42
  171. data/lib/expressir/model/enumeration_item.rb +0 -22
  172. data/lib/expressir/model/expressions/aggregate_item.rb +0 -17
  173. data/lib/expressir/model/expressions/attribute_reference.rb +0 -17
  174. data/lib/expressir/model/expressions/call.rb +0 -17
  175. data/lib/expressir/model/expressions/group_reference.rb +0 -17
  176. data/lib/expressir/model/expressions/index_reference.rb +0 -19
  177. data/lib/expressir/model/expressions/simple_reference.rb +0 -19
  178. data/lib/expressir/model/function.rb +0 -57
  179. data/lib/expressir/model/interface.rb +0 -20
  180. data/lib/expressir/model/interface_item.rb +0 -15
  181. data/lib/expressir/model/interfaced_item.rb +0 -27
  182. data/lib/expressir/model/parameter.rb +0 -28
  183. data/lib/expressir/model/procedure.rb +0 -55
  184. data/lib/expressir/model/remark_item.rb +0 -15
  185. data/lib/expressir/model/rule.rb +0 -60
  186. data/lib/expressir/model/schema.rb +0 -100
  187. data/lib/expressir/model/statements/call.rb +0 -17
  188. data/lib/expressir/model/subtype_constraint.rb +0 -32
  189. data/lib/expressir/model/type.rb +0 -37
  190. data/lib/expressir/model/types/aggregate.rb +0 -28
  191. data/lib/expressir/model/types/array.rb +0 -23
  192. data/lib/expressir/model/types/bag.rb +0 -19
  193. data/lib/expressir/model/types/binary.rb +0 -17
  194. data/lib/expressir/model/types/boolean.rb +0 -8
  195. data/lib/expressir/model/types/enumeration.rb +0 -21
  196. data/lib/expressir/model/types/generic.rb +0 -24
  197. data/lib/expressir/model/types/generic_entity.rb +0 -24
  198. data/lib/expressir/model/types/integer.rb +0 -8
  199. data/lib/expressir/model/types/list.rb +0 -21
  200. data/lib/expressir/model/types/logical.rb +0 -8
  201. data/lib/expressir/model/types/number.rb +0 -8
  202. data/lib/expressir/model/types/real.rb +0 -15
  203. data/lib/expressir/model/types/select.rb +0 -23
  204. data/lib/expressir/model/types/set.rb +0 -19
  205. data/lib/expressir/model/types/string.rb +0 -17
  206. data/lib/expressir/model/unique.rb +0 -26
  207. data/lib/expressir/model/variable.rb +0 -28
  208. data/lib/expressir/model/where.rb +0 -26
  209. data/lib/expressir/parser/owl_parser.rb +0 -8
  210. data/lib/expressir/parser.rb +0 -6
  211. data/original/examples/syntax/multiple.yaml +0 -198
  212. data/original/examples/syntax/single.yaml +0 -15
  213. data/spec/acceptance/express_to_owl_spec.rb +0 -18
  214. data/spec/expressir/express/repository_spec.rb +0 -25
  215. data/spec/expressir/express_exp/formatter_spec.rb +0 -127
@@ -1,198 +0,0 @@
1
- ---
2
- _class: Expressir::Model::Repository
3
- schemas:
4
- - _class: Expressir::Model::Schema
5
- file: original/examples/syntax/multiple.exp
6
- id: multiple_schema
7
- interfaces:
8
- - _class: Expressir::Model::Interface
9
- kind: :REFERENCE
10
- schema:
11
- _class: Expressir::Model::Expressions::SimpleReference
12
- id: multiple_schema2
13
- base_path: multiple_schema2
14
- - _class: Expressir::Model::Interface
15
- kind: :REFERENCE
16
- schema:
17
- _class: Expressir::Model::Expressions::SimpleReference
18
- id: multiple_schema3
19
- base_path: multiple_schema3
20
- items:
21
- - _class: Expressir::Model::InterfaceItem
22
- ref:
23
- _class: Expressir::Model::Expressions::SimpleReference
24
- id: attribute_entity3
25
- base_path: multiple_schema3.attribute_entity3
26
- - _class: Expressir::Model::Interface
27
- kind: :REFERENCE
28
- schema:
29
- _class: Expressir::Model::Expressions::SimpleReference
30
- id: multiple_schema4
31
- base_path: multiple_schema4
32
- items:
33
- - _class: Expressir::Model::InterfaceItem
34
- ref:
35
- _class: Expressir::Model::Expressions::SimpleReference
36
- id: attribute_entity
37
- base_path: multiple_schema4.attribute_entity
38
- id: attribute_entity4
39
- entities:
40
- - _class: Expressir::Model::Entity
41
- id: test
42
- - _class: Expressir::Model::Entity
43
- id: empty_entity
44
- - _class: Expressir::Model::Entity
45
- id: attribute_entity
46
- attributes:
47
- - _class: Expressir::Model::Attribute
48
- id: test
49
- kind: :EXPLICIT
50
- type:
51
- _class: Expressir::Model::Types::Boolean
52
- - _class: Expressir::Model::Entity
53
- id: subtype_empty_entity
54
- subtype_of:
55
- - _class: Expressir::Model::Expressions::SimpleReference
56
- id: empty_entity
57
- base_path: multiple_schema.empty_entity
58
- - _class: Expressir::Model::Entity
59
- id: subtype_attribute_entity
60
- subtype_of:
61
- - _class: Expressir::Model::Expressions::SimpleReference
62
- id: attribute_entity
63
- base_path: multiple_schema.attribute_entity
64
- attributes:
65
- - _class: Expressir::Model::Attribute
66
- kind: :EXPLICIT
67
- supertype_attribute:
68
- _class: Expressir::Model::Expressions::AttributeReference
69
- ref:
70
- _class: Expressir::Model::Expressions::GroupReference
71
- ref:
72
- _class: Expressir::Model::Expressions::SimpleReference
73
- id: SELF
74
- entity:
75
- _class: Expressir::Model::Expressions::SimpleReference
76
- id: attribute_entity
77
- base_path: multiple_schema.attribute_entity
78
- attribute:
79
- _class: Expressir::Model::Expressions::SimpleReference
80
- id: test
81
- type:
82
- _class: Expressir::Model::Types::Boolean
83
- - _class: Expressir::Model::Entity
84
- id: subtype_attribute_entity2
85
- subtype_of:
86
- - _class: Expressir::Model::Expressions::SimpleReference
87
- id: attribute_entity2
88
- base_path: multiple_schema2.attribute_entity2
89
- attributes:
90
- - _class: Expressir::Model::Attribute
91
- kind: :EXPLICIT
92
- supertype_attribute:
93
- _class: Expressir::Model::Expressions::AttributeReference
94
- ref:
95
- _class: Expressir::Model::Expressions::GroupReference
96
- ref:
97
- _class: Expressir::Model::Expressions::SimpleReference
98
- id: SELF
99
- entity:
100
- _class: Expressir::Model::Expressions::SimpleReference
101
- id: attribute_entity2
102
- base_path: multiple_schema2.attribute_entity2
103
- attribute:
104
- _class: Expressir::Model::Expressions::SimpleReference
105
- id: test
106
- type:
107
- _class: Expressir::Model::Types::Boolean
108
- - _class: Expressir::Model::Entity
109
- id: subtype_attribute_entity3
110
- subtype_of:
111
- - _class: Expressir::Model::Expressions::SimpleReference
112
- id: attribute_entity3
113
- base_path: multiple_schema3.attribute_entity3
114
- attributes:
115
- - _class: Expressir::Model::Attribute
116
- kind: :EXPLICIT
117
- supertype_attribute:
118
- _class: Expressir::Model::Expressions::AttributeReference
119
- ref:
120
- _class: Expressir::Model::Expressions::GroupReference
121
- ref:
122
- _class: Expressir::Model::Expressions::SimpleReference
123
- id: SELF
124
- entity:
125
- _class: Expressir::Model::Expressions::SimpleReference
126
- id: attribute_entity3
127
- base_path: multiple_schema3.attribute_entity3
128
- attribute:
129
- _class: Expressir::Model::Expressions::SimpleReference
130
- id: test
131
- type:
132
- _class: Expressir::Model::Types::Boolean
133
- - _class: Expressir::Model::Entity
134
- id: subtype_attribute_entity4
135
- subtype_of:
136
- - _class: Expressir::Model::Expressions::SimpleReference
137
- id: attribute_entity4
138
- base_path: multiple_schema4.attribute_entity
139
- attributes:
140
- - _class: Expressir::Model::Attribute
141
- kind: :EXPLICIT
142
- supertype_attribute:
143
- _class: Expressir::Model::Expressions::AttributeReference
144
- ref:
145
- _class: Expressir::Model::Expressions::GroupReference
146
- ref:
147
- _class: Expressir::Model::Expressions::SimpleReference
148
- id: SELF
149
- entity:
150
- _class: Expressir::Model::Expressions::SimpleReference
151
- id: attribute_entity4
152
- base_path: multiple_schema4.attribute_entity
153
- attribute:
154
- _class: Expressir::Model::Expressions::SimpleReference
155
- id: test
156
- type:
157
- _class: Expressir::Model::Types::Boolean
158
- - _class: Expressir::Model::Entity
159
- id: subtype_missing_entity
160
- subtype_of:
161
- - _class: Expressir::Model::Expressions::SimpleReference
162
- id: missing_entity
163
- - _class: Expressir::Model::Schema
164
- file: original/examples/syntax/multiple.exp
165
- id: multiple_schema2
166
- entities:
167
- - _class: Expressir::Model::Entity
168
- id: attribute_entity2
169
- attributes:
170
- - _class: Expressir::Model::Attribute
171
- id: test
172
- kind: :EXPLICIT
173
- type:
174
- _class: Expressir::Model::Types::Boolean
175
- - _class: Expressir::Model::Schema
176
- file: original/examples/syntax/multiple.exp
177
- id: multiple_schema3
178
- entities:
179
- - _class: Expressir::Model::Entity
180
- id: attribute_entity3
181
- attributes:
182
- - _class: Expressir::Model::Attribute
183
- id: test
184
- kind: :EXPLICIT
185
- type:
186
- _class: Expressir::Model::Types::Boolean
187
- - _class: Expressir::Model::Schema
188
- file: original/examples/syntax/multiple.exp
189
- id: multiple_schema4
190
- entities:
191
- - _class: Expressir::Model::Entity
192
- id: attribute_entity
193
- attributes:
194
- - _class: Expressir::Model::Attribute
195
- id: test
196
- kind: :EXPLICIT
197
- type:
198
- _class: Expressir::Model::Types::Boolean
@@ -1,15 +0,0 @@
1
- ---
2
- _class: Expressir::Model::Repository
3
- schemas:
4
- - _class: Expressir::Model::Schema
5
- file: original/examples/syntax/single.exp
6
- id: single_schema
7
- entities:
8
- - _class: Expressir::Model::Entity
9
- id: empty_entity
10
- - _class: Expressir::Model::Entity
11
- id: subtype_empty_entity
12
- subtype_of:
13
- - _class: Expressir::Model::Expressions::SimpleReference
14
- id: empty_entity
15
- base_path: single_schema.empty_entity
@@ -1,18 +0,0 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe "Expressir" do
4
- describe "express-to-owl" do
5
- pending "Still needs implementation"
6
-
7
- it "convert express to owl system" do
8
- command = %W(express-to-owl #{sample_file})
9
- capture_stdout { Expressir::Cli.start(command) }
10
- end
11
- end
12
-
13
- def sample_file
14
- @sample_file ||= Expressir.root_path.join(
15
- "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.xml"
16
- )
17
- end
18
- end
@@ -1,25 +0,0 @@
1
- require "spec_helper"
2
-
3
- RSpec.describe Expressir::Express::Repository do
4
- describe ".from_file" do
5
- it "build an instance from a file" do
6
- name = "Ap233_systems_engineering_arm_LF"
7
-
8
- repo = Expressir::Express::Repository.from_xml(sample_file)
9
- schema = repo.schemas.first
10
-
11
- expect(repo.name).to eq(name)
12
- expect(repo.schemas.count).to eq(1)
13
- expect(schema.name).to eq(name)
14
- expect(schema.contents.count).to eq(795)
15
- expect(schema.contents.first.schema).to eq(name)
16
- expect(schema.contents.first.name).to eq("Abs_function")
17
- end
18
- end
19
-
20
- def sample_file
21
- @sample_file ||= Expressir.root_path.join(
22
- "original", "examples", "ap233", "ap233e1_arm_lf_stepmod-2010-11-12.xml"
23
- )
24
- end
25
- end
@@ -1,127 +0,0 @@
1
- require "yaml"
2
- require "spec_helper"
3
- require "expressir/express_exp/parser"
4
- require "expressir/express_exp/formatter"
5
- require "expressir/express_exp/schema_head_formatter"
6
- require "expressir/express_exp/hyperlink_formatter"
7
-
8
- RSpec.describe Expressir::ExpressExp::Formatter do
9
- describe ".format" do
10
- it "exports an object (single.exp)" do
11
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "single.exp")
12
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "single_formatted.exp")
13
-
14
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
15
-
16
- result = Expressir::ExpressExp::Formatter.format(repo)
17
- # File.write(formatted_exp_file, result)
18
- expected_result = File.read(formatted_exp_file)
19
-
20
- expect(result).to eq(expected_result)
21
- end
22
-
23
- it "exports an object (multiple.exp)" do
24
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "multiple.exp")
25
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "multiple_formatted.exp")
26
-
27
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
28
-
29
- result = Expressir::ExpressExp::Formatter.format(repo)
30
- # File.write(formatted_exp_file, result)
31
- expected_result = File.read(formatted_exp_file)
32
-
33
- expect(result).to eq(expected_result)
34
- end
35
-
36
- it "exports an object (remark.exp)" do
37
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "remark.exp")
38
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "remark_formatted.exp")
39
-
40
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
41
-
42
- result = Expressir::ExpressExp::Formatter.format(repo)
43
- # File.write(formatted_exp_file, result)
44
- expected_result = File.read(formatted_exp_file)
45
-
46
- expect(result).to eq(expected_result)
47
- end
48
-
49
- it "exports an object (syntax.exp)" do
50
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "syntax.exp")
51
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "syntax_formatted.exp")
52
-
53
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
54
-
55
- result = Expressir::ExpressExp::Formatter.format(repo)
56
- # File.write(formatted_exp_file, result)
57
- expected_result = File.read(formatted_exp_file)
58
-
59
- expect(result).to eq(expected_result)
60
- end
61
-
62
- it "exports an object with schema head formatter (syntax.exp)" do
63
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "syntax.exp")
64
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "syntax_schema_head_formatted.exp")
65
-
66
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
67
-
68
- formatter = Class.new(Expressir::ExpressExp::Formatter) do
69
- include Expressir::ExpressExp::SchemaHeadFormatter
70
- end
71
- result = formatter.format(repo)
72
- # File.write(formatted_exp_file, result)
73
- expected_result = File.read(formatted_exp_file)
74
-
75
- expect(result).to eq(expected_result)
76
- end
77
-
78
- it "exports an object with hyperlink formatter (syntax.exp)" do
79
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "syntax.exp")
80
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "syntax_hyperlink_formatted.exp")
81
-
82
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
83
-
84
- formatter = Class.new(Expressir::ExpressExp::Formatter) do
85
- include Expressir::ExpressExp::HyperlinkFormatter
86
- end
87
- result = formatter.format(repo)
88
- # File.write(formatted_exp_file, result)
89
- expected_result = File.read(formatted_exp_file)
90
-
91
- expect(result).to eq(expected_result)
92
- end
93
-
94
- it "exports an object with hyperlink formatter (multiple.exp)" do
95
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "multiple.exp")
96
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "multiple_hyperlink_formatted.exp")
97
-
98
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
99
-
100
- formatter = Class.new(Expressir::ExpressExp::Formatter) do
101
- include Expressir::ExpressExp::HyperlinkFormatter
102
- end
103
- result = formatter.format(repo)
104
- # File.write(formatted_exp_file, result)
105
- expected_result = File.read(formatted_exp_file)
106
-
107
- expect(result).to eq(expected_result)
108
- end
109
-
110
- it "exports an object with schema head and hyperlink formatter (multiple.exp)" do
111
- exp_file = Expressir.root_path.join("original", "examples", "syntax", "multiple.exp")
112
- formatted_exp_file = Expressir.root_path.join("original", "examples", "syntax", "multiple_schema_head_hyperlink_formatted.exp")
113
-
114
- repo = Expressir::ExpressExp::Parser.from_file(exp_file)
115
-
116
- formatter = Class.new(Expressir::ExpressExp::Formatter) do
117
- include Expressir::ExpressExp::SchemaHeadFormatter
118
- include Expressir::ExpressExp::HyperlinkFormatter
119
- end
120
- result = formatter.format(repo)
121
- # File.write(formatted_exp_file, result)
122
- expected_result = File.read(formatted_exp_file)
123
-
124
- expect(result).to eq(expected_result)
125
- end
126
- end
127
- end