rsmp_schemer 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +10 -0
- data/.gitmodules +44 -0
- data/.rspec +1 -0
- data/CHANGELOG.md +7 -0
- data/Gemfile +6 -0
- data/Gemfile.lock +46 -0
- data/LICENSE +7 -0
- data/README.md +54 -0
- data/Rakefile +20 -0
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/lib/rsmp_schemer.rb +5 -0
- data/lib/rsmp_schemer/error.rb +16 -0
- data/lib/rsmp_schemer/schemer.rb +90 -0
- data/lib/rsmp_schemer/version.rb +7 -0
- data/rsmp_schemer.gemspec +47 -0
- data/schemas/core_3.1.2/.rspec +1 -0
- data/schemas/core_3.1.2/Gemfile +5 -0
- data/schemas/core_3.1.2/Gemfile.lock +37 -0
- data/schemas/core_3.1.2/LICENSE +7 -0
- data/schemas/core_3.1.2/README.md +70 -0
- data/schemas/core_3.1.2/examples/validate.rb +35 -0
- data/schemas/core_3.1.2/schema/core/aggregated_status.json +25 -0
- data/schemas/core_3.1.2/schema/core/alarm.json +55 -0
- data/schemas/core_3.1.2/schema/core/command_request.json +24 -0
- data/schemas/core_3.1.2/schema/core/command_response.json +34 -0
- data/schemas/core_3.1.2/schema/core/core.json +35 -0
- data/schemas/core_3.1.2/schema/core/definitions.json +63 -0
- data/schemas/core_3.1.2/schema/core/message_ack.json +11 -0
- data/schemas/core_3.1.2/schema/core/message_not_ack.json +15 -0
- data/schemas/core_3.1.2/schema/core/rsmp.json +124 -0
- data/schemas/core_3.1.2/schema/core/status.json +21 -0
- data/schemas/core_3.1.2/schema/core/status_request.json +5 -0
- data/schemas/core_3.1.2/schema/core/status_response.json +30 -0
- data/schemas/core_3.1.2/schema/core/status_subscribe.json +27 -0
- data/schemas/core_3.1.2/schema/core/status_unsubscribe.json +5 -0
- data/schemas/core_3.1.2/schema/core/status_update.json +30 -0
- data/schemas/core_3.1.2/schema/core/version.json +47 -0
- data/schemas/core_3.1.2/schema/core/watchdog.json +9 -0
- data/schemas/core_3.1.2/spec/core/aggregated_status_spec.rb +80 -0
- data/schemas/core_3.1.2/spec/core/alarm_spec.rb +298 -0
- data/schemas/core_3.1.2/spec/core/command_request_spec.rb +106 -0
- data/schemas/core_3.1.2/spec/core/command_response_spec.rb +102 -0
- data/schemas/core_3.1.2/spec/core/core_spec.rb +72 -0
- data/schemas/core_3.1.2/spec/core/message_ack.rb +28 -0
- data/schemas/core_3.1.2/spec/core/message_not_ack_spec.rb +55 -0
- data/schemas/core_3.1.2/spec/core/status_request_spec.rb +93 -0
- data/schemas/core_3.1.2/spec/core/status_response_spec.rb +126 -0
- data/schemas/core_3.1.2/spec/core/status_subscribe_spec.rb +122 -0
- data/schemas/core_3.1.2/spec/core/status_unsubscribe_spec.rb +101 -0
- data/schemas/core_3.1.2/spec/core/status_update_spec.rb +117 -0
- data/schemas/core_3.1.2/spec/core/version_spec.rb +149 -0
- data/schemas/core_3.1.2/spec/core/watchdog_spec.rb +37 -0
- data/schemas/core_3.1.2/spec/schemer_helper.rb +23 -0
- data/schemas/core_3.1.2/spec/spec_helper.rb +102 -0
- data/schemas/core_3.1.3/.rspec +1 -0
- data/schemas/core_3.1.3/Gemfile +5 -0
- data/schemas/core_3.1.3/Gemfile.lock +37 -0
- data/schemas/core_3.1.3/LICENSE +7 -0
- data/schemas/core_3.1.3/README.md +70 -0
- data/schemas/core_3.1.3/examples/validate.rb +32 -0
- data/schemas/core_3.1.3/schema/core/aggregated_status.json +25 -0
- data/schemas/core_3.1.3/schema/core/aggregated_status_request.json +9 -0
- data/schemas/core_3.1.3/schema/core/alarm.json +55 -0
- data/schemas/core_3.1.3/schema/core/command_request.json +24 -0
- data/schemas/core_3.1.3/schema/core/command_response.json +34 -0
- data/schemas/core_3.1.3/schema/core/core.json +36 -0
- data/schemas/core_3.1.3/schema/core/definitions.json +63 -0
- data/schemas/core_3.1.3/schema/core/message_ack.json +11 -0
- data/schemas/core_3.1.3/schema/core/message_not_ack.json +15 -0
- data/schemas/core_3.1.3/schema/core/rsmp.json +133 -0
- data/schemas/core_3.1.3/schema/core/status.json +21 -0
- data/schemas/core_3.1.3/schema/core/status_request.json +5 -0
- data/schemas/core_3.1.3/schema/core/status_response.json +30 -0
- data/schemas/core_3.1.3/schema/core/status_subscribe.json +27 -0
- data/schemas/core_3.1.3/schema/core/status_unsubscribe.json +5 -0
- data/schemas/core_3.1.3/schema/core/status_update.json +30 -0
- data/schemas/core_3.1.3/schema/core/version.json +47 -0
- data/schemas/core_3.1.3/schema/core/watchdog.json +9 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0008.json +19 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0201.json +20 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0202.json +20 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0301.json +49 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/A0302.json +59 -0
- data/schemas/core_3.1.3/schema/tlc/alarms/alarms.json +68 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0001.json +48 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0002.json +39 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0003.json +39 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0004.json +30 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0005.json +39 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0006.json +39 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0007.json +30 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0008.json +40 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0010.json +30 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0011.json +30 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0012.json +29 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0013.json +1 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0014.json +38 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0015.json +38 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0016.json +29 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0017.json +29 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0018.json +38 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0019.json +49 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0020.json +49 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0021.json +1 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0103.json +39 -0
- data/schemas/core_3.1.3/schema/tlc/commands/M0104.json +1 -0
- data/schemas/core_3.1.3/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/core_3.1.3/schema/tlc/commands/commands.json +97 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0001.json +45 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0002.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0003.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0004.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0005.json +18 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0006.json +27 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0007.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0008.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0009.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0010.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0011.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0012.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0013.json +27 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0014.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0015.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0016.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0017.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0018.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0019.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0020.json +27 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0021.json +18 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0022.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0023.json +18 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0024.json +18 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0025.json +80 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0026.json +18 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0027.json +18 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0028.json +18 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0029.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0030.json +1 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0031.json +1 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0091.json +27 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0092.json +27 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0095.json +17 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0096.json +68 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0097.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0201.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0202.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0203.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0204.json +98 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0205.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0206.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0207.json +26 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/S0208.json +98 -0
- data/schemas/core_3.1.3/schema/tlc/statuses/statuses.json +181 -0
- data/schemas/core_3.1.3/schema/tlc/sxl.json +24 -0
- data/schemas/core_3.1.3/spec/core/aggregated_status_spec.rb +80 -0
- data/schemas/core_3.1.3/spec/core/alarm_spec.rb +300 -0
- data/schemas/core_3.1.3/spec/core/command_request_spec.rb +109 -0
- data/schemas/core_3.1.3/spec/core/command_response_spec.rb +144 -0
- data/schemas/core_3.1.3/spec/core/core_spec.rb +72 -0
- data/schemas/core_3.1.3/spec/core/message_ack.rb +28 -0
- data/schemas/core_3.1.3/spec/core/message_not_ack_spec.rb +55 -0
- data/schemas/core_3.1.3/spec/core/status_request_spec.rb +97 -0
- data/schemas/core_3.1.3/spec/core/status_response_spec.rb +121 -0
- data/schemas/core_3.1.3/spec/core/status_subscribe_spec.rb +126 -0
- data/schemas/core_3.1.3/spec/core/status_unsubscribe_spec.rb +105 -0
- data/schemas/core_3.1.3/spec/core/status_update_spec.rb +121 -0
- data/schemas/core_3.1.3/spec/core/version_spec.rb +149 -0
- data/schemas/core_3.1.3/spec/core/watchdog_spec.rb +37 -0
- data/schemas/core_3.1.3/spec/schemer_helper.rb +21 -0
- data/schemas/core_3.1.3/spec/spec_helper.rb +102 -0
- data/schemas/core_3.1.3/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/core_3.1.3/spec/tlc/S0007_spec.rb +233 -0
- data/schemas/core_3.1.4/.rspec +1 -0
- data/schemas/core_3.1.4/Gemfile +5 -0
- data/schemas/core_3.1.4/Gemfile.lock +37 -0
- data/schemas/core_3.1.4/LICENSE +7 -0
- data/schemas/core_3.1.4/README.md +70 -0
- data/schemas/core_3.1.4/examples/validate.rb +35 -0
- data/schemas/core_3.1.4/schema/core/aggregated_status.json +25 -0
- data/schemas/core_3.1.4/schema/core/alarm.json +55 -0
- data/schemas/core_3.1.4/schema/core/command_request.json +24 -0
- data/schemas/core_3.1.4/schema/core/command_response.json +34 -0
- data/schemas/core_3.1.4/schema/core/core.json +35 -0
- data/schemas/core_3.1.4/schema/core/definitions.json +63 -0
- data/schemas/core_3.1.4/schema/core/message_ack.json +11 -0
- data/schemas/core_3.1.4/schema/core/message_not_ack.json +15 -0
- data/schemas/core_3.1.4/schema/core/rsmp.json +124 -0
- data/schemas/core_3.1.4/schema/core/status.json +21 -0
- data/schemas/core_3.1.4/schema/core/status_request.json +5 -0
- data/schemas/core_3.1.4/schema/core/status_response.json +30 -0
- data/schemas/core_3.1.4/schema/core/status_subscribe.json +27 -0
- data/schemas/core_3.1.4/schema/core/status_unsubscribe.json +5 -0
- data/schemas/core_3.1.4/schema/core/status_update.json +30 -0
- data/schemas/core_3.1.4/schema/core/version.json +47 -0
- data/schemas/core_3.1.4/schema/core/watchdog.json +9 -0
- data/schemas/core_3.1.4/spec/core/aggregated_status_spec.rb +80 -0
- data/schemas/core_3.1.4/spec/core/alarm_request_spec.rb +72 -0
- data/schemas/core_3.1.4/spec/core/alarm_spec.rb +298 -0
- data/schemas/core_3.1.4/spec/core/command_request_spec.rb +106 -0
- data/schemas/core_3.1.4/spec/core/command_response_spec.rb +102 -0
- data/schemas/core_3.1.4/spec/core/core_spec.rb +72 -0
- data/schemas/core_3.1.4/spec/core/message_ack.rb +28 -0
- data/schemas/core_3.1.4/spec/core/message_not_ack_spec.rb +55 -0
- data/schemas/core_3.1.4/spec/core/status_request_spec.rb +93 -0
- data/schemas/core_3.1.4/spec/core/status_response_spec.rb +126 -0
- data/schemas/core_3.1.4/spec/core/status_subscribe_spec.rb +122 -0
- data/schemas/core_3.1.4/spec/core/status_unsubscribe_spec.rb +101 -0
- data/schemas/core_3.1.4/spec/core/status_update_spec.rb +117 -0
- data/schemas/core_3.1.4/spec/core/version_spec.rb +149 -0
- data/schemas/core_3.1.4/spec/core/watchdog_spec.rb +37 -0
- data/schemas/core_3.1.4/spec/schemer_helper.rb +23 -0
- data/schemas/core_3.1.4/spec/spec_helper.rb +102 -0
- data/schemas/core_3.1.5/.rspec +1 -0
- data/schemas/core_3.1.5/Gemfile +5 -0
- data/schemas/core_3.1.5/Gemfile.lock +37 -0
- data/schemas/core_3.1.5/LICENSE +7 -0
- data/schemas/core_3.1.5/README.md +70 -0
- data/schemas/core_3.1.5/examples/validate.rb +35 -0
- data/schemas/core_3.1.5/schema/core/aggregated_status.json +25 -0
- data/schemas/core_3.1.5/schema/core/aggregated_status_request.json +9 -0
- data/schemas/core_3.1.5/schema/core/alarm.json +55 -0
- data/schemas/core_3.1.5/schema/core/command_request.json +24 -0
- data/schemas/core_3.1.5/schema/core/command_response.json +34 -0
- data/schemas/core_3.1.5/schema/core/core.json +36 -0
- data/schemas/core_3.1.5/schema/core/definitions.json +63 -0
- data/schemas/core_3.1.5/schema/core/message_ack.json +11 -0
- data/schemas/core_3.1.5/schema/core/message_not_ack.json +15 -0
- data/schemas/core_3.1.5/schema/core/rsmp.json +133 -0
- data/schemas/core_3.1.5/schema/core/status.json +21 -0
- data/schemas/core_3.1.5/schema/core/status_request.json +5 -0
- data/schemas/core_3.1.5/schema/core/status_response.json +30 -0
- data/schemas/core_3.1.5/schema/core/status_subscribe.json +27 -0
- data/schemas/core_3.1.5/schema/core/status_unsubscribe.json +5 -0
- data/schemas/core_3.1.5/schema/core/status_update.json +30 -0
- data/schemas/core_3.1.5/schema/core/version.json +47 -0
- data/schemas/core_3.1.5/schema/core/watchdog.json +9 -0
- data/schemas/core_3.1.5/spec/core/aggregated_status_spec.rb +80 -0
- data/schemas/core_3.1.5/spec/core/alarm_request_spec.rb +72 -0
- data/schemas/core_3.1.5/spec/core/alarm_spec.rb +298 -0
- data/schemas/core_3.1.5/spec/core/command_request_spec.rb +106 -0
- data/schemas/core_3.1.5/spec/core/command_response_spec.rb +102 -0
- data/schemas/core_3.1.5/spec/core/core_spec.rb +72 -0
- data/schemas/core_3.1.5/spec/core/message_ack.rb +28 -0
- data/schemas/core_3.1.5/spec/core/message_not_ack_spec.rb +55 -0
- data/schemas/core_3.1.5/spec/core/status_request_spec.rb +93 -0
- data/schemas/core_3.1.5/spec/core/status_response_spec.rb +126 -0
- data/schemas/core_3.1.5/spec/core/status_subscribe_spec.rb +122 -0
- data/schemas/core_3.1.5/spec/core/status_unsubscribe_spec.rb +101 -0
- data/schemas/core_3.1.5/spec/core/status_update_spec.rb +117 -0
- data/schemas/core_3.1.5/spec/core/version_spec.rb +149 -0
- data/schemas/core_3.1.5/spec/core/watchdog_spec.rb +37 -0
- data/schemas/core_3.1.5/spec/schemer_helper.rb +23 -0
- data/schemas/core_3.1.5/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.10/.gitignore +1 -0
- data/schemas/tlc_1.0.10/.rspec +1 -0
- data/schemas/tlc_1.0.10/Gemfile +5 -0
- data/schemas/tlc_1.0.10/Gemfile.lock +37 -0
- data/schemas/tlc_1.0.10/LICENSE +7 -0
- data/schemas/tlc_1.0.10/README.md +70 -0
- data/schemas/tlc_1.0.10/schema/core/definitions.json +63 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0008.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0201.json +39 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0202.json +39 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0301.json +105 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/A0302.json +131 -0
- data/schemas/tlc_1.0.10/schema/tlc/alarms/alarms.json +254 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0001.json +105 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0002.json +79 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0003.json +79 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0004.json +58 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0005.json +79 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0006.json +79 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0007.json +58 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0008.json +79 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0010.json +58 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0011.json +58 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0012.json +58 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0013.json +58 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0103.json +82 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/M0104.json +163 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/tlc_1.0.10/schema/tlc/commands/commands.json +366 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0001.json +98 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0002.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0003.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0004.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0005.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0006.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0007.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0008.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0009.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0010.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0011.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0012.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0013.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0014.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0015.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0016.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0017.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0018.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0019.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0020.json +61 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0021.json +35 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0091.json +61 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0092.json +61 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0095.json +34 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0096.json +139 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0201.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0202.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0203.json +55 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/S0204.json +223 -0
- data/schemas/tlc_1.0.10/schema/tlc/statuses/statuses.json +738 -0
- data/schemas/tlc_1.0.10/schema/tlc/sxl.json +71 -0
- data/schemas/tlc_1.0.10/spec/schemer_helper.rb +21 -0
- data/schemas/tlc_1.0.10/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.10/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/tlc_1.0.10/spec/tlc/S0007_spec.rb +159 -0
- data/schemas/tlc_1.0.13/.gitignore +1 -0
- data/schemas/tlc_1.0.13/.rspec +1 -0
- data/schemas/tlc_1.0.13/Gemfile +5 -0
- data/schemas/tlc_1.0.13/Gemfile.lock +37 -0
- data/schemas/tlc_1.0.13/LICENSE +7 -0
- data/schemas/tlc_1.0.13/README.md +70 -0
- data/schemas/tlc_1.0.13/schema/core/definitions.json +63 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0008.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0201.json +39 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0202.json +39 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0301.json +105 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/A0302.json +131 -0
- data/schemas/tlc_1.0.13/schema/tlc/alarms/alarms.json +254 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0001.json +105 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0002.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0003.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0004.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0005.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0006.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0007.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0008.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0010.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0011.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0012.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0013.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0014.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0015.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0016.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0017.json +58 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0018.json +79 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0019.json +100 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0103.json +82 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/M0104.json +163 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/tlc_1.0.13/schema/tlc/commands/commands.json +366 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0001.json +98 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0002.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0003.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0004.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0005.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0006.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0007.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0008.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0009.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0010.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0011.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0012.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0013.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0014.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0015.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0016.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0017.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0018.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0019.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0020.json +61 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0021.json +35 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0022.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0023.json +35 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0024.json +35 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0025.json +181 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0026.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0027.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0028.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0029.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0091.json +61 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0092.json +61 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0095.json +34 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0096.json +139 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0201.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0202.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0203.json +55 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/S0204.json +223 -0
- data/schemas/tlc_1.0.13/schema/tlc/statuses/statuses.json +738 -0
- data/schemas/tlc_1.0.13/schema/tlc/sxl.json +71 -0
- data/schemas/tlc_1.0.13/spec/schemer_helper.rb +21 -0
- data/schemas/tlc_1.0.13/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.13/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/tlc_1.0.13/spec/tlc/S0007_spec.rb +159 -0
- data/schemas/tlc_1.0.14/.gitignore +1 -0
- data/schemas/tlc_1.0.14/.rspec +1 -0
- data/schemas/tlc_1.0.14/Gemfile +5 -0
- data/schemas/tlc_1.0.14/Gemfile.lock +37 -0
- data/schemas/tlc_1.0.14/LICENSE +7 -0
- data/schemas/tlc_1.0.14/README.md +70 -0
- data/schemas/tlc_1.0.14/schema/core/definitions.json +63 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0008.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0201.json +39 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0202.json +39 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0301.json +105 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/A0302.json +131 -0
- data/schemas/tlc_1.0.14/schema/tlc/alarms/alarms.json +254 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0001.json +105 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0002.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0003.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0004.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0005.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0006.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0007.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0008.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0010.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0011.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0012.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0013.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0014.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0015.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0016.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0017.json +58 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0018.json +79 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0019.json +100 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0103.json +82 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/M0104.json +163 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/tlc_1.0.14/schema/tlc/commands/commands.json +366 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0001.json +98 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0002.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0003.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0004.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0005.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0006.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0007.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0008.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0009.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0010.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0011.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0012.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0013.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0014.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0015.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0016.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0017.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0018.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0019.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0020.json +61 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0021.json +35 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0022.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0023.json +35 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0024.json +35 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0025.json +181 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0026.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0027.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0028.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0029.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0091.json +61 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0092.json +61 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0095.json +34 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0096.json +139 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0201.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0202.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0203.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0204.json +223 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0205.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0206.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0207.json +55 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/S0208.json +223 -0
- data/schemas/tlc_1.0.14/schema/tlc/statuses/statuses.json +738 -0
- data/schemas/tlc_1.0.14/schema/tlc/sxl.json +71 -0
- data/schemas/tlc_1.0.14/spec/schemer_helper.rb +21 -0
- data/schemas/tlc_1.0.14/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.14/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/tlc_1.0.14/spec/tlc/S0007_spec.rb +159 -0
- data/schemas/tlc_1.0.15/.gitignore +1 -0
- data/schemas/tlc_1.0.15/.rspec +1 -0
- data/schemas/tlc_1.0.15/Gemfile +5 -0
- data/schemas/tlc_1.0.15/Gemfile.lock +37 -0
- data/schemas/tlc_1.0.15/LICENSE +7 -0
- data/schemas/tlc_1.0.15/README.md +70 -0
- data/schemas/tlc_1.0.15/schema/core/definitions.json +63 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0008.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0010.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0201.json +39 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0202.json +39 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0301.json +105 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/A0302.json +131 -0
- data/schemas/tlc_1.0.15/schema/tlc/alarms/alarms.json +254 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0001.json +105 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0002.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0003.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0004.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0005.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0006.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0007.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0008.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0010.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0011.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0012.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0013.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0014.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0015.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0016.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0017.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0018.json +79 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0019.json +100 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0020.json +100 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0021.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0103.json +82 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/M0104.json +163 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/tlc_1.0.15/schema/tlc/commands/commands.json +366 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0001.json +98 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0002.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0003.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0004.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0005.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0006.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0007.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0008.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0009.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0010.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0011.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0012.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0013.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0014.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0015.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0016.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0017.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0018.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0019.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0020.json +61 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0021.json +35 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0022.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0023.json +35 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0024.json +35 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0025.json +181 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0026.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0027.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0028.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0029.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0030.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0031.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0091.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0092.json +58 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0095.json +34 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0096.json +139 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0097.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0098.json +76 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0201.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0202.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0203.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0204.json +223 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0205.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0206.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0207.json +55 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/S0208.json +223 -0
- data/schemas/tlc_1.0.15/schema/tlc/statuses/statuses.json +738 -0
- data/schemas/tlc_1.0.15/schema/tlc/sxl.json +71 -0
- data/schemas/tlc_1.0.15/spec/schemer_helper.rb +21 -0
- data/schemas/tlc_1.0.15/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.15/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/tlc_1.0.15/spec/tlc/S0007_spec.rb +159 -0
- data/schemas/tlc_1.0.7/.gitignore +1 -0
- data/schemas/tlc_1.0.7/.rspec +1 -0
- data/schemas/tlc_1.0.7/Gemfile +5 -0
- data/schemas/tlc_1.0.7/Gemfile.lock +37 -0
- data/schemas/tlc_1.0.7/LICENSE +7 -0
- data/schemas/tlc_1.0.7/README.md +70 -0
- data/schemas/tlc_1.0.7/schema/core/definitions.json +63 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0008.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0201.json +39 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0202.json +39 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0301.json +105 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/A0302.json +131 -0
- data/schemas/tlc_1.0.7/schema/tlc/alarms/alarms.json +254 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0001.json +105 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0002.json +79 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0003.json +79 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0004.json +58 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0005.json +79 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0006.json +79 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0007.json +58 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0008.json +79 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0010.json +58 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0011.json +58 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0103.json +82 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/M0104.json +163 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/tlc_1.0.7/schema/tlc/commands/commands.json +366 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0001.json +98 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0002.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0003.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0004.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0005.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0006.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0007.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0008.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0009.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0010.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0011.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0012.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0013.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0014.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0015.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0016.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0017.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0018.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0019.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0020.json +61 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0021.json +35 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0091.json +61 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0092.json +61 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0095.json +34 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0096.json +139 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0201.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0202.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0203.json +55 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/S0204.json +223 -0
- data/schemas/tlc_1.0.7/schema/tlc/statuses/statuses.json +738 -0
- data/schemas/tlc_1.0.7/schema/tlc/sxl.json +71 -0
- data/schemas/tlc_1.0.7/spec/schemer_helper.rb +21 -0
- data/schemas/tlc_1.0.7/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.7/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/tlc_1.0.7/spec/tlc/S0007_spec.rb +159 -0
- data/schemas/tlc_1.0.8/.gitignore +1 -0
- data/schemas/tlc_1.0.8/.rspec +1 -0
- data/schemas/tlc_1.0.8/Gemfile +5 -0
- data/schemas/tlc_1.0.8/Gemfile.lock +37 -0
- data/schemas/tlc_1.0.8/LICENSE +7 -0
- data/schemas/tlc_1.0.8/README.md +70 -0
- data/schemas/tlc_1.0.8/schema/core/definitions.json +63 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0008.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0201.json +39 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0202.json +39 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0301.json +105 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/A0302.json +131 -0
- data/schemas/tlc_1.0.8/schema/tlc/alarms/alarms.json +254 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0001.json +105 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0002.json +79 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0003.json +79 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0004.json +58 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0005.json +79 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0006.json +79 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0007.json +58 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0008.json +79 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0010.json +58 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0011.json +58 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0012.json +58 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0013.json +58 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0103.json +82 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/M0104.json +163 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/tlc_1.0.8/schema/tlc/commands/commands.json +366 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0001.json +98 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0002.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0003.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0004.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0005.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0006.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0007.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0008.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0009.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0010.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0011.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0012.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0013.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0014.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0015.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0016.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0017.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0018.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0019.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0020.json +61 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0021.json +35 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0091.json +61 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0092.json +61 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0095.json +34 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0096.json +139 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0201.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0202.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0203.json +55 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/S0204.json +223 -0
- data/schemas/tlc_1.0.8/schema/tlc/statuses/statuses.json +738 -0
- data/schemas/tlc_1.0.8/schema/tlc/sxl.json +71 -0
- data/schemas/tlc_1.0.8/spec/schemer_helper.rb +21 -0
- data/schemas/tlc_1.0.8/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.8/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/tlc_1.0.8/spec/tlc/S0007_spec.rb +159 -0
- data/schemas/tlc_1.0.9/.gitignore +1 -0
- data/schemas/tlc_1.0.9/.rspec +1 -0
- data/schemas/tlc_1.0.9/Gemfile +5 -0
- data/schemas/tlc_1.0.9/Gemfile.lock +37 -0
- data/schemas/tlc_1.0.9/LICENSE +7 -0
- data/schemas/tlc_1.0.9/README.md +70 -0
- data/schemas/tlc_1.0.9/schema/core/definitions.json +63 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0001.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0002.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0003.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0004.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0005.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0006.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0007.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0008.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0009.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0101.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0201.json +39 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0202.json +39 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0301.json +105 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/A0302.json +131 -0
- data/schemas/tlc_1.0.9/schema/tlc/alarms/alarms.json +254 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0001.json +105 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0002.json +79 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0003.json +79 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0004.json +58 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0005.json +79 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0006.json +79 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0007.json +58 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0008.json +79 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0010.json +58 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0011.json +58 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0012.json +58 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0013.json +58 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0103.json +82 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/M0104.json +163 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/command_requests.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/command_responses.json +7 -0
- data/schemas/tlc_1.0.9/schema/tlc/commands/commands.json +366 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0001.json +98 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0002.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0003.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0004.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0005.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0006.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0007.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0008.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0009.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0010.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0011.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0012.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0013.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0014.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0015.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0016.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0017.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0018.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0019.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0020.json +61 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0021.json +35 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0091.json +61 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0092.json +61 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0095.json +34 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0096.json +139 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0201.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0202.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0203.json +55 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/S0204.json +223 -0
- data/schemas/tlc_1.0.9/schema/tlc/statuses/statuses.json +738 -0
- data/schemas/tlc_1.0.9/schema/tlc/sxl.json +71 -0
- data/schemas/tlc_1.0.9/spec/schemer_helper.rb +21 -0
- data/schemas/tlc_1.0.9/spec/spec_helper.rb +102 -0
- data/schemas/tlc_1.0.9/spec/tlc/M0001_spec.rb +67 -0
- data/schemas/tlc_1.0.9/spec/tlc/S0007_spec.rb +159 -0
- metadata +939 -0
@@ -0,0 +1,149 @@
|
|
1
|
+
RSpec.describe "Traffic Light Controller RSMP SXL Schema validation" do
|
2
|
+
let(:message) {{
|
3
|
+
"mType" => "rSMsg",
|
4
|
+
"mId" => "a28e94b9-05c7-41bb-8f8b-54693adc9698",
|
5
|
+
"siteId" => [
|
6
|
+
{ "sId" => "RN+SI0001" }
|
7
|
+
],
|
8
|
+
"type" => "Version",
|
9
|
+
"RSMP" => [
|
10
|
+
{ "vers" => "3.1.1" },
|
11
|
+
{ "vers" => "3.1.2" },
|
12
|
+
{ "vers" => "3.1.3" },
|
13
|
+
{ "vers" => "3.1.4" }
|
14
|
+
],
|
15
|
+
"SXL" => "1.1"
|
16
|
+
}}
|
17
|
+
|
18
|
+
it 'accepts valid message' do
|
19
|
+
expect( validate(message) ).to be_nil
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'catches missing mId' do
|
23
|
+
invalid = message.dup
|
24
|
+
invalid.delete 'mId'
|
25
|
+
expect( validate(invalid) ).to eq([
|
26
|
+
["", "required", {"missing_keys"=>["mId"]}]
|
27
|
+
])
|
28
|
+
end
|
29
|
+
|
30
|
+
it 'catches missing siteId' do
|
31
|
+
invalid = message.dup
|
32
|
+
invalid.delete 'siteId'
|
33
|
+
expect( validate(invalid) ).to eq([
|
34
|
+
["", "required", {"missing_keys"=>["siteId"]}]
|
35
|
+
])
|
36
|
+
end
|
37
|
+
|
38
|
+
it 'catches bad siteId format, must be array' do
|
39
|
+
invalid = message.dup
|
40
|
+
invalid['siteId'] = '1.0'
|
41
|
+
expect( validate(invalid) ).to eq([
|
42
|
+
["/siteId", "array"]
|
43
|
+
])
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'catches bad siteId format, array cannot be empty' do
|
47
|
+
invalid = message.dup
|
48
|
+
invalid['siteId'] = []
|
49
|
+
expect( validate(invalid) ).to eq([
|
50
|
+
["/siteId", "minItems"]
|
51
|
+
])
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'catches bad siteId format, item must be hash' do
|
55
|
+
invalid = message.dup
|
56
|
+
invalid['siteId'] = ['1.0']
|
57
|
+
expect( validate(invalid) ).to eq([
|
58
|
+
["/siteId/0", "object"]
|
59
|
+
])
|
60
|
+
end
|
61
|
+
|
62
|
+
it 'catches bad siteId format, item must have version' do
|
63
|
+
invalid = message.dup
|
64
|
+
invalid['siteId'] = [{}]
|
65
|
+
expect( validate(invalid) ).to eq([
|
66
|
+
["/siteId/0", "required", {"missing_keys"=>["sId"]}]
|
67
|
+
])
|
68
|
+
end
|
69
|
+
|
70
|
+
it 'catches bad siteId format, item cannot have extra attributes' do
|
71
|
+
invalid = message.dup
|
72
|
+
invalid['siteId'] = [{'sId'=>'RN+SI0001','extra'=>'123'}]
|
73
|
+
expect( validate(invalid) ).to eq([
|
74
|
+
["/siteId/0/extra", "schema"]
|
75
|
+
])
|
76
|
+
end
|
77
|
+
|
78
|
+
it 'catches missing RSMP version' do
|
79
|
+
invalid = message.dup
|
80
|
+
invalid.delete 'RSMP'
|
81
|
+
expect( validate(invalid) ).to eq([
|
82
|
+
["", "required", {"missing_keys"=>["RSMP"]}]
|
83
|
+
])
|
84
|
+
end
|
85
|
+
|
86
|
+
it 'catches bad RSMP format, must be array' do
|
87
|
+
invalid = message.dup
|
88
|
+
invalid['RSMP'] = '1.0'
|
89
|
+
expect( validate(invalid) ).to eq([
|
90
|
+
["/RSMP", "array"]
|
91
|
+
])
|
92
|
+
end
|
93
|
+
|
94
|
+
it 'catches bad RSMP format, array cannot be empty' do
|
95
|
+
invalid = message.dup
|
96
|
+
invalid['RSMP'] = []
|
97
|
+
expect( validate(invalid) ).to eq([
|
98
|
+
["/RSMP", "minItems"]
|
99
|
+
])
|
100
|
+
end
|
101
|
+
|
102
|
+
it 'catches bad RSMP format, item must be hash' do
|
103
|
+
invalid = message.dup
|
104
|
+
invalid['RSMP'] = ['1.0']
|
105
|
+
expect( validate(invalid) ).to eq([
|
106
|
+
["/RSMP/0", "object"]
|
107
|
+
])
|
108
|
+
end
|
109
|
+
|
110
|
+
it 'catches bad RSMP format, item must have version' do
|
111
|
+
invalid = message.dup
|
112
|
+
invalid['RSMP'] = [{}]
|
113
|
+
expect( validate(invalid) ).to eq([
|
114
|
+
["/RSMP/0", "required", {"missing_keys"=>["vers"]}]
|
115
|
+
])
|
116
|
+
end
|
117
|
+
|
118
|
+
it 'catches bad RSMP format, item cannot have extra attributes' do
|
119
|
+
invalid = message.dup
|
120
|
+
invalid['RSMP'] = [{'vers'=>'1.0.0','extra'=>'123'}]
|
121
|
+
expect( validate(invalid) ).to eq([
|
122
|
+
["/RSMP/0/extra", "schema"]
|
123
|
+
])
|
124
|
+
end
|
125
|
+
|
126
|
+
it 'catches bad RSMP format, version must be 1.0.0 format' do
|
127
|
+
invalid = message.dup
|
128
|
+
invalid['RSMP'].first['vers'] = 'latest'
|
129
|
+
expect( validate(invalid) ).to eq([
|
130
|
+
["/RSMP/0/vers", "pattern"]
|
131
|
+
])
|
132
|
+
end
|
133
|
+
|
134
|
+
it 'catches missing SXL version' do
|
135
|
+
invalid = message.dup
|
136
|
+
invalid.delete 'SXL'
|
137
|
+
expect( validate(invalid) ).to eq([
|
138
|
+
["", "required", {"missing_keys"=>["SXL"]}]
|
139
|
+
])
|
140
|
+
end
|
141
|
+
|
142
|
+
it 'catches bad SXL version' do
|
143
|
+
invalid = message.dup
|
144
|
+
invalid['SXL'] = 'Release 1.0.1'
|
145
|
+
expect( validate(invalid) ).to eq([
|
146
|
+
["/SXL", "pattern"]
|
147
|
+
])
|
148
|
+
end
|
149
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
RSpec.describe "Traffic Light Controller RSMP SXL Schema validation" do
|
2
|
+
let(:message) {{
|
3
|
+
"mType" => "rSMsg",
|
4
|
+
"mId" => "4173c2c8-a933-43cb-9425-66d4613731ed",
|
5
|
+
"type" => "Watchdog",
|
6
|
+
"wTs" => "2015-06-08T12:01:39.654Z"
|
7
|
+
}}
|
8
|
+
|
9
|
+
it 'accepts valid message' do
|
10
|
+
expect( validate(message) ).to be_nil
|
11
|
+
end
|
12
|
+
|
13
|
+
it 'catches missing mId' do
|
14
|
+
invalid = message.dup
|
15
|
+
invalid.delete 'mId'
|
16
|
+
expect( validate(invalid) ).to eq([
|
17
|
+
["", "required", {"missing_keys"=>["mId"]}]
|
18
|
+
])
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'catches missing timestamp' do
|
22
|
+
invalid = message.dup
|
23
|
+
invalid.delete 'wTs'
|
24
|
+
expect( validate(invalid) ).to eq([
|
25
|
+
["", "required", {"missing_keys"=>["wTs"]}]
|
26
|
+
])
|
27
|
+
end
|
28
|
+
|
29
|
+
it 'catches bad timestamp format' do
|
30
|
+
invalid = message.dup
|
31
|
+
invalid['wTs'] = '2015-06-08T12:01:39.654' # missing Z at end
|
32
|
+
expect( validate(invalid) ).to eq([
|
33
|
+
["/wTs", "pattern"]
|
34
|
+
])
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require 'json_schemer'
|
2
|
+
require 'pp'
|
3
|
+
|
4
|
+
$schema_core = Pathname.new('schema/core/rsmp.json')
|
5
|
+
$schemer_core = JSONSchemer.schema($schema_core)
|
6
|
+
|
7
|
+
#schema_tlc = Pathname.new('schema/tlc/sxl.json')
|
8
|
+
#schemer_tlc = JSONSchemer.schema(schema_tlc)
|
9
|
+
|
10
|
+
def validate json, schemer=$schemer_core
|
11
|
+
if schemer.valid? json
|
12
|
+
nil
|
13
|
+
else
|
14
|
+
errors = []
|
15
|
+
begin
|
16
|
+
schemer.validate(json).each do |item|
|
17
|
+
errors ||= []
|
18
|
+
errors << [item['data_pointer'],item['type'],item['details']].compact
|
19
|
+
end
|
20
|
+
end
|
21
|
+
errors
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,102 @@
|
|
1
|
+
require_relative 'schemer_helper'
|
2
|
+
|
3
|
+
# This file was generated by the `rspec --init` command. Conventionally, all
|
4
|
+
# specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
|
5
|
+
# The generated `.rspec` file contains `--require spec_helper` which will cause
|
6
|
+
# this file to always be loaded, without a need to explicitly require it in any
|
7
|
+
# files.
|
8
|
+
#
|
9
|
+
# Given that it is always loaded, you are encouraged to keep this file as
|
10
|
+
# light-weight as possible. Requiring heavyweight dependencies from this file
|
11
|
+
# will add to the boot time of your test suite on EVERY test run, even for an
|
12
|
+
# individual file that may not need all of that loaded. Instead, consider making
|
13
|
+
# a separate helper file that requires the additional dependencies and performs
|
14
|
+
# the additional setup, and require it from the spec files that actually need
|
15
|
+
# it.
|
16
|
+
#
|
17
|
+
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
18
|
+
RSpec.configure do |config|
|
19
|
+
# rspec-expectations config goes here. You can use an alternate
|
20
|
+
# assertion/expectation library such as wrong or the stdlib/minitest
|
21
|
+
# assertions if you prefer.
|
22
|
+
config.expect_with :rspec do |expectations|
|
23
|
+
# This option will default to `true` in RSpec 4. It makes the `description`
|
24
|
+
# and `failure_message` of custom matchers include text for helper methods
|
25
|
+
# defined using `chain`, e.g.:
|
26
|
+
# be_bigger_than(2).and_smaller_than(4).description
|
27
|
+
# # => "be bigger than 2 and smaller than 4"
|
28
|
+
# ...rather than:
|
29
|
+
# # => "be bigger than 2"
|
30
|
+
expectations.include_chain_clauses_in_custom_matcher_descriptions = true
|
31
|
+
end
|
32
|
+
|
33
|
+
# rspec-mocks config goes here. You can use an alternate test double
|
34
|
+
# library (such as bogus or mocha) by changing the `mock_with` option here.
|
35
|
+
config.mock_with :rspec do |mocks|
|
36
|
+
# Prevents you from mocking or stubbing a method that does not exist on
|
37
|
+
# a real object. This is generally recommended, and will default to
|
38
|
+
# `true` in RSpec 4.
|
39
|
+
mocks.verify_partial_doubles = true
|
40
|
+
end
|
41
|
+
|
42
|
+
# This option will default to `:apply_to_host_groups` in RSpec 4 (and will
|
43
|
+
# have no way to turn it off -- the option exists only for backwards
|
44
|
+
# compatibility in RSpec 3). It causes shared context metadata to be
|
45
|
+
# inherited by the metadata hash of host groups and examples, rather than
|
46
|
+
# triggering implicit auto-inclusion in groups with matching metadata.
|
47
|
+
config.shared_context_metadata_behavior = :apply_to_host_groups
|
48
|
+
|
49
|
+
# The settings below are suggested to provide a good initial experience
|
50
|
+
# with RSpec, but feel free to customize to your heart's content.
|
51
|
+
=begin
|
52
|
+
# This allows you to limit a spec run to individual examples or groups
|
53
|
+
# you care about by tagging them with `:focus` metadata. When nothing
|
54
|
+
# is tagged with `:focus`, all examples get run. RSpec also provides
|
55
|
+
# aliases for `it`, `describe`, and `context` that include `:focus`
|
56
|
+
# metadata: `fit`, `fdescribe` and `fcontext`, respectively.
|
57
|
+
config.filter_run_when_matching :focus
|
58
|
+
|
59
|
+
# Allows RSpec to persist some state between runs in order to support
|
60
|
+
# the `--only-failures` and `--next-failure` CLI options. We recommend
|
61
|
+
# you configure your source control system to ignore this file.
|
62
|
+
config.example_status_persistence_file_path = "spec/examples.txt"
|
63
|
+
|
64
|
+
# Limits the available syntax to the non-monkey patched syntax that is
|
65
|
+
# recommended. For more details, see:
|
66
|
+
# - http://rspec.info/blog/2012/06/rspecs-new-expectation-syntax/
|
67
|
+
# - http://www.teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
|
68
|
+
# - http://rspec.info/blog/2014/05/notable-changes-in-rspec-3/#zero-monkey-patching-mode
|
69
|
+
config.disable_monkey_patching!
|
70
|
+
|
71
|
+
# This setting enables warnings. It's recommended, but in some cases may
|
72
|
+
# be too noisy due to issues in dependencies.
|
73
|
+
config.warnings = true
|
74
|
+
|
75
|
+
# Many RSpec users commonly either run the entire suite or an individual
|
76
|
+
# file, and it's useful to allow more verbose output when running an
|
77
|
+
# individual spec file.
|
78
|
+
if config.files_to_run.one?
|
79
|
+
# Use the documentation formatter for detailed output,
|
80
|
+
# unless a formatter has already been configured
|
81
|
+
# (e.g. via a command-line flag).
|
82
|
+
config.default_formatter = "doc"
|
83
|
+
end
|
84
|
+
|
85
|
+
# Print the 10 slowest examples and example groups at the
|
86
|
+
# end of the spec run, to help surface which specs are running
|
87
|
+
# particularly slow.
|
88
|
+
config.profile_examples = 10
|
89
|
+
|
90
|
+
# Run specs in random order to surface order dependencies. If you find an
|
91
|
+
# order dependency and want to debug it, you can fix the order by providing
|
92
|
+
# the seed, which is printed after each run.
|
93
|
+
# --seed 1234
|
94
|
+
config.order = :random
|
95
|
+
|
96
|
+
# Seed global randomization in this process using the `--seed` CLI option.
|
97
|
+
# Setting this allows you to use `--seed` to deterministically reproduce
|
98
|
+
# test failures related to randomization by passing the same `--seed` value
|
99
|
+
# as the one that triggered the failure.
|
100
|
+
Kernel.srand config.seed
|
101
|
+
=end
|
102
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
.DS_Store
|
@@ -0,0 +1 @@
|
|
1
|
+
--require spec_helper
|
@@ -0,0 +1,37 @@
|
|
1
|
+
GEM
|
2
|
+
remote: https://rubygems.org/
|
3
|
+
specs:
|
4
|
+
diff-lcs (1.4.4)
|
5
|
+
ecma-re-validator (0.3.0)
|
6
|
+
regexp_parser (~> 2.0)
|
7
|
+
hana (1.3.7)
|
8
|
+
json_schemer (0.2.18)
|
9
|
+
ecma-re-validator (~> 0.3)
|
10
|
+
hana (~> 1.3)
|
11
|
+
regexp_parser (~> 2.0)
|
12
|
+
uri_template (~> 0.7)
|
13
|
+
regexp_parser (2.1.1)
|
14
|
+
rspec (3.10.0)
|
15
|
+
rspec-core (~> 3.10.0)
|
16
|
+
rspec-expectations (~> 3.10.0)
|
17
|
+
rspec-mocks (~> 3.10.0)
|
18
|
+
rspec-core (3.10.1)
|
19
|
+
rspec-support (~> 3.10.0)
|
20
|
+
rspec-expectations (3.10.1)
|
21
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
22
|
+
rspec-support (~> 3.10.0)
|
23
|
+
rspec-mocks (3.10.2)
|
24
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
25
|
+
rspec-support (~> 3.10.0)
|
26
|
+
rspec-support (3.10.2)
|
27
|
+
uri_template (0.7.0)
|
28
|
+
|
29
|
+
PLATFORMS
|
30
|
+
ruby
|
31
|
+
|
32
|
+
DEPENDENCIES
|
33
|
+
json_schemer
|
34
|
+
rspec
|
35
|
+
|
36
|
+
BUNDLED WITH
|
37
|
+
2.2.3
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Copyright 2019 The City Copenhagen
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
4
|
+
|
5
|
+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
6
|
+
|
7
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# About
|
2
|
+
JSON Schema for RSMP messages. The schema can be used to automatically validate RSMP messages.
|
3
|
+
|
4
|
+
The schema so far covers the core specifiation and the SXL for Trafic Light Controllers:
|
5
|
+
https://github.com/rsmp-nordic/rsmp_core
|
6
|
+
https://github.com/rsmp-nordic/rsmp_sxl_traffic_lights
|
7
|
+
|
8
|
+
More about JSON Schema:
|
9
|
+
https://json-schema.org/
|
10
|
+
|
11
|
+
## Schema organisation
|
12
|
+
The schema is split into multiple files to enable reuse.
|
13
|
+
|
14
|
+
An SXL defines massages specific to a particular type of equipment, but they all rely on the core part of the RSMP specification.
|
15
|
+
|
16
|
+
To validate a message against a particular SXL, use the sxl.json file in the relevant folder.
|
17
|
+
For example, to validate against the SXL for Trafic Light Controllers (TLCs), include 'tcl/sxl.json'
|
18
|
+
|
19
|
+
This main sxl.json file includes the core.json part, which contains validations for the RSMP core elements.
|
20
|
+
Depending on the message type, commands.json, alarms.json, etc. will be included. That file in turn looks at the command/status/alarm code and includes the file describing the detailed parameters, arguments, etc.
|
21
|
+
|
22
|
+
For example, validating a CommandRequest M0001 message will include these parts:
|
23
|
+
|
24
|
+
```
|
25
|
+
sxl.json
|
26
|
+
core.json
|
27
|
+
commands.json
|
28
|
+
M0001.json
|
29
|
+
```
|
30
|
+
|
31
|
+
## Example usage
|
32
|
+
To validate a JSON message with Ruby using the json_schemer gem:
|
33
|
+
|
34
|
+
```ruby
|
35
|
+
require 'json_schemer'
|
36
|
+
|
37
|
+
message = {
|
38
|
+
"mType" => "rSMsg",
|
39
|
+
"mId" => "4173c2c8-a933-43cb-9425-66d4613731ed",
|
40
|
+
"type" => "CommandRequest",
|
41
|
+
"siteId" => [
|
42
|
+
{ "sId" => "RN+SI0001" }
|
43
|
+
],
|
44
|
+
"cId" => "O+14439=481WA001",
|
45
|
+
"arg" => [
|
46
|
+
{
|
47
|
+
"cCI" => "M0001",
|
48
|
+
"n" => "status",
|
49
|
+
"cO" => "setValue",
|
50
|
+
"v" => "YellowFlash"
|
51
|
+
}
|
52
|
+
]
|
53
|
+
}
|
54
|
+
|
55
|
+
# try validating a message against our schema
|
56
|
+
schema = Pathname.new('tlc/sxl.json')
|
57
|
+
schemer = JSONSchemer.schema(schema)
|
58
|
+
puts schemer.valid? message # => true
|
59
|
+
```
|
60
|
+
|
61
|
+
## RSpec tests
|
62
|
+
The reposity includes RSpec test that checks the schema, by testing the result of validating a set of valid and invalid RSMP messages using the json_schemer gem.
|
63
|
+
|
64
|
+
This is useful when developing the schema, to ensure it validates correctly.
|
65
|
+
|
66
|
+
|
67
|
+
```
|
68
|
+
$ bundle # install gems
|
69
|
+
$ bundle exec rspec # run rspec tests
|
70
|
+
```
|