fix: close STEP-073 validator runner audit
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:
@@ -71,6 +71,7 @@ TEST(ParticleFieldProfileValidator, AcceptsGenericProfileAndOpaqueScalarUnit) {
|
||||
TEST(ParticleFieldProfileValidator, EnforcesRequiredPlanesAndAdditionalPlanePolicy) {
|
||||
auto c = contract(); auto f = frame();
|
||||
f.planes.clear();
|
||||
EXPECT_TRUE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::MissingRequiredPlane);
|
||||
f = frame(); f.planes.front().unitID = 99;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::PlaneDescriptorMismatch);
|
||||
@@ -85,6 +86,42 @@ TEST(ParticleFieldProfileValidator, EnforcesRequiredPlanesAndAdditionalPlanePoli
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::Accepted);
|
||||
}
|
||||
|
||||
TEST(ParticleFieldProfileValidator, EnforcesSingleSharedValidityStructuralInvariant) {
|
||||
auto f = frame();
|
||||
const auto numbers = f.planes.front().storage;
|
||||
|
||||
f.planes.push_back(plane(901, particle::FieldValueClass::Validity, particle::FieldUnitNone, 0,
|
||||
particle::FieldComponent::None, particle::FieldDType::Bitset, false, numbers, "second-validity"));
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
|
||||
f = frame();
|
||||
f.validityPlane.requiredFlag = false;
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
|
||||
f = frame(); f.validityPlane.valueClass = particle::FieldValueClass::Scalar;
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
f = frame(); f.validityPlane.dtype = particle::FieldDType::UInt8;
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
f = frame(); f.validityPlane.unitID = particle::FieldUnitMetersPerSecond;
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
f = frame(); f.validityPlane.key.groupID = 1;
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
f = frame(); f.validityPlane.key.component = particle::FieldComponent::UEast;
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
|
||||
f = frame();
|
||||
f.validityPlane.storage = std::make_shared<const std::vector<uint8_t>>(*f.validityBits);
|
||||
EXPECT_FALSE(f.isStructurallyValid());
|
||||
EXPECT_EQ(validate(contract(), f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
}
|
||||
|
||||
TEST(ParticleFieldProfileValidator, EnforcesVelocityDirectionAndValidityCoreRules) {
|
||||
EXPECT_EQ(particle::FieldUnitNone, 0);
|
||||
EXPECT_EQ(particle::FieldUnitMetersPerSecond, 1);
|
||||
@@ -121,11 +158,11 @@ TEST(ParticleFieldProfileValidator, EnforcesVelocityDirectionAndValidityCoreRule
|
||||
c.requiredPlanes.front().unitID = 2;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::SemanticContractMismatch);
|
||||
c = contract(); f = frame(); f.validityPlane.dtype = particle::FieldDType::UInt8;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidCoreUnit);
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
f = frame(); f.validityPlane.unitID = 1;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidCoreUnit);
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
f = frame(); f.validityPlane.valueClass = particle::FieldValueClass::Scalar;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidCoreUnit);
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
}
|
||||
|
||||
TEST(ParticleFieldProfileValidator, EnforcesReservedCoreSemanticContractsFromProtocolTable) {
|
||||
@@ -149,7 +186,7 @@ TEST(ParticleFieldProfileValidator, EnforcesReservedCoreSemanticContractsFromPro
|
||||
c.requiredPlanes.back().valueClass = particle::FieldValueClass::Scalar;
|
||||
f.validityPlane.key.semanticID = 3;
|
||||
f.validityPlane.valueClass = particle::FieldValueClass::Scalar;
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::SemanticContractMismatch);
|
||||
EXPECT_EQ(validate(c, f), particle::FieldProfileValidationCode::InvalidFrame);
|
||||
}
|
||||
|
||||
TEST(ParticleFieldProfileValidator, EnforcesDirectionCircularQuantizationContract) {
|
||||
@@ -264,6 +301,7 @@ TEST(ParticleFieldRuntime, ForecastClockPreservesHalfMillisecondRemainder) {
|
||||
|
||||
ASSERT_TRUE(clock.setRequestedForecastTime(3'000));
|
||||
ASSERT_TRUE(clock.setPlaybackSpeed(1.0f));
|
||||
clock.play();
|
||||
EXPECT_TRUE(clock.advance(3));
|
||||
EXPECT_EQ(clock.requestedForecastTime(), 3'003);
|
||||
ASSERT_TRUE(clock.setPlaybackSpeed(2.0f));
|
||||
|
||||
Reference in New Issue
Block a user