0ad986169d
Juggle around the internals of the tvix-cli crate so that we expose the Repl as a public type with a `send` method, that sends a string to the repl and *captures all output* so that it can be subsequently asserted on in tests. Then, demonstrate that this works with a single (for now) REPL test using expect-test to assert on the output of a single command sent to the REPL. As the REPL gets more complicated, this will allow us to make tests that cover that complex behavior. Change-Id: I88175bd72d8760c79faade95ebb1d956f08a7b83 Reviewed-on: https://cl.tvl.fyi/c/depot/+/11958 Autosubmit: aspen <root@gws.fyi> Tested-by: BuildkiteCI Reviewed-by: flokli <flokli@flokli.de>
41 lines
911 B
TOML
41 lines
911 B
TOML
[package]
|
|
name = "tvix-cli"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[[bin]]
|
|
name = "tvix"
|
|
path = "src/main.rs"
|
|
|
|
[dependencies]
|
|
nix-compat = { path = "../nix-compat" }
|
|
tvix-build = { path = "../build" }
|
|
tvix-castore = { path = "../castore" }
|
|
tvix-store = { path = "../store", default-features = false, features = []}
|
|
tvix-eval = { path = "../eval" }
|
|
tvix-glue = { path = "../glue" }
|
|
tvix-tracing = { path = "../tracing" }
|
|
bytes = "1.4.0"
|
|
clap = { version = "4.0", features = ["derive", "env"] }
|
|
dirs = "4.0.0"
|
|
rustyline = "10.0.0"
|
|
rnix = "0.11.0"
|
|
rowan = "*"
|
|
smol_str = "0.2.0"
|
|
thiserror = "1.0.38"
|
|
tokio = "1.28.0"
|
|
tracing = "0.1.40"
|
|
tracing-indicatif = "0.3.6"
|
|
|
|
[dependencies.wu-manber]
|
|
git = "https://github.com/tvlfyi/wu-manber.git"
|
|
|
|
[dev-dependencies]
|
|
expect-test = "1.5.0"
|
|
|
|
[target.'cfg(not(target_env = "msvc"))'.dependencies]
|
|
tikv-jemallocator = "0.5"
|
|
|
|
[features]
|
|
default = []
|
|
tracy = ["tvix-tracing/tracy"]
|