diff options
author | Asher Gomez <ashersaupingomez@gmail.com> | 2024-02-20 00:34:24 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-19 06:34:24 -0700 |
commit | 2b279ad630651e973d5a31586f58809f005bc925 (patch) | |
tree | 3e3cbeb4126643c75381dd5422e8603a7488bb8a /tests/util/server/src/macros.rs | |
parent | eb542bc185c6c4ce1847417a2dfdf04862cd86db (diff) |
chore: move `test_util` to `tests/util/server` (#22444)
As discussed with @mmastrac.
---------
Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
Co-authored-by: Matt Mastracci <matthew@mastracci.com>
Diffstat (limited to 'tests/util/server/src/macros.rs')
-rw-r--r-- | tests/util/server/src/macros.rs | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/tests/util/server/src/macros.rs b/tests/util/server/src/macros.rs new file mode 100644 index 000000000..7cfedcc7e --- /dev/null +++ b/tests/util/server/src/macros.rs @@ -0,0 +1,86 @@ +// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. + +#[macro_export] +macro_rules! itest( +($name:ident {$( $key:ident: $value:expr,)*}) => { + #[test] + fn $name() { + let test = $crate::CheckOutputIntegrationTest { + $( + $key: $value, + )* + .. Default::default() + }; + let output = test.output(); + output.assert_exit_code(test.exit_code); + if !test.output.is_empty() { + assert!(test.output_str.is_none()); + output.assert_matches_file(test.output); + } else { + output.assert_matches_text(test.output_str.unwrap_or("")); + } + } +} +); + +#[macro_export] +macro_rules! itest_flaky( +($name:ident {$( $key:ident: $value:expr,)*}) => { + #[flaky_test::flaky_test] + fn $name() { + let test = $crate::CheckOutputIntegrationTest { + $( + $key: $value, + )* + .. Default::default() + }; + let output = test.output(); + output.assert_exit_code(test.exit_code); + if !test.output.is_empty() { + assert!(test.output_str.is_none()); + output.assert_matches_file(test.output); + } else { + output.assert_matches_text(test.output_str.unwrap_or("")); + } + } +} +); + +#[macro_export] +macro_rules! context( +({$( $key:ident: $value:expr,)*}) => { + $crate::TestContext::create($crate::TestContextOptions { + $( + $key: $value, + )* + .. Default::default() + }) +} +); + +#[macro_export] +macro_rules! itest_steps( +($name:ident {$( $key:ident: $value:expr,)*}) => { + #[test] + fn $name() { + ($crate::CheckOutputIntegrationTestSteps { + $( + $key: $value, + )* + .. Default::default() + }).run() + } +} +); + +#[macro_export] +macro_rules! command_step( +({$( $key:ident: $value:expr,)*}) => { + $crate::CheckOutputIntegrationTestCommandStep { + $( + $key: $value, + )* + .. Default::default() + } +} +); |