Repository navigation
Manifest validation updates - #21
Open
Suvinthomas wants to merge 1 commit into
Open
Suvinthomas wants to merge 1 commit into
Suvinthomas wants to merge 1 commit into
Conversation
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Added a new ManifestValidator to validate manifest files before extraction processing. The validator performs:
Validation of required manifest properties and property data types.
Validation that at least one dimension and measure are specified.
Validation of measure and constraint definitions.
Validation of supported output formats.
Validation of constraint values against Metadata API domains.
Validation of requested years against Metadata API year scope definitions, with support for:
( and prior)
( onwards)
Explicit year lists
Generation of warnings where year scope validation cannot be performed due to missing or unsupported metadata formats.
Also added a comprehensive pytest suite covering:
Valid manifests
Missing required properties
Missing dimensions/measures
Invalid measure and constraint definitions
Invalid output formats
Constraint domain validation
Metadata lookup failures
Year scope validation scenarios and warning generation
This provides early validation of manifest configuration before extraction execution and aligns with the manifest validation requirements discussed with architecture.
Unit tests/Pytests :
