From e8b50b2c03ee22e2a76353b0e49ec97830f55543 Mon Sep 17 00:00:00 2001 From: Tolya Korniltsev Date: Fri, 19 May 2023 22:21:09 +0800 Subject: [PATCH] Revert "Add ui tests for CLI (#95)" (#106) This reverts commit 669304aa6392806d74f3794597f9ccda500cde67. --- pyroscope_cli/Cargo.lock | 242 ++---------------- pyroscope_cli/Cargo.toml | 1 - pyroscope_cli/src/cli/lib.rs | 6 - ...pe_cli_completion_cmd_bash_cmd_stdout.toml | 14 - .../pyroscope_cli_completion_cmd_stdout.toml | 22 -- .../pyroscope_cli_connect_cmd_stdout.toml | 69 ----- .../cli-ui/pyroscope_cli_exec_cmd_stdout.toml | 74 ------ .../cli-ui/pyroscope_cli_help_cmd_stdout.toml | 33 --- .../pyroscope_cli_help_flag_stdout.toml | 33 --- pyroscope_cli/tests/cli_ui.rs | 7 - 10 files changed, 21 insertions(+), 480 deletions(-) delete mode 100644 pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_bash_cmd_stdout.toml delete mode 100644 pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_stdout.toml delete mode 100644 pyroscope_cli/tests/cli-ui/pyroscope_cli_connect_cmd_stdout.toml delete mode 100644 pyroscope_cli/tests/cli-ui/pyroscope_cli_exec_cmd_stdout.toml delete mode 100644 pyroscope_cli/tests/cli-ui/pyroscope_cli_help_cmd_stdout.toml delete mode 100644 pyroscope_cli/tests/cli-ui/pyroscope_cli_help_flag_stdout.toml delete mode 100644 pyroscope_cli/tests/cli_ui.rs diff --git a/pyroscope_cli/Cargo.lock b/pyroscope_cli/Cargo.lock index 291c8bd7..f8f18db2 100644 --- a/pyroscope_cli/Cargo.lock +++ b/pyroscope_cli/Cargo.lock @@ -378,16 +378,6 @@ dependencies = [ "termcolor", ] -[[package]] -name = "combine" -version = "4.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50b727aacc797f9fc28e355d21f34709ac4fc9adecfe470ad07b8f4464f53062" -dependencies = [ - "bytes", - "memchr", -] - [[package]] name = "concolor" version = "0.0.11" @@ -399,17 +389,6 @@ dependencies = [ "is-terminal", ] -[[package]] -name = "concolor" -version = "0.0.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7b3e3c41e9488eeda196b6806dbf487742107d61b2e16485bcca6c25ed5755b" -dependencies = [ - "bitflags", - "concolor-query", - "is-terminal", -] - [[package]] name = "concolor-query" version = "0.1.0" @@ -445,15 +424,6 @@ dependencies = [ "windows-sys 0.42.0", ] -[[package]] -name = "content_inspector" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7bda66e858c683005a53a9a60c69a4aca7eeaa45d124526e389f7aec8e62f38" -dependencies = [ - "memchr", -] - [[package]] name = "core-foundation-sys" version = "0.8.3" @@ -497,30 +467,6 @@ dependencies = [ "crossbeam-utils", ] -[[package]] -name = "crossbeam-deque" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" -dependencies = [ - "cfg-if", - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" -dependencies = [ - "autocfg", - "cfg-if", - "crossbeam-utils", - "memoffset 0.8.0", - "scopeguard", -] - [[package]] name = "crossbeam-utils" version = "0.8.14" @@ -671,12 +617,6 @@ dependencies = [ "shared_child", ] -[[package]] -name = "dunce" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bd4b30a6560bbd9b4620f4de34c3f14f60848e58a9b7216801afcb4c7b31c3c" - [[package]] name = "either" version = "1.8.1" @@ -773,18 +713,6 @@ dependencies = [ "instant", ] -[[package]] -name = "filetime" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a3de6e8d11b22ff9edc6d916f890800597d60f8b2da1caf2955c274638d6412" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "windows-sys 0.45.0", -] - [[package]] name = "findshlibs" version = "0.10.2" @@ -1033,7 +961,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "87eb03e654582b31967d414b86711a7bbd7c6b28a6b7d32857b7d1d45c0926f9" dependencies = [ "backtrace", - "concolor 0.0.11", + "concolor", "os_info", "serde 1.0.152", "serde_derive", @@ -1057,16 +985,6 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" -[[package]] -name = "humantime-serde" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a3db5ea5923d99402c94e9feb261dc5ee9b4efa158b0315f788cf549cc200c" -dependencies = [ - "humantime 2.1.0", - "serde 1.0.152", -] - [[package]] name = "hyper" version = "0.14.24" @@ -1251,15 +1169,6 @@ version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "078e285eafdfb6c4b434e0d31e8cfcb5115b651496faca5749b88fafd4f23bfd" -[[package]] -name = "kstring" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3066350882a1cd6d950d055997f379ac37fd39f81cd4d8ed186032eb3c5747" -dependencies = [ - "static_assertions", -] - [[package]] name = "lazy_static" version = "1.4.0" @@ -1455,15 +1364,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "memoffset" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1" -dependencies = [ - "autocfg", -] - [[package]] name = "mime" version = "0.3.16" @@ -1507,6 +1407,17 @@ dependencies = [ "rand 0.8.5", ] +[[package]] +name = "nix" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" +dependencies = [ + "bitflags", + "cfg-if", + "libc", +] + [[package]] name = "nix" version = "0.25.1" @@ -1528,7 +1439,7 @@ dependencies = [ "bitflags", "cfg-if", "libc", - "memoffset 0.7.1", + "memoffset", "pin-utils", "static_assertions", ] @@ -1722,16 +1633,16 @@ checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" [[package]] name = "pprof" -version = "0.11.1" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "196ded5d4be535690899a4631cc9f18cdc41b7ebf24a79400f46f48e49a11059" +checksum = "d6472bfed9475542ac46c518734a8d06d71b0f6cb2c17f904aa301711a57786f" dependencies = [ "backtrace", "cfg-if", "findshlibs", "libc", "log", - "nix 0.26.2", + "nix 0.24.3", "once_cell", "parking_lot", "smallvec", @@ -1974,7 +1885,6 @@ dependencies = [ "slog-stdlog", "slog-term", "thiserror", - "trycmd", ] [[package]] @@ -2102,28 +2012,6 @@ dependencies = [ "rand 0.8.5", ] -[[package]] -name = "rayon" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" -dependencies = [ - "crossbeam-channel", - "crossbeam-deque", - "crossbeam-utils", - "num_cpus", -] - [[package]] name = "rbspy" version = "0.16.0" @@ -2393,15 +2281,6 @@ version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7b4b9743ed687d4b4bcedf9ff5eaa7398495ae14e61cba0a295704edbc7decde" -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - [[package]] name = "scopeguard" version = "1.1.0" @@ -2527,12 +2406,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" -[[package]] -name = "similar" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "420acb44afdae038210c99e69aae24109f32f15500aa708e81d46c9f29d55fcf" - [[package]] name = "slab" version = "0.4.8" @@ -2601,34 +2474,6 @@ version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" -[[package]] -name = "snapbox" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4389a6395e9925166f19d67b64874e526ec28a4b8455f3321b686c912299c3ea" -dependencies = [ - "concolor 0.0.12", - "content_inspector", - "dunce", - "filetime", - "libc", - "normalize-line-endings", - "os_pipe", - "similar", - "snapbox-macros", - "tempfile", - "wait-timeout", - "walkdir", - "windows-sys 0.45.0", - "yansi", -] - -[[package]] -name = "snapbox-macros" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8e40c667388ed1cb5060f545d0013bf0a23efdfa6c5c3e9ef592de391cd860f" - [[package]] name = "socket2" version = "0.4.7" @@ -2694,9 +2539,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "symbolic-common" -version = "10.2.1" +version = "9.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b55cdc318ede251d0957f07afe5fed912119b8c1bc5a7804151826db999e737" +checksum = "800963ba330b09a2ae4a4f7c6392b81fbc2784099a98c1eac68c3437aa9382b2" dependencies = [ "debugid", "memmap2", @@ -2706,11 +2551,11 @@ dependencies = [ [[package]] name = "symbolic-demangle" -version = "10.2.1" +version = "9.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79be897be8a483a81fff6a3a4e195b4ac838ef73ca42d348b3f722da9902e489" +checksum = "2b940a1fdbc72bb3369e38714efe6cd332dbbe46d093cf03d668b9ac390d1ad0" dependencies = [ - "cpp_demangle 0.4.0", + "cpp_demangle 0.3.5", "rustc-demangle", "symbolic-common", ] @@ -2965,19 +2810,6 @@ dependencies = [ "serde 1.0.152", ] -[[package]] -name = "toml_edit" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aadc6847c9501c2093c0ab0b6f082accf9fc1b5566f9ea9d05bfcc5adb6f462a" -dependencies = [ - "combine", - "indexmap", - "itertools", - "kstring", - "serde 1.0.152", -] - [[package]] name = "tower-service" version = "0.3.2" @@ -3010,22 +2842,6 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" -[[package]] -name = "trycmd" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1859507c6593597db93d95d228b324da1f04f39014eb26ea492925c31c36a81f" -dependencies = [ - "glob", - "humantime 2.1.0", - "humantime-serde", - "rayon", - "serde 1.0.152", - "shlex", - "snapbox", - "toml_edit", -] - [[package]] name = "unicode-bidi" version = "0.3.10" @@ -3106,16 +2922,6 @@ dependencies = [ "libc", ] -[[package]] -name = "walkdir" -version = "2.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" -dependencies = [ - "same-file", - "winapi-util", -] - [[package]] name = "want" version = "0.3.0" @@ -3373,9 +3179,3 @@ checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" dependencies = [ "linked-hash-map", ] - -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" diff --git a/pyroscope_cli/Cargo.toml b/pyroscope_cli/Cargo.toml index 669602de..3864a1ea 100644 --- a/pyroscope_cli/Cargo.toml +++ b/pyroscope_cli/Cargo.toml @@ -47,7 +47,6 @@ features = ["cargo", "derive"] [dev-dependencies] assert_cmd = "2.0.4" predicates = "2.1.1" -trycmd = "0.14" [features] default = ["pyroscope/default", "pyroscope_pprofrs/default", "pyroscope_rbspy/default", "pyroscope_pyspy/default"] diff --git a/pyroscope_cli/src/cli/lib.rs b/pyroscope_cli/src/cli/lib.rs index 71969e29..1c64bcd4 100644 --- a/pyroscope_cli/src/cli/lib.rs +++ b/pyroscope_cli/src/cli/lib.rs @@ -395,9 +395,3 @@ pub fn cli_match() -> Result<()> { Ok(()) } - -#[test] -fn verify_cli() { - use clap::CommandFactory; - Cli::command().debug_assert() -} diff --git a/pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_bash_cmd_stdout.toml b/pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_bash_cmd_stdout.toml deleted file mode 100644 index 7fd4b53e..00000000 --- a/pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_bash_cmd_stdout.toml +++ /dev/null @@ -1,14 +0,0 @@ -bin.name = "pyroscope-cli" -args = ["completion", "bash", "--help"] -status.code = 0 -stdout = """ -pyroscope-cli-completion-bash -generate the autocompletion script for bash - -USAGE: - pyroscope-cli completion bash - -OPTIONS: - -h, --help Print help information -""" -stderr = "" diff --git a/pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_stdout.toml b/pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_stdout.toml deleted file mode 100644 index 5c91a8e9..00000000 --- a/pyroscope_cli/tests/cli-ui/pyroscope_cli_completion_cmd_stdout.toml +++ /dev/null @@ -1,22 +0,0 @@ -bin.name = "pyroscope-cli" -args = ["completion", "--help"] -status.code = 0 -stdout = """ -pyroscope-cli-completion -Generate the autocompletion script for pyroscope for the specified shell. See each sub-command's -help for details on how to use the generated script. - -USAGE: - pyroscope-cli completion - -OPTIONS: - -h, --help Print help information - -SUBCOMMANDS: - bash generate the autocompletion script for bash - fish generate the autocompletion script for fish - powershell generate the autocompletion script for powershell - zsh generate the autocompletion script for zsh - help Print this message or the help of the given subcommand(s) -""" -stderr = "" diff --git a/pyroscope_cli/tests/cli-ui/pyroscope_cli_connect_cmd_stdout.toml b/pyroscope_cli/tests/cli-ui/pyroscope_cli_connect_cmd_stdout.toml deleted file mode 100644 index cc3c0bb0..00000000 --- a/pyroscope_cli/tests/cli-ui/pyroscope_cli_connect_cmd_stdout.toml +++ /dev/null @@ -1,69 +0,0 @@ -bin.name = "pyroscope-cli" -args = ["connect", "--help"] -status.code = 0 -stdout = """ -pyroscope-cli-connect -Connect to an existing process and profile it - -USAGE: - pyroscope-cli connect [OPTIONS] --pid --spy-name - -OPTIONS: - --application-name - application name used when uploading profiling data - - --auth-token - Authentication token used when uploading profiling data - - --basic-auth-username - HTTP Basic Authentication username used when uploading profiling data - - --basic-auth-password - HTTP Basic Authentication password used when uploading profiling data - - --scope-org-id - X-Scope-OrgID header for phlare multi-tenancy - - --detect-subprocesses - keep track of and profile subprocesses of the main process - - -l, --log-level - [default: info] log level for the application [possible values: trace, debug, info, - warn, error, critical] - - --pid - PID of the process you want to profile. Pass -1 to profile the whole system (only - supported by ebpfspy) - - --blocking - enable blocking mode. [supported by: rbspy, pyspy] - - --oncpu - enable oncpu mode. [supported by: rbspy, pyspy] - - --pyspy-gil - enable GIL mode for pyspy - - --pyspy-native - enable native extensions profiling for pyspy - - --sample-rate - [default: 100] sample rate for the profiler in Hz. 100 means reading 100 times per - second - - --server-address - [default: http://localhost:4040] Pyroscope server address - - --spy-name - name of the profiler to use [possible values: rbspy, pyspy] - - --tag - tag in key=value form. The flag may be specified multiple times - - --http_header - http header in 'X-Header: HeaderValue' form. The flag may be specified multiple times - - -h, --help - Print help information -""" -stderr = "" diff --git a/pyroscope_cli/tests/cli-ui/pyroscope_cli_exec_cmd_stdout.toml b/pyroscope_cli/tests/cli-ui/pyroscope_cli_exec_cmd_stdout.toml deleted file mode 100644 index 3f1eb6a5..00000000 --- a/pyroscope_cli/tests/cli-ui/pyroscope_cli_exec_cmd_stdout.toml +++ /dev/null @@ -1,74 +0,0 @@ -bin.name = "pyroscope-cli" -args = ["exec", "--help"] -status.code = 0 -stdout = """ -pyroscope-cli-exec -Start a new process from arguments and profile it - -USAGE: - pyroscope-cli exec [OPTIONS] --spy-name ... - -ARGS: - ... command to execute - -OPTIONS: - --application-name - application name used when uploading profiling data - - --auth-token - Authentication token used when uploading profiling data - - --basic-auth-username - HTTP Basic Authentication username used when uploading profiling data - - --basic-auth-password - HTTP Basic Authentication password used when uploading profiling data - - --scope-org-id - X-Scope-OrgID header for phlare multi-tenancy - - --detect-subprocesses - keep track of and profile subprocesses of the main process - - -l, --log-level - [default: info] log level for the application [possible values: trace, debug, info, - warn, error, critical] - - --blocking - enable blocking mode. [supported by: rbspy, pyspy] - - --oncpu - enable oncpu mode. [supported by: rbspy, pyspy] - - --pyspy-gil - enable GIL mode for pyspy - - --pyspy-native - enable native extensions profiling for pyspy - - --sample-rate - [default: 100] sample rate for the profiler in Hz. 100 means reading 100 times per - second - - --server-address - [default: http://localhost:4040] Pyroscope server address - - --spy-name - name of the profiler to use [possible values: rbspy, pyspy] - - --tag - tag in key=value form. The flag may be specified multiple times - - --http_header - http header in 'X-Header: HeaderValue' form. The flag may be specified multiple times - - --user-name - start process under specified user name - - --group-name - start process under specified group name - - -h, --help - Print help information -""" -stderr = "" diff --git a/pyroscope_cli/tests/cli-ui/pyroscope_cli_help_cmd_stdout.toml b/pyroscope_cli/tests/cli-ui/pyroscope_cli_help_cmd_stdout.toml deleted file mode 100644 index 93582b4b..00000000 --- a/pyroscope_cli/tests/cli-ui/pyroscope_cli_help_cmd_stdout.toml +++ /dev/null @@ -1,33 +0,0 @@ -bin.name = "pyroscope-cli" -args = ["help"] -status.code = 0 -stdout = """ -pyroscope-cli 0.2.3 -Abid Omar -Pyroscope CLI - -USAGE: - pyroscope-cli [OPTIONS] - -OPTIONS: - -c, --config - Set a custom config file - - -h, --help - Print help information - - -V, --version - Print version information - -SUBCOMMANDS: - completion - Generate the autocompletion script for pyroscope for the specified shell. See each - sub-command's help for details on how to use the generated script. - connect - Connect to an existing process and profile it - exec - Start a new process from arguments and profile it - help - Print this message or the help of the given subcommand(s) -""" -stderr = "" diff --git a/pyroscope_cli/tests/cli-ui/pyroscope_cli_help_flag_stdout.toml b/pyroscope_cli/tests/cli-ui/pyroscope_cli_help_flag_stdout.toml deleted file mode 100644 index b901d6e3..00000000 --- a/pyroscope_cli/tests/cli-ui/pyroscope_cli_help_flag_stdout.toml +++ /dev/null @@ -1,33 +0,0 @@ -bin.name = "pyroscope-cli" -args = ["--help"] -status.code = 0 -stdout = """ -pyroscope-cli 0.2.3 -Abid Omar -Pyroscope CLI - -USAGE: - pyroscope-cli [OPTIONS] - -OPTIONS: - -c, --config - Set a custom config file - - -h, --help - Print help information - - -V, --version - Print version information - -SUBCOMMANDS: - completion - Generate the autocompletion script for pyroscope for the specified shell. See each - sub-command's help for details on how to use the generated script. - connect - Connect to an existing process and profile it - exec - Start a new process from arguments and profile it - help - Print this message or the help of the given subcommand(s) -""" -stderr = "" diff --git a/pyroscope_cli/tests/cli_ui.rs b/pyroscope_cli/tests/cli_ui.rs deleted file mode 100644 index a238e04f..00000000 --- a/pyroscope_cli/tests/cli_ui.rs +++ /dev/null @@ -1,7 +0,0 @@ -#[test] -fn cli_ui_doc_text_tests() { - let t = trycmd::TestCases::new(); - let cli = trycmd::cargo::cargo_bin("pyroscope-cli"); - t.register_bin("pyroscope-cli", &cli); - t.case("tests/cli-ui/*.toml"); -}