Skip to content

Commit

Permalink
fixes from Manuel's review of #79 round 2
Browse files Browse the repository at this point in the history
  • Loading branch information
intarga committed Oct 8, 2024
1 parent 3fd7920 commit 314546f
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 16 deletions.
13 changes: 9 additions & 4 deletions src/harness.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ use chrono::prelude::*;
use chronoutil::DateRule;
use thiserror::Error;

pub const SPIKE_LEADING_PER_RUN: u8 = 1;
pub const SPIKE_TRAILING_PER_RUN: u8 = 1;
pub const STEP_LEADING_PER_RUN: u8 = 1;
pub const STEP_TRAILING_PER_RUN: u8 = 0;

#[derive(Error, Debug, Clone)]
#[non_exhaustive]
pub enum Error {
Expand All @@ -23,8 +28,8 @@ pub fn run_test(step: &PipelineStep, cache: &DataCache) -> Result<ValidateRespon

let flags: Vec<(String, Vec<Flag>)> = match &step.check {
CheckConf::SpikeCheck(conf) => {
const LEADING_PER_RUN: u8 = 1;
const TRAILING_PER_RUN: u8 = 1;
const LEADING_PER_RUN: u8 = SPIKE_LEADING_PER_RUN;
const TRAILING_PER_RUN: u8 = SPIKE_TRAILING_PER_RUN;

// TODO: use par_iter?

Expand All @@ -51,8 +56,8 @@ pub fn run_test(step: &PipelineStep, cache: &DataCache) -> Result<ValidateRespon
result_vec
}
CheckConf::StepCheck(conf) => {
const LEADING_PER_RUN: u8 = 1;
const TRAILING_PER_RUN: u8 = 0;
const LEADING_PER_RUN: u8 = STEP_LEADING_PER_RUN;
const TRAILING_PER_RUN: u8 = STEP_TRAILING_PER_RUN;

let mut result_vec = Vec::with_capacity(cache.data.len());

Expand Down
33 changes: 21 additions & 12 deletions src/pipeline.rs
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
use crate::harness::{
SPIKE_LEADING_PER_RUN, SPIKE_TRAILING_PER_RUN, STEP_LEADING_PER_RUN, STEP_TRAILING_PER_RUN,
};
use serde::Deserialize;
use std::{collections::HashMap, path::Path};
use thiserror::Error;
Expand Down Expand Up @@ -40,6 +43,23 @@ pub enum CheckConf {
Dummy,
}

impl CheckConf {
fn get_num_leading_trailing(&self) -> (u8, u8) {
match self {
CheckConf::SpecialValueCheck(_)
| CheckConf::RangeCheck(_)
| CheckConf::RangeCheckDynamic(_)
| CheckConf::BuddyCheck(_)
| CheckConf::Sct(_)
| CheckConf::ModelConsistencyCheck(_)
| CheckConf::Dummy => (0, 0),
CheckConf::StepCheck(_) => (STEP_LEADING_PER_RUN, STEP_TRAILING_PER_RUN),
CheckConf::SpikeCheck(_) => (SPIKE_LEADING_PER_RUN, SPIKE_TRAILING_PER_RUN),
CheckConf::FlatlineCheck(conf) => (conf.max, 0),
}
}
}

#[derive(Debug, Deserialize, PartialEq, Clone)]
pub struct SpecialValueCheckConf {
pub special_values: Vec<f32>,
Expand Down Expand Up @@ -128,18 +148,7 @@ pub fn derive_num_leading_trailing(pipeline: &Pipeline) -> (u8, u8) {
pipeline
.steps
.iter()
.map(|step| match &step.check {
CheckConf::SpecialValueCheck(_) => (0, 0),
CheckConf::RangeCheck(_) => (0, 0),
CheckConf::RangeCheckDynamic(_) => (0, 0),
CheckConf::StepCheck(_) => (1, 0),
CheckConf::SpikeCheck(_) => (1, 1),
CheckConf::FlatlineCheck(conf) => (conf.max, 0),
CheckConf::BuddyCheck(_) => (0, 0),
CheckConf::Sct(_) => (0, 0),
CheckConf::ModelConsistencyCheck(_) => (0, 0),
CheckConf::Dummy => (0, 0),
})
.map(|step| step.check.get_num_leading_trailing())
.fold((0, 0), |acc, x| (acc.0.max(x.0), acc.1.max(x.1)))
}

Expand Down

0 comments on commit 314546f

Please sign in to comment.