mirror of
https://github.com/DioxusLabs/dioxus
synced 2024-11-22 12:13:04 +00:00
128 lines
2.6 KiB
TOML
128 lines
2.6 KiB
TOML
[config]
|
|
default_to_workspace = false
|
|
min_version = "0.32.4"
|
|
|
|
[env]
|
|
CARGO_MAKE_CLIPPY_ARGS = "-- --deny=warnings"
|
|
CARGO_MAKE_EXTEND_WORKSPACE_MAKEFILE = true
|
|
|
|
[config.modify_core_tasks]
|
|
namespace = "core"
|
|
private = true
|
|
|
|
[tasks.tests-setup]
|
|
private = true
|
|
script = [
|
|
"""
|
|
test_flags = array --headless --firefox
|
|
dioxus_test_features = set wasm_test
|
|
dioxus_test_flags = array_join ${test_flags} " "
|
|
echo "running tests with flags: ${dioxus_test_flags} and features: ${dioxus_test_features}"
|
|
set_env DIOXUS_TEST_FLAGS ${dioxus_test_flags}
|
|
set_env DIOXUS_TEST_FEATURES ${dioxus_test_features}
|
|
""",
|
|
]
|
|
script_runner = "@duckscript"
|
|
|
|
[tasks.format]
|
|
command = "cargo"
|
|
args = ["fmt", "--all"]
|
|
|
|
[tasks.check]
|
|
command = "cargo"
|
|
args = ["check", "--workspace", "--examples", "--tests"]
|
|
|
|
[tasks.clippy]
|
|
command = "cargo"
|
|
args = [
|
|
"clippy",
|
|
"--workspace",
|
|
"--examples",
|
|
"--tests",
|
|
"--",
|
|
"-D",
|
|
"warnings",
|
|
]
|
|
|
|
[tasks.tidy]
|
|
category = "Formatting"
|
|
dependencies = ["format", "check", "clippy"]
|
|
description = "Format and Check workspace"
|
|
|
|
[tasks.install-miri]
|
|
toolchain = "nightly"
|
|
install_crate = { rustup_component_name = "miri", binary = "cargo +nightly miri", test_arg = "--help" }
|
|
private = true
|
|
|
|
[tasks.miri-native]
|
|
command = "cargo"
|
|
toolchain = "nightly"
|
|
dependencies = ["install-miri"]
|
|
args = [
|
|
"miri",
|
|
"test",
|
|
"--package",
|
|
"dioxus-native-core",
|
|
"--test",
|
|
"miri_native",
|
|
]
|
|
|
|
[tasks.miri-stress]
|
|
command = "cargo"
|
|
toolchain = "nightly"
|
|
dependencies = ["install-miri"]
|
|
args = ["miri", "test", "--package", "dioxus-core", "--test", "miri_stress"]
|
|
|
|
[tasks.miri]
|
|
dependencies = ["miri-native", "miri-stress"]
|
|
|
|
[tasks.tests]
|
|
category = "Testing"
|
|
dependencies = ["tests-setup"]
|
|
description = "Run all tests"
|
|
env = { CARGO_MAKE_WORKSPACE_SKIP_MEMBERS = ["**/examples/*"] }
|
|
run_task = { name = ["test-flow", "test-with-browser"], fork = true }
|
|
|
|
[tasks.build]
|
|
command = "cargo"
|
|
args = ["build"]
|
|
|
|
[tasks.test-flow]
|
|
dependencies = ["test", "docs"]
|
|
private = true
|
|
|
|
[tasks.test]
|
|
dependencies = ["build"]
|
|
command = "cargo"
|
|
args = [
|
|
"test",
|
|
"--lib",
|
|
"--bins",
|
|
"--tests",
|
|
"--examples",
|
|
"--workspace",
|
|
# These tests run on Ubuntu without a screen. Desktop tests that require a screen fail, so we skip them
|
|
"--exclude",
|
|
"dioxus-desktop",
|
|
"--exclude",
|
|
"dioxus-mobile",
|
|
]
|
|
private = true
|
|
|
|
[tasks.docs]
|
|
dependencies = ["build"]
|
|
command = "cargo"
|
|
args = [
|
|
"test",
|
|
"--doc",
|
|
"--workspace",
|
|
]
|
|
private = true
|
|
|
|
[tasks.test-with-browser]
|
|
env = { CARGO_MAKE_WORKSPACE_INCLUDE_MEMBERS = [
|
|
"**/packages/router",
|
|
"**/packages/desktop",
|
|
] }
|
|
private = true
|
|
workspace = true
|