From da1cd2e86f10e2ef0beef11e16ff4ae5c1e7c72b Mon Sep 17 00:00:00 2001 From: TanNgocDo Date: Tue, 9 May 2023 04:42:52 +0000 Subject: [PATCH] Move x records outputed from smdk test to --verbose #3169 (#3234) This is to add verbose flag into smdk test : #3169 --- .../smartmodule-development-kit/src/main.rs | 4 +- .../smartmodule-development-kit/src/test.rs | 8 +++- tests/cli/smdk_smoke_tests/smdk-basic.bats | 46 ++++++++++++------- 3 files changed, 40 insertions(+), 18 deletions(-) diff --git a/crates/smartmodule-development-kit/src/main.rs b/crates/smartmodule-development-kit/src/main.rs index 9f1eb90ca17..2ea241133f3 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 5a0837eb19c..6f0c00bc5a7 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\"}}]"}}' #[arg(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 c66c75e9f22..0702736116a 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 }