浏览代码

improve Makefile tests

t1m0t 3 年之前
父节点
当前提交
bd565bb65f
共有 4 个文件被更改,包括 35 次插入16 次删除
  1. 13 2
      .docker/Dockerfile_pre_test
  2. 2 3
      .docker/run_local_tests.sh
  3. 18 9
      Makefile.toml
  4. 2 2
      packages/router/Makefile.toml

+ 13 - 2
.docker/Dockerfile_pre_test

@@ -1,9 +1,20 @@
 FROM rust:1.58-buster
 
 RUN apt update
-RUN apt install -y libglib2.0-dev libgtk-3-dev libsoup2.4-dev libappindicator3-dev libwebkit2gtk-4.0-dev firefox-esr
+RUN apt install -y \
+    libglib2.0-dev \
+    libgtk-3-dev \
+    libsoup2.4-dev \
+    libappindicator3-dev \
+    libwebkit2gtk-4.0-dev \
+    firefox-esr
+# for kcov and Tarpaulin
+#liblzma-dev binutils-dev libcurl4-openssl-dev libdw-dev libelf-dev
 
 RUN cargo install cargo-make --debug
+# for test coverage
+#RUN cargo install cargo-tarpaulin
+# clean up a bit
 RUN cargo install cargo-cache && cargo cache -a
 
-CMD ["echo","\"base image built\""]
+CMD ["exit"]

+ 2 - 3
.docker/run_local_tests.sh

@@ -25,14 +25,13 @@ function run_script {
         then
         docker image rm dioxus-base-test-image
         docker image rm dioxus-test-image
-        docker system prune -af
         fi
     fi
 }
 
 run_script || echo "Error occured.. cleaning a bit." && \
-    docker system prune -af;
+    docker system prune -f;
 
-docker system prune -af
+docker system prune -f
 
 echo "Script finished to execute"

+ 18 - 9
Makefile.toml

@@ -10,13 +10,6 @@ CARGO_MAKE_EXTEND_WORKSPACE_MAKEFILE = true
 namespace = "core"
 private = true
 
-[tasks.tests]
-category = "Testing"
-dependencies = ["tests-setup"]
-description = "Run all tests"
-env = {CARGO_MAKE_WORKSPACE_SKIP_MEMBERS = ["**/examples/*", "**/packages/changelog"]}
-run_task = {name = ["test-flow"], fork = true}
-
 [tasks.tests-setup]
 private = true
 script = [
@@ -31,12 +24,28 @@ script = [
 ]
 script_runner = "@duckscript"
 
+[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"]
 private = true
-workspace = true
 
 [tasks.test]
-args = ["test", "--all-targets", "--workspace", "--exclude", "dioxus-mobile"]
+dependencies = ["build"]
 command = "cargo"
+args = ["test", "--all-targets", "--workspace", "--exclude", "dioxus-router"]
+private = true
+
+[tasks.test-with-browser]
+env = { CARGO_MAKE_WORKSPACE_INCLUDE_MEMBERS = ["**/packages/router"] }
 private = true
+workspace = true

+ 2 - 2
packages/router/Makefile.toml

@@ -1,4 +1,4 @@
-[tasks.test]
+[tasks.test-with-browser]
 extend = "core::wasm-pack-base"
 command = "wasm-pack"
 args = [
@@ -7,4 +7,4 @@ args = [
   "--",
   "--features",
   "${DIOXUS_TEST_FEATURES}",
-]
+]