diff --git a/crates/smartmodule-development-kit/src/main.rs b/crates/smartmodule-development-kit/src/main.rs index 9f1eb90ca1..2ea241133f 100644 --- a/crates/smartmodule-development-kit/src/main.rs +++ b/crates/smartmodule-development-kit/src/main.rs @@ -8,8 +8,10 @@ mod hub; mod set_public; use std::path::{PathBuf}; + use clap::Parser; use anyhow::Result; +use tracing::debug; use cmd::SmdkCommand; @@ -23,6 +25,6 @@ fn main() -> Result<()> { } pub(crate) fn read_bytes_from_path(path: &PathBuf) -> Result> { - println!("loading module at: {}", path.display()); + debug!(path = ?path.display(), "Loading module"); std::fs::read(path).map_err(|err| anyhow::anyhow!("error reading wasm file: {}", err)) } diff --git a/crates/smartmodule-development-kit/src/test.rs b/crates/smartmodule-development-kit/src/test.rs index 598d3363a8..9fd058a9e6 100644 --- a/crates/smartmodule-development-kit/src/test.rs +++ b/crates/smartmodule-development-kit/src/test.rs @@ -66,6 +66,10 @@ pub struct TestCmd { /// E.g. smdk test --text '{}' --transform='{"uses":"infinyon/jolt@0.1.0","with":{"spec":"[{\"operation\":\"default\",\"spec\":{\"source\":\"test\"}}]"}}' #[clap(long, short, group = "TestSmartModule")] transform: Vec, + + /// verbose output + #[arg(short = 'v', long = "verbose")] + verbose: bool, } fn parse_key_val(s: &str) -> Result<(String, String)> { @@ -125,7 +129,9 @@ impl TestCmd { let output = chain.process(SmartModuleInput::try_from(test_records)?, &metrics)?; - println!("{:?} records outputed", output.successes.len()); + if self.verbose { + println!("{:?} records outputed", output.successes.len()); + } for output_record in output.successes { let output_value = output_record.value.as_str()?; println!("{output_value}"); diff --git a/tests/cli/smdk_smoke_tests/smdk-basic.bats b/tests/cli/smdk_smoke_tests/smdk-basic.bats index c66c75e9f2..0702736116 100644 --- a/tests/cli/smdk_smoke_tests/smdk-basic.bats +++ b/tests/cli/smdk_smoke_tests/smdk-basic.bats @@ -112,7 +112,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text 'a' + run $SMDK_BIN test --verbose --text 'a' assert_output --partial "1 records outputed" assert_success } @@ -152,7 +152,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text '2' + run $SMDK_BIN test --verbose --text '2' assert_output --partial "1 records outputed" assert_output --partial "4" assert_success @@ -192,12 +192,19 @@ setup_file() { assert_output --partial "Creating SmartModule: $SM_PACKAGE_NAME" assert_success - # Test - run $SMDK_BIN test --text '["foo", "bar"]' + # Test with verbose + run $SMDK_BIN test --verbose --text '["foo", "bar"]' assert_output --partial "2 records outputed" assert_output --partial "foo" assert_output --partial "bar" assert_success + + # Test without verbose + run $SMDK_BIN test --text '["foo", "bar"]' + refute_output --partial "2 records outputed" + assert_output --partial "foo" + assert_output --partial "bar" + assert_success } @test "Generate and test filter-map - (stable fluvio-smartmodule / no params)" { @@ -236,9 +243,9 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text '2' + run $SMDK_BIN test --verbose --text '2' assert_output --partial "1 records outputed" - assert_output --partial "2" + assert_output --partial "1" assert_success } @@ -277,7 +284,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text '2' + run $SMDK_BIN test --verbose --text '2' assert_output --partial "1 records outputed" assert_output --partial "2" assert_success @@ -320,7 +327,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text 'a' -e key=value + run $SMDK_BIN test --verbose --text 'a' -e key=value assert_output --partial "1 records outputed" assert_success } @@ -502,7 +509,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text 'a' + run $SMDK_BIN test --verbose --text 'a' assert_output --partial "1 records outputed" assert_success } @@ -542,7 +549,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text '2' + run $SMDK_BIN test --verbose --text '2' assert_output --partial "1 records outputed" assert_output --partial "4" assert_success @@ -582,12 +589,19 @@ setup_file() { assert_output --partial "Creating SmartModule: $SM_PACKAGE_NAME" assert_success - # Test - run $SMDK_BIN test --text '["foo", "bar"]' + # Test with verbose + run $SMDK_BIN test --verbose --text '["foo", "bar"]' assert_output --partial "2 records outputed" assert_output --partial "foo" assert_output --partial "bar" assert_success + + # Test with without verbose + run $SMDK_BIN test --text '["foo", "bar"]' + refute_output --partial "2 records outputed" + assert_output --partial "foo" + assert_output --partial "bar" + assert_success } @test "Generate and test filter-map - (current repo fluvio-smartmodule / no params)" { @@ -625,9 +639,9 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text '2' + run $SMDK_BIN test --verbose --text '2' assert_output --partial "1 records outputed" - assert_output --partial "2" + assert_output --partial "1" assert_success } @@ -666,7 +680,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text '2' + run $SMDK_BIN test --verbose --text '2' assert_output --partial "1 records outputed" assert_output --partial "2" assert_success @@ -709,7 +723,7 @@ setup_file() { assert_success # Test - run $SMDK_BIN test --text 'a' -e key=value + run $SMDK_BIN test --verbose --text 'a' -e key=value assert_output --partial "1 records outputed" assert_success }