fix: enforce validity descriptor class
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
@@ -36,6 +36,8 @@ FieldProfileValidationResult FieldProfileValidator::validate(const ResolvedField
|
||||
if (!frame.isStructurallyValid()) return result(FieldProfileValidationCode::InvalidFrame, "frame");
|
||||
if (!contract.sharedValidityRequired)
|
||||
return result(FieldProfileValidationCode::UnsupportedSharedValidityMode, "sharedValidityRequired=false");
|
||||
if (frame.validityPlane.valueClass != FieldValueClass::Validity)
|
||||
return result(FieldProfileValidationCode::InvalidCoreUnit, "validity value class");
|
||||
|
||||
if ((contract.timeRelation == FieldTimeRelation::ValidGteReference &&
|
||||
frame.frameContentIdentity.validTimeMs < frame.referenceTimeMs) ||
|
||||
|
||||
@@ -113,6 +113,8 @@ TEST(ParticleFieldProfileValidator, EnforcesVelocityDirectionAndValidityCoreRule
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidCoreUnit);
|
||||
f = frame(); f.validityPlane.unitID = 1;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidCoreUnit);
|
||||
f = frame(); f.validityPlane.valueClass = particle::FieldValueClass::Scalar;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidCoreUnit);
|
||||
}
|
||||
|
||||
TEST(ParticleFieldProfileValidator, AppliesSchemaSharedValidityAndTimeRules) {
|
||||
|
||||
Reference in New Issue
Block a user