Module validation

Source
Expand description

Data validation and bounds checking for sensor readings.

This module provides validation utilities to detect anomalous readings and flag potential sensor issues.

§Example

use aranet_core::ReadingValidator;
use aranet_core::validation::ValidatorConfig;
use aranet_types::{CurrentReading, Status};

// Create a validator with default config
let validator = ReadingValidator::default();

// Create a reading to validate
let reading = CurrentReading {
    co2: 800,
    temperature: 22.5,
    pressure: 1013.0,
    humidity: 45,
    battery: 85,
    status: Status::Green,
    interval: 300,
    age: 60,
    captured_at: None,
    radon: None,
    radiation_rate: None,
    radiation_total: None,
    radon_avg_24h: None,
    radon_avg_7d: None,
    radon_avg_30d: None,
};

let result = validator.validate(&reading);
assert!(result.is_valid);
assert!(!result.has_warnings());

Structs§

ReadingValidator
Validator for sensor readings.
ValidationResult
Result of validating a reading.
ValidatorConfig
Configuration for reading validation.

Enums§

ValidationWarning
Warning types for validation issues.