Releases: usdot-jpo-ode/ode-output-validator-library
Releases · usdot-jpo-ode/ode-output-validator-library
Version 0.0.7
Changes
- Added complete validation of payload for BSM and TIM message types
- Lists and arbitrarily nested lists are now supported
- Validation for choice elements (only 1 object of a set is allowed) are now supported
- EqualsValue logic now allows mandatory fields within optional fields
- Added specific configuration files for BSM and TIM message types with payload fields
- Added flexible date format parsing with the inclusion of a
DateFormat
parameter in configuration files for unusually formatted timestamps using python strftime strings- Example: For the timestamp
01-APR-17 12.02.17.833000000 AM
the properDateFormat
would be%d-%b-%y %I.%M.%S.%f000 %p
- Documentation on how to create a python strftime format string can be found at
http://strftime.org/
- Example: For the timestamp
Version 0.0.6
Changes
- Changed timestamp parsing to replace microseconds with 0, timestamps will now only have second-level precision and comparison tolerance
- Unit test cleanup
Version 0.0.5
Changes
- Added support for CSV files
- Added
--config-file
command-line argument - Added
[_settings]
block to configuration file- Added
DataType
settings configuration property - Added
Sequential
settings configuration property - Added
HasHeader
settings configuration property
- Added
- Added example csv configuration file
odevalidator/csvconfig.ini
- Added csv test files
- Added
- Removed timestamp sanity check from odeReceivedAt field
Release 0.0.4
- Config.ini changes
- Added
metadata.request
elements to config.ini - Eliminated the Path option in config.ini because the section keys have to be unique and there
is always a possibility that two keys at different structures be named the same. SO now the section key
has to be the ful path of the field name. - Took advantage of python configuration file variable dereferencing
config.ini
then_part
can now be an empty array or completely missing which would mean that the field is
optional if theif_part
condition is met.- The
fieldValue
of theifPart
can also be eliminated which would mean that the if the field identified by
thefieldName
of theifPart
exists, the field has to be validated. If it the field doesn't exist,
it is considered optional and no validation error is issued. - Fields can now be specified to allow empty value by setting
AllowEmpty = True
. Currently only
elevation
is allowed to be empty.
- Added
- Added field info to
FieldValidationResult
(renamed from ValidationResult) objects - Added serialId to the
RecordValidationResult
(NEW) object. This replaces RecordID. Field, FieldValidationResult and RecordValidationResult
objects now have__str__()
method
which allows them to be serialized for printing purposes.- Test files
good.json
andbad.json
were updated with new tests for Broadcast TIM
odevalidator-0.0.3: Merge pull request #20 from usdot-jpo-ode/ode-1234-cleanup
Conditional/optional configs
odevalidator-0.0.2 ODE-1234 merged a config fix from dev
Initial working version
Merge pull request #14 from usdot-jpo-ode/add-validation-type Add name to sequential check field