rsmp_schemer 0.3.1 → 0.4.1

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 (37) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +10 -9
  3. data/lib/rsmp_schemer/version.rb +1 -1
  4. data/rsmp_schemer.gemspec +1 -1
  5. data/schemas/core_3.1.2/schema/core/alarm.json +8 -4
  6. data/schemas/core_3.1.2/spec/core/alarm_spec.rb +15 -0
  7. data/schemas/core_3.1.4/.gitignore +1 -0
  8. data/schemas/core_3.1.4/schema/core/alarm.json +8 -4
  9. data/schemas/core_3.1.4/spec/core/alarm_spec.rb +15 -0
  10. data/schemas/core_3.1.4/spec/core/version_spec.rb +3 -2
  11. data/schemas/core_3.1.5/.gitignore +1 -0
  12. data/schemas/core_3.1.5/schema/core/alarm.json +40 -41
  13. data/schemas/core_3.1.5/schema/core/alarm_issue.json +44 -0
  14. data/schemas/core_3.1.5/schema/core/alarm_suspend_resume.json +3 -0
  15. data/schemas/core_3.1.5/schema/core/alarm_suspended_resumed.json +47 -0
  16. data/schemas/core_3.1.5/schema/core/command_response.json +1 -1
  17. data/schemas/core_3.1.5/schema/core/status_response.json +1 -1
  18. data/schemas/core_3.1.5/schema/core/status_update.json +1 -1
  19. data/schemas/core_3.1.5/spec/core/alarm_issue_spec.rb +299 -0
  20. data/schemas/core_3.1.5/spec/core/alarm_resume_spec.rb +93 -0
  21. data/schemas/core_3.1.5/spec/core/alarm_resumed_spec.rb +277 -0
  22. data/schemas/core_3.1.5/spec/core/alarm_suspend_spec.rb +93 -0
  23. data/schemas/core_3.1.5/spec/core/alarm_suspended_spec.rb +277 -0
  24. data/schemas/core_3.1.5/spec/core/version_spec.rb +3 -2
  25. data/schemas/tlc_1.0.13/schema/tlc/statuses/S0023.json +1 -1
  26. data/schemas/tlc_1.0.13/spec/tlc/S0023_spec.rb +96 -0
  27. data/schemas/tlc_1.0.14/schema/tlc/statuses/S0023.json +1 -1
  28. data/schemas/tlc_1.0.14/spec/tlc/S0023_spec.rb +96 -0
  29. data/schemas/tlc_1.0.15/schema/tlc/statuses/S0023.json +1 -1
  30. data/schemas/tlc_1.0.15/spec/tlc/S0023_spec.rb +96 -0
  31. metadata +18 -11
  32. data/schemas/core_3.1.2/examples/validate.rb +0 -35
  33. data/schemas/core_3.1.4/examples/validate.rb +0 -35
  34. data/schemas/core_3.1.4/spec/core/alarm_request_spec.rb +0 -72
  35. data/schemas/core_3.1.5/examples/validate.rb +0 -35
  36. data/schemas/core_3.1.5/spec/core/alarm_request_spec.rb +0 -72
  37. data/schemas/core_3.1.5/spec/core/alarm_spec.rb +0 -298
@@ -1,298 +0,0 @@
1
- RSpec.describe "Traffic Light Controller RSMP SXL Schema validation" do
2
- let(:message) {{
3
- "mType" => "rSMsg",
4
- "type" => "Alarm",
5
- "mId" => "E68A0010-C336-41ac-BD58-5C80A72C7092",
6
- "cId" => "AB+84001=860SG001",
7
- "aCId" => "A0001",
8
- "xACId" => "Serious lamp error",
9
- "aSp" => "Issue",
10
- "ack" => "notAcknowledged",
11
- "aS" => "Active",
12
- "sS" => "notSuspended",
13
- "aTs" => "2009-10-01T11:59:31.571Z",
14
- "cat" => "D",
15
- "pri" => "2",
16
- "rvs" => [
17
- {
18
- "n" => "color",
19
- "v" => "red"
20
- }
21
- ]
22
- }}
23
-
24
- it 'accepts valid alarm' do
25
- expect( validate(message) ).to be_nil
26
- end
27
-
28
- it 'catches missing component id' do
29
- invalid = message.dup
30
- invalid.delete 'cId'
31
- expect( validate(invalid) ).to eq([
32
- ["", "required", {"missing_keys"=>["cId"]}]
33
- ])
34
- end
35
-
36
- it 'catches missing alarm code id' do
37
- invalid = message.dup
38
- invalid.delete 'aCId'
39
- expect( validate(invalid) ).to eq([
40
- ["", "required", {"missing_keys"=>["aCId"]}]
41
- ])
42
- end
43
-
44
- it 'catches bad alarm code id' do
45
- invalid = message.dup
46
- invalid['aCId'] = "001"
47
- expect( validate(invalid) ).to eq([
48
- ["/aCId", "pattern"]
49
- ])
50
- end
51
-
52
- it 'catches wrong alarm code id type' do
53
- invalid = message.dup
54
- invalid['aCId'] = 123
55
- expect( validate(invalid) ).to eq([
56
- ["/aCId", "string"]
57
- ])
58
- end
59
-
60
- it 'catches missing extended alarm code id' do
61
- invalid = message.dup
62
- invalid.delete 'xACId'
63
- expect( validate(invalid) ).to eq([
64
- ["", "required", {"missing_keys"=>["xACId"]}]
65
- ])
66
- end
67
-
68
- it 'catches wrong extended alarm code id type' do
69
- invalid = message.dup
70
- invalid['xACId'] = 123
71
- expect( validate(invalid) ).to eq([
72
- ["/xACId", "string"]
73
- ])
74
- end
75
-
76
- it 'catches missing state' do
77
- invalid = message.dup
78
- invalid.delete 'aSp'
79
- expect( validate(invalid) ).to eq([
80
- ["", "required", {"missing_keys"=>["aSp"]}]
81
- ])
82
- end
83
-
84
- it 'catches bad state' do
85
- invalid = message.dup
86
- invalid['aSp'] = "Bad"
87
- expect( validate(invalid) ).to eq([
88
- ["/aSp", "enum"]
89
- ])
90
- end
91
-
92
- it 'catches wrong state type' do
93
- invalid = message.dup
94
- invalid['aSp'] = 123
95
- expect( validate(invalid) ).to eq([
96
- ["/aSp", "enum"],
97
- ["/aSp", "string"]
98
- ])
99
- end
100
-
101
- it 'catches missing alarm code id' do
102
- invalid = message.dup
103
- invalid.delete 'aS'
104
- expect( validate(invalid) ).to eq([
105
- ["", "required", {"missing_keys"=>["aS"]}]
106
- ])
107
- end
108
-
109
- it 'catches bad alarm code id' do
110
- invalid = message.dup
111
- invalid['aS'] = "Bad"
112
- expect( validate(invalid) ).to eq([
113
- ["/aS", "enum"]
114
- ])
115
- end
116
-
117
- it 'catches wrong alarm code id type' do
118
- invalid = message.dup
119
- invalid['aS'] = 123
120
- expect( validate(invalid) ).to eq([
121
- ["/aS", "enum"],
122
- ["/aS", "string"]
123
- ])
124
- end
125
-
126
- it 'catches missing alarm code id' do
127
- invalid = message.dup
128
- invalid.delete 'sS'
129
- expect( validate(invalid) ).to eq([
130
- ["", "required", {"missing_keys"=>["sS"]}]
131
- ])
132
- end
133
-
134
- it 'catches bad alarm code id' do
135
- invalid = message.dup
136
- invalid['sS'] = "Bad"
137
- expect( validate(invalid) ).to eq([
138
- ["/sS", "enum"]
139
- ])
140
- end
141
-
142
- it 'catches wrong alarm code id type' do
143
- invalid = message.dup
144
- invalid['sS'] = 123
145
- expect( validate(invalid) ).to eq([
146
- ["/sS", "enum"],
147
- ["/sS", "string"]
148
- ])
149
- end
150
-
151
- it 'catches missing alarm code id' do
152
- invalid = message.dup
153
- invalid.delete 'ack'
154
- expect( validate(invalid) ).to eq([
155
- ["", "required", {"missing_keys"=>["ack"]}]
156
- ])
157
- end
158
-
159
- it 'catches bad alarm code id' do
160
- invalid = message.dup
161
- invalid['ack'] = "Bad"
162
- expect( validate(invalid) ).to eq([
163
- ["/ack", "enum"]
164
- ])
165
- end
166
-
167
- it 'catches wrong alarm code id type' do
168
- invalid = message.dup
169
- invalid['ack'] = 123
170
- expect( validate(invalid) ).to eq([
171
- ["/ack", "enum"],
172
- ["/ack", "string"]
173
- ])
174
- end
175
-
176
- it 'catches missing category' do
177
- invalid = message.dup
178
- invalid.delete 'cat'
179
- expect( validate(invalid) ).to eq([
180
- ["", "required", {"missing_keys"=>["cat"]}]
181
- ])
182
- end
183
-
184
- it 'catches bad category' do
185
- invalid = message.dup
186
- invalid['cat'] = "A"
187
- expect( validate(invalid) ).to eq([
188
- ["/cat", "enum"]
189
- ])
190
- end
191
-
192
- it 'catches wrong category' do
193
- invalid = message.dup
194
- invalid['cat'] = 123
195
- expect( validate(invalid) ).to eq([
196
- ["/cat", "enum"],
197
- ["/cat", "string"]
198
- ])
199
- end
200
-
201
- it 'catches missing priority' do
202
- invalid = message.dup
203
- invalid.delete 'pri'
204
- expect( validate(invalid) ).to eq([
205
- ["", "required", {"missing_keys"=>["pri"]}]
206
- ])
207
- end
208
-
209
- it 'catches bad priority' do
210
- invalid = message.dup
211
- invalid['pri'] = "4"
212
- expect( validate(invalid) ).to eq([
213
- ["/pri", "enum"]
214
- ])
215
- end
216
-
217
- it 'catches wrong priority' do
218
- invalid = message.dup
219
- invalid['pri'] = 1
220
- expect( validate(invalid) ).to eq([
221
- ["/pri", "enum"],
222
- ["/pri", "string"]
223
- ])
224
- end
225
-
226
- it 'catches missing timestamp' do
227
- invalid = message.dup
228
- invalid.delete 'aTs'
229
- expect( validate(invalid) ).to eq([
230
- ["", "required", {"missing_keys"=>["aTs"]}]
231
- ])
232
- end
233
-
234
- it 'catches bad timestamp' do
235
- invalid = message.dup
236
- invalid['aTs'] = "yesterday"
237
- expect( validate(invalid) ).to eq([
238
- ["/aTs", "pattern"]
239
- ])
240
- end
241
-
242
- it 'catches wrong timestamp type' do
243
- invalid = message.dup
244
- invalid['aTs'] = 123
245
- expect( validate(invalid) ).to eq([
246
- ["/aTs", "string"]
247
- ])
248
- end
249
-
250
- it 'catches missing rvs' do
251
- invalid = message.dup
252
- invalid.delete 'rvs'
253
- expect( validate(invalid) ).to eq([
254
- ["", "required", {"missing_keys"=>["rvs"]}]
255
- ])
256
- end
257
-
258
- it 'catches bad rvs type' do
259
- invalid = message.dup
260
- invalid["rvs"] = {}
261
- expect( validate(invalid) ).to eq([
262
- ["/rvs", "array"]
263
- ])
264
- end
265
-
266
- it 'catches missing alarm name' do
267
- invalid = message.dup
268
- invalid["rvs"].first.delete 'n'
269
- expect( validate(invalid) ).to eq([
270
- ["/rvs/0", "required", {"missing_keys"=>["n"]}]
271
- ])
272
- end
273
-
274
- it 'catches bad alarm name' do
275
- invalid = message.dup
276
- invalid["rvs"].first['n'] = 3
277
- expect( validate(invalid) ).to eq([
278
- ["/rvs/0/n", "string"]
279
- ])
280
- end
281
-
282
- it 'catches missing alarm value' do
283
- invalid = message.dup
284
- invalid["rvs"].first.delete 'v'
285
- expect( validate(invalid) ).to eq([
286
- ["/rvs/0", "required", {"missing_keys"=>["v"]}]
287
- ])
288
- end
289
-
290
- it 'catches bad alarm value' do
291
- invalid = message.dup
292
- invalid["rvs"].first['v'] = 3
293
- expect( validate(invalid) ).to eq([
294
- ["/rvs/0/v", "string"]
295
- ])
296
- end
297
-
298
- end