diff --git a/Cargo.toml b/Cargo.toml index e35076dc..7d83e920 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,7 +51,7 @@ tracing-subscriber = { version = "0.3.17", optional = true, features = ["env-fil walkdir = "2.3.3" [features] -default = [] +default = ["compare", "foreign_document_test"] compare = [] foreign_document_test = ["compare", "dep:tokio"] tracing = ["dep:opentelemetry", "dep:opentelemetry-otlp", "dep:opentelemetry-semantic-conventions", "dep:tokio", "dep:tracing", "dep:tracing-opentelemetry", "dep:tracing-subscriber"] diff --git a/src/bin_foreign_document_test.rs b/src/bin_foreign_document_test.rs index 0fb77efe..ef20611f 100644 --- a/src/bin_foreign_document_test.rs +++ b/src/bin_foreign_document_test.rs @@ -1,6 +1,7 @@ #![feature(round_char_boundary)] #![feature(exact_size_is_empty)] use std::io::Read; +use std::path::Path; use organic::compare::run_anonymous_compare; use organic::compare::run_compare_on_file; @@ -66,14 +67,46 @@ enum TestConfig<'s> { #[derive(Debug)] struct TestLayer<'s> { name: &'s str, + children: Vec>, } #[derive(Debug)] struct SingleFile<'s> { + file_path: &'s str, +} + +#[derive(Debug)] +struct AnonymousFile { + name: String, +} + +#[derive(Debug)] +enum TestResult<'s> { + ResultLayer(ResultLayer<'s>), + SingleFileResult(SingleFileResult<'s>), + AnonymousFileResult(AnonymousFileResult), +} + +#[derive(Debug)] +struct ResultLayer<'s> { + name: &'s str, + children: Vec>, +} + +#[derive(Debug)] +struct SingleFileResult<'s> { name: &'s str, } #[derive(Debug)] -struct AnonymousFile<'s> { +struct AnonymousFileResult { name: String, } + +impl<'s> SingleFile<'s> { + fn run_test(&self) -> SingleFileResult<'s> { + let result = run_compare_on_file(self.file_path); + // foo + todo!() + } +}