diff options
Diffstat (limited to 'examples')
28 files changed, 447 insertions, 364 deletions
diff --git a/examples/example-argument-parse/test.toml b/examples/example-argument-parse/test.toml new file mode 100644 index 0000000..a405bd9 --- /dev/null +++ b/examples/example-argument-parse/test.toml @@ -0,0 +1,29 @@ +[[runs]] +input = [ "transfer" ] + +expect.exit-code = 0 +expect.result = "file: (1048576)" + +[[runs]] +input = [ "transfer", "--dir", "src" ] + +expect.exit-code = 0 +expect.result = "dir: src (1048576)" + +[[runs]] +input = [ "transfer", "--size", "500", "myfile.txt" ] + +expect.exit-code = 0 +expect.result = "file: myfile.txt (500)" + +[[runs]] +input = [ "strict-transfer", "README.md" ] + +expect.exit-code = 0 +expect.result = "file: README.md (1048576)" + +[[runs]] +input = [ "strict-transfer" ] + +expect.exit-code = 0 +expect.result = "Error: name is not provided" diff --git a/examples/example-argument-picker/test.toml b/examples/example-argument-picker/test.toml new file mode 100644 index 0000000..a67ffbe --- /dev/null +++ b/examples/example-argument-picker/test.toml @@ -0,0 +1,41 @@ +[[runs]] +input = [ "calc", "1", "+", "1" ] + +expect.exit-code = 0 +expect.result = "Result: 2" + +[[runs]] +input = [ "calc", "7", "*", "7" ] + +expect.exit-code = 0 +expect.result = "Result: 49" + +[[runs]] +input = [ "calc" ] + +expect.exit-code = 0 +expect.result = "Error: First number (number_a) was not provided." + +[[runs]] +input = [ "calc", "1" ] + +expect.exit-code = 0 +expect.result = "Error: Operator was not provided." + +[[runs]] +input = [ "calc", "1", "+" ] + +expect.exit-code = 0 +expect.result = "Error: Second number (number_b) was not provided." + +[[runs]] +input = [ "calc", "4", "/", "3" ] + +expect.exit-code = 0 +expect.result = "Result: 1.3333334" + +[[runs]] +input = [ "calc", "4", "/", "3", "--round" ] + +expect.exit-code = 0 +expect.result = "Result: 1" diff --git a/examples/example-async-support/test.toml b/examples/example-async-support/test.toml new file mode 100644 index 0000000..735e115 --- /dev/null +++ b/examples/example-async-support/test.toml @@ -0,0 +1,5 @@ +[[runs]] +input = [ "download", "readme.txt" ] + +expect.exit-code = 0 +expect.result = "\"readme.txt\" downloaded." diff --git a/examples/example-basic/test.toml b/examples/example-basic/test.toml new file mode 100644 index 0000000..fb4f1de --- /dev/null +++ b/examples/example-basic/test.toml @@ -0,0 +1,11 @@ +[[runs]] +input = [ "greet" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" + +[[runs]] +input = [ "greet", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice!" diff --git a/examples/example-clap-binding/test.toml b/examples/example-clap-binding/test.toml new file mode 100644 index 0000000..a12daa0 --- /dev/null +++ b/examples/example-clap-binding/test.toml @@ -0,0 +1,17 @@ +[[runs]] +input = [ "greet" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" + +[[runs]] +input = [ "greet", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice!" + +[[runs]] +input = [ "greet", "Alice", "-r", "5" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice, Alice, Alice, Alice, Alice!" diff --git a/examples/example-combine-pathf-dispatch-tree/test.toml b/examples/example-combine-pathf-dispatch-tree/test.toml new file mode 100644 index 0000000..1fd14d9 --- /dev/null +++ b/examples/example-combine-pathf-dispatch-tree/test.toml @@ -0,0 +1,11 @@ +[[runs]] +input = [ "hello", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice!" + +[[runs]] +input = [ "hello" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" diff --git a/examples/example-combine-pathf-metadata/test.toml b/examples/example-combine-pathf-metadata/test.toml new file mode 100644 index 0000000..2803cee --- /dev/null +++ b/examples/example-combine-pathf-metadata/test.toml @@ -0,0 +1,17 @@ +[[runs]] +input = [ "hello" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" + +[[runs]] +input = [ "hello", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice!" + +[[runs]] +input = [ "desc" ] + +expect.exit-code = 0 +expect.result = "EntryHello desc = okay" diff --git a/examples/example-command-macro/test.toml b/examples/example-command-macro/test.toml new file mode 100644 index 0000000..215cbb3 --- /dev/null +++ b/examples/example-command-macro/test.toml @@ -0,0 +1,17 @@ +[[runs]] +input = [ "hello", "world" ] + +expect.exit-code = 0 +expect.result = "Hello, World" + +[[runs]] +input = [ "greet-someone", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice" + +[[runs]] +input = [ "goodbye" ] + +expect.exit-code = 0 +expect.result = "Goodbye!" diff --git a/examples/example-completion/test.toml b/examples/example-completion/test.toml new file mode 100644 index 0000000..ccb0e46 --- /dev/null +++ b/examples/example-completion/test.toml @@ -0,0 +1,5 @@ +[[runs]] +input = [ "greet", "World", "--repeat", "1" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" diff --git a/examples/example-custom-pickable/test.toml b/examples/example-custom-pickable/test.toml new file mode 100644 index 0000000..8fc20eb --- /dev/null +++ b/examples/example-custom-pickable/test.toml @@ -0,0 +1,17 @@ +[[runs]] +input = [ "connect", "192.168.1.1:8080" ] + +expect.exit-code = 0 +expect.result = "Connected to \"192.168.1.1:8080\"" + +[[runs]] +input = [ "connect" ] + +expect.exit-code = 0 +expect.result = "Failed to parse address" + +[[runs]] +input = [ "connect", "invalid" ] + +expect.exit-code = 0 +expect.result = "Failed to parse address" diff --git a/examples/example-dispatch-tree/test.toml b/examples/example-dispatch-tree/test.toml new file mode 100644 index 0000000..d455c48 --- /dev/null +++ b/examples/example-dispatch-tree/test.toml @@ -0,0 +1,5 @@ +[[runs]] +input = [ "cmd5" ] + +expect.exit-code = 0 +expect.result = "It's works!" diff --git a/examples/example-enum-tag/test.toml b/examples/example-enum-tag/test.toml new file mode 100644 index 0000000..ca83b7f --- /dev/null +++ b/examples/example-enum-tag/test.toml @@ -0,0 +1,17 @@ +[[runs]] +input = [ "lang-select" ] + +expect.exit-code = 0 +expect.result = "Selected: Rust" + +[[runs]] +input = [ "lang-select", "Python" ] + +expect.exit-code = 0 +expect.result = "Selected: Python" + +[[runs]] +input = [ "lang-select", "OCaml" ] + +expect.exit-code = 0 +expect.result = "Selected: OCaml" diff --git a/examples/example-error-handling/test.toml b/examples/example-error-handling/test.toml new file mode 100644 index 0000000..9df5f6f --- /dev/null +++ b/examples/example-error-handling/test.toml @@ -0,0 +1,29 @@ +[[runs]] +input = [ "hello" ] + +expect.exit-code = 0 +expect.result = "No name provided" + +[[runs]] +input = [ "hello", "MyBestFriendAlice" ] + +expect.exit-code = 0 +expect.result = "Name too long: 17 > 10" + +[[runs]] +input = [ "hello", "Alice" ] + +expect.exit-code = 0 +expect.result = "Name not available" + +[[runs]] +input = [ "hello", "Peter" ] + +expect.exit-code = 0 +expect.result = "Hello, Peter" + +[[runs]] +input = [ "hallo" ] + +expect.exit-code = 0 +expect.result = "Command not found: \"hallo\"" diff --git a/examples/example-exitcode/test.toml b/examples/example-exitcode/test.toml new file mode 100644 index 0000000..4a4989d --- /dev/null +++ b/examples/example-exitcode/test.toml @@ -0,0 +1,17 @@ +[[runs]] +input = [ "hello", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice" + +[[runs]] +input = [ "hello" ] + +expect.exit-code = 1 +expect.result = "No name provided (with exit code 1)" + +[[runs]] +input = [ "hello", "--help" ] + +expect.exit-code = 2 +expect.result = "Usage: hello <NAME>" diff --git a/examples/example-help/test.toml b/examples/example-help/test.toml new file mode 100644 index 0000000..d1ec550 --- /dev/null +++ b/examples/example-help/test.toml @@ -0,0 +1,11 @@ +[[runs]] +input = [ "greet" ] + +expect.exit-code = 0 +expect.result = "" + +[[runs]] +input = [ "greet", "--help" ] + +expect.exit-code = 0 +expect.result = "Usage: greet <NAME>" diff --git a/examples/example-hook/test.toml b/examples/example-hook/test.toml new file mode 100644 index 0000000..fb4f1de --- /dev/null +++ b/examples/example-hook/test.toml @@ -0,0 +1,11 @@ +[[runs]] +input = [ "greet" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" + +[[runs]] +input = [ "greet", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice!" diff --git a/examples/example-lazy-resources/test.toml b/examples/example-lazy-resources/test.toml new file mode 100644 index 0000000..c8729a7 --- /dev/null +++ b/examples/example-lazy-resources/test.toml @@ -0,0 +1,11 @@ +[[runs]] +input = [ "none" ] + +expect.exit-code = 0 +expect.result = "None" + +[[runs]] +input = [ "show" ] + +expect.exit-code = 0 +expect.result = "Initialized\nbaz: qux\nfoo: bar\nhello: world\nkey: value\nrust: lang" diff --git a/examples/example-metadata/test.toml b/examples/example-metadata/test.toml new file mode 100644 index 0000000..0cd0ce1 --- /dev/null +++ b/examples/example-metadata/test.toml @@ -0,0 +1,23 @@ +[[runs]] +input = [ "greet" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" + +[[runs]] +input = [ "greet", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice!" + +[[runs]] +input = [ "desc" ] + +expect.exit-code = 0 +expect.result = "EntryGreet desc = ok" + +[[runs]] +input = [ "nodoc" ] + +expect.exit-code = 0 +expect.result = "EntryDescription has no description" diff --git a/examples/example-outside-type/test.toml b/examples/example-outside-type/test.toml new file mode 100644 index 0000000..50eaa90 --- /dev/null +++ b/examples/example-outside-type/test.toml @@ -0,0 +1,17 @@ +[[runs]] +input = [ "parse", "42" ] + +expect.exit-code = 0 +expect.result = "Parsed number: 42" + +[[runs]] +input = [ "parse", "hello" ] + +expect.exit-code = 0 +expect.result = "Parse error: invalid digit found in string" + +[[runs]] +input = [ "error" ] + +expect.exit-code = 0 +expect.result = "IO_ERROR: Error" diff --git a/examples/example-pack-err/test.toml b/examples/example-pack-err/test.toml new file mode 100644 index 0000000..c4509cb --- /dev/null +++ b/examples/example-pack-err/test.toml @@ -0,0 +1,35 @@ +[[runs]] +input = [ "find" ] + +expect.exit-code = 0 +expect.result = "Search path not provided" + +[[runs]] +input = [ "find", "Cargo.toml" ] + +expect.exit-code = 0 +expect.result = "Not a directory: Cargo.toml" + +[[runs]] +input = [ "find", "examples" ] + +expect.exit-code = 0 +expect.result = "Found directory: examples" + +[[runs]] +input = [ "find-structural", "--json" ] + +expect.exit-code = 0 +expect.result = "{\"name\":\"error_not_found_structural\"}" + +[[runs]] +input = [ "find-structural", "Cargo.toml", "--json" ] + +expect.exit-code = 0 +expect.result = "{\"name\":\"error_not_dir_structural\",\"info\":\"Cargo.toml\"}" + +[[runs]] +input = [ "find-structural", "examples", "--json" ] + +expect.exit-code = 0 +expect.result = "{\"inner\":\"examples\"}" diff --git a/examples/example-panic-unwind/test.toml b/examples/example-panic-unwind/test.toml new file mode 100644 index 0000000..2a29071 --- /dev/null +++ b/examples/example-panic-unwind/test.toml @@ -0,0 +1,11 @@ +[[runs]] +input = [ "panic" ] + +expect.exit-code = 0 +expect.result = "Program not panic" + +[[runs]] +input = [ "panic", "something_went_wrong" ] + +expect.exit-code = 0 +expect.result = "Program panic: something_went_wrong" diff --git a/examples/example-pathfinder/test.toml b/examples/example-pathfinder/test.toml new file mode 100644 index 0000000..fb4f1de --- /dev/null +++ b/examples/example-pathfinder/test.toml @@ -0,0 +1,11 @@ +[[runs]] +input = [ "greet" ] + +expect.exit-code = 0 +expect.result = "Hello, World!" + +[[runs]] +input = [ "greet", "Alice" ] + +expect.exit-code = 0 +expect.result = "Hello, Alice!" diff --git a/examples/example-resources/test.toml b/examples/example-resources/test.toml new file mode 100644 index 0000000..3dfa8fe --- /dev/null +++ b/examples/example-resources/test.toml @@ -0,0 +1,5 @@ +[[runs]] +input = [ "current" ] + +expect.exit-code = 0 +expect.result = "Current directory:" diff --git a/examples/example-setup/test.toml b/examples/example-setup/test.toml new file mode 100644 index 0000000..811a108 --- /dev/null +++ b/examples/example-setup/test.toml @@ -0,0 +1,29 @@ +[[runs]] +input = [ "1" ] + +expect.exit-code = 0 +expect.result = "" + +[[runs]] +input = [ "2" ] + +expect.exit-code = 0 +expect.result = "" + +[[runs]] +input = [ "3" ] + +expect.exit-code = 0 +expect.result = "" + +[[runs]] +input = [ "4" ] + +expect.exit-code = 0 +expect.result = "" + +[[runs]] +input = [ "5" ] + +expect.exit-code = 0 +expect.result = "" diff --git a/examples/example-structural-renderer/Cargo.lock b/examples/example-structural-renderer/Cargo.lock index 453945b..c3f24c7 100644 --- a/examples/example-structural-renderer/Cargo.lock +++ b/examples/example-structural-renderer/Cargo.lock @@ -80,6 +80,7 @@ dependencies = [ "might_be_async", "serde", "serde_json", + "serde_yaml", ] [[package]] @@ -111,6 +112,12 @@ dependencies = [ ] [[package]] +name = "ryu" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" + +[[package]] name = "serde" version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -163,6 +170,19 @@ dependencies = [ ] [[package]] +name = "serde_yaml" +version = "0.9.34+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" +dependencies = [ + "indexmap", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", +] + +[[package]] name = "size" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" @@ -227,6 +247,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + +[[package]] name = "winnow" version = "0.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" diff --git a/examples/example-structural-renderer/Cargo.toml b/examples/example-structural-renderer/Cargo.toml index 2090166..e29e9c3 100644 --- a/examples/example-structural-renderer/Cargo.toml +++ b/examples/example-structural-renderer/Cargo.toml @@ -10,6 +10,7 @@ serde = { version = "1.0.228", features = ["derive"] } path = "../../mingling" features = [ "structural_renderer", + "yaml_serde_fmt", "parser", ] diff --git a/examples/example-structural-renderer/test.toml b/examples/example-structural-renderer/test.toml new file mode 100644 index 0000000..3e87151 --- /dev/null +++ b/examples/example-structural-renderer/test.toml @@ -0,0 +1,18 @@ +[[runs]] +input = [ "render", "Bob", "22" ] + +expect.exit-code = 0 +expect.result = "Bob is 22 years old" + +[[runs]] +input = [ "render", "Bob", "22", "--json" ] + +expect.exit-code = 0 +expect.result = "{\"member_name\":\"Bob\",\"member_age\":22}" + +[[runs]] +input = [ "render", "Bob", "22", "--yaml" ] + +expect.exit-code = 0 +expect.result = """member_name: Bob +member_age: 22""" diff --git a/examples/test-examples.toml b/examples/test-examples.toml deleted file mode 100644 index 03df5e1..0000000 --- a/examples/test-examples.toml +++ /dev/null @@ -1,364 +0,0 @@ -[[test.example-outside-type]] -command = "parse 42" -expect.exit-code = 0 -expect.result = "Parsed number: 42" - -[[test.example-outside-type]] -command = "parse hello" -expect.exit-code = 0 -expect.result = "Parse error: invalid digit found in string" - -[[test.example-outside-type]] -command = "error" -expect.exit-code = 0 -expect.result = "IO_ERROR: Error" - -[[test.example-lazy-resources]] -command = "none" -expect.exit-code = 0 -expect.result = "None" - -[[test.example-lazy-resources]] -command = "show" -expect.exit-code = 0 -expect.result = "Initialized\nbaz: qux\nfoo: bar\nhello: world\nkey: value\nrust: lang" - -[[test.example-basic]] -command = "greet" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-basic]] -command = "greet Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice!" - -[[test.example-exitcode]] -command = "hello Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice" - -[[test.example-exitcode]] -command = "hello" -expect.exit-code = 1 -expect.result = "No name provided (with exit code 1)" - -[[test.example-exitcode]] -command = "hello --help" -expect.exit-code = 2 -expect.result = "Usage: hello <NAME>" - -[[test.example-error-handling]] -command = "hello" -expect.exit-code = 0 -expect.result = "No name provided" - -[[test.example-error-handling]] -command = "hello MyBestFriendAlice" -expect.exit-code = 0 -expect.result = "Name too long: 17 > 10" - -[[test.example-error-handling]] -command = "hello Alice" -expect.exit-code = 0 -expect.result = "Name not available" - -[[test.example-error-handling]] -command = "hello Peter" -expect.exit-code = 0 -expect.result = "Hello, Peter" - -[[test.example-error-handling]] -command = "hallo" -expect.exit-code = 0 -expect.result = "Command not found: \"hallo\"" - -[[test.example-argument-parse]] -command = "transfer" -expect.exit-code = 0 -expect.result = "file: (1048576)" - -[[test.example-argument-parse]] -command = "transfer --dir src" -expect.exit-code = 0 -expect.result = "dir: src (1048576)" - -[[test.example-argument-parse]] -command = "transfer --size 500 myfile.txt" -expect.exit-code = 0 -expect.result = "file: myfile.txt (500)" - -[[test.example-argument-parse]] -command = "strict-transfer README.md" -expect.exit-code = 0 -expect.result = "file: README.md (1048576)" - -[[test.example-argument-parse]] -command = "strict-transfer" -expect.exit-code = 0 -expect.result = "Error: name is not provided" - -[[test.example-async-support]] -command = "download readme.txt" -expect.exit-code = 0 -expect.result = "\"readme.txt\" downloaded." - -[[test.example-custom-pickable]] -command = "connect 192.168.1.1:8080" -expect.exit-code = 0 -expect.result = "Connected to \"192.168.1.1:8080\"" - -[[test.example-custom-pickable]] -command = "connect" -expect.exit-code = 0 -expect.result = "Failed to parse address" - -[[test.example-custom-pickable]] -command = "connect invalid" -expect.exit-code = 0 -expect.result = "Failed to parse address" - -[[test.example-dispatch-tree]] -command = "cmd5" -expect.exit-code = 0 -expect.result = "It's works!" - -[[test.example-enum-tag]] -command = "lang-select" -expect.exit-code = 0 -expect.result = "Selected: Rust" - -[[test.example-enum-tag]] -command = "lang-select Python" -expect.exit-code = 0 -expect.result = "Selected: Python" - -[[test.example-enum-tag]] -command = "lang-select OCaml" -expect.exit-code = 0 -expect.result = "Selected: OCaml" - -[[test.example-structural-renderer]] -command = "render Bob 22" -expect.exit-code = 0 -expect.result = "Bob is 22 years old" - -[[test.example-structural-renderer]] -command = "render Bob 22 --json" -expect.exit-code = 0 -expect.result = "{\"member_name\":\"Bob\",\"member_age\":22}" - -[[test.example-help]] -command = "greet" -expect.exit-code = 0 -expect.result = "" - -[[test.example-help]] -command = "greet --help" -expect.exit-code = 0 -expect.result = "Usage: greet <NAME>" - -[[test.example-hook]] -command = "greet" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-hook]] -command = "greet Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice!" - -[[test.example-panic-unwind]] -command = "panic" -expect.exit-code = 0 -expect.result = "Program not panic" - -[[test.example-panic-unwind]] -command = "panic something_went_wrong" -expect.exit-code = 0 -expect.result = "Program panic: something_went_wrong" - -[[test.example-resources]] -command = "current" -expect.exit-code = 0 -expect.result = "Current directory:" - -[[test.example-setup]] -command = "1" -expect.exit-code = 0 -expect.result = "" - -[[test.example-setup]] -command = "2" -expect.exit-code = 0 -expect.result = "" - -[[test.example-setup]] -command = "3" -expect.exit-code = 0 -expect.result = "" - -[[test.example-setup]] -command = "4" -expect.exit-code = 0 -expect.result = "" - -[[test.example-setup]] -command = "5" -expect.exit-code = 0 -expect.result = "" - -[[test.example-completion]] -command = "greet World --repeat 1" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-clap-binding]] -command = "greet" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-clap-binding]] -command = "greet Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice!" - -[[test.example-clap-binding]] -command = "greet Alice -r 5" -expect.exit-code = 0 -expect.result = "Hello, Alice, Alice, Alice, Alice, Alice!" - -[[test.example-pack-err]] -command = "find" -expect.exit-code = 0 -expect.result = "Search path not provided" - -[[test.example-pack-err]] -command = "find Cargo.toml" -expect.exit-code = 0 -expect.result = "Not a directory: Cargo.toml" - -[[test.example-pack-err]] -command = "find examples" -expect.exit-code = 0 -expect.result = "Found directory: examples" - -[[test.example-pack-err]] -command = "find-structural --json" -expect.exit-code = 0 -expect.result = '{"name":"error_not_found_structural"}' - -[[test.example-pack-err]] -command = "find-structural Cargo.toml --json" -expect.exit-code = 0 -expect.result = '{"name":"error_not_dir_structural","info":"Cargo.toml"}' - -[[test.example-pack-err]] -command = "find-structural examples --json" -expect.exit-code = 0 -expect.result = '{"inner":"examples"}' - -[[test.example-pathfinder]] -command = "greet" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-pathfinder]] -command = "greet Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice!" - -[[test.example-combine-pathf-dispatch-tree]] -command = "hello Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice!" - -[[test.example-combine-pathf-dispatch-tree]] -command = "hello" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-argument-picker]] -command = "calc 1 + 1" -expect.exit-code = 0 -expect.result = "Result: 2" - -[[test.example-argument-picker]] -command = "calc 7 * 7" -expect.exit-code = 0 -expect.result = "Result: 49" - -[[test.example-argument-picker]] -command = "calc" -expect.exit-code = 0 -expect.result = "Error: First number (number_a) was not provided." - -[[test.example-argument-picker]] -command = "calc 1" -expect.exit-code = 0 -expect.result = "Error: Operator was not provided." - -[[test.example-argument-picker]] -command = "calc 1 +" -expect.exit-code = 0 -expect.result = "Error: Second number (number_b) was not provided." - -[[test.example-argument-picker]] -command = "calc 4 / 3" -expect.exit-code = 0 -expect.result = "Result: 1.3333334" - -[[test.example-argument-picker]] -command = "calc 4 / 3 --round" -expect.exit-code = 0 -expect.result = "Result: 1" - -[[test.example-command-macro]] -command = "hello world" -expect.exit-code = 0 -expect.result = "Hello, World" - -[[test.example-command-macro]] -command = "greet-someone Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice" - -[[test.example-command-macro]] -command = "goodbye" -expect.exit-code = 0 -expect.result = "Goodbye!" - -[[test.example-metadata]] -command = "greet" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-metadata]] -command = "greet Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice!" - -[[test.example-metadata]] -command = "desc" -expect.exit-code = 0 -expect.result = "EntryGreet desc = ok" - -[[test.example-metadata]] -command = "nodoc" -expect.exit-code = 0 -expect.result = "EntryDescription has no description" - -[[test.example-combine-pathf-metadata]] -command = "hello" -expect.exit-code = 0 -expect.result = "Hello, World!" - -[[test.example-combine-pathf-metadata]] -command = "hello Alice" -expect.exit-code = 0 -expect.result = "Hello, Alice!" - -[[test.example-combine-pathf-metadata]] -command = "desc" -expect.exit-code = 0 -expect.result = "EntryHello desc = okay" |
