Skip to content

Commit abd254d

Browse files
Bring nextest config.
1 parent e068013 commit abd254d

File tree

2 files changed

+136
-0
lines changed

2 files changed

+136
-0
lines changed

.config/mutants.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
test_tool = "nextest"

.config/nextest.toml

Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
[store]
2+
# The directory under the workspace root at which nextest-related files are
3+
# written. Profile-specific storage is currently written to dir/<profile-name>.
4+
dir = "target/nextest"
5+
6+
# This section defines the default nextest profile. Custom profiles are layered
7+
# on top of the default profile.
8+
[profile.default]
9+
# "retries" defines the number of times a test should be retried. If set to a
10+
# non-zero value, tests that succeed on a subsequent attempt will be marked as
11+
# flaky. Can be overridden through the `--retries` option.
12+
# Examples
13+
# * retries = 3
14+
# * retries = { backoff = "fixed", count = 2, delay = "1s" }
15+
retries = { backoff = "exponential", count = 3, delay = "1s", jitter = true, max-delay = "10s" }
16+
17+
# The number of threads to run tests with. Supported values are either an integer or
18+
# the string "num-cpus". Can be overridden through the `--test-threads` option.
19+
test-threads = "num-cpus"
20+
21+
# The number of threads required for each test. This is generally used in overrides to
22+
# mark certain tests as heavier than others. However, it can also be set as a global parameter.
23+
threads-required = 1
24+
25+
# Show these test statuses in the output.
26+
#
27+
# The possible values this can take are:
28+
# * none: no output
29+
# * fail: show failed (including exec-failed) tests
30+
# * retry: show flaky and retried tests
31+
# * slow: show slow tests
32+
# * pass: show passed tests
33+
# * skip: show skipped tests (most useful for CI)
34+
# * all: all of the above
35+
#
36+
# Each value includes all the values above it; for example, "slow" includes
37+
# failed and retried tests.
38+
#
39+
# Can be overridden through the `--status-level` flag.
40+
status-level = "all"
41+
42+
# Similar to status-level, show these test statuses at the end of the run.
43+
final-status-level = "flaky"
44+
45+
# "failure-output" defines when standard output and standard error for failing tests are produced.
46+
# Accepted values are
47+
# * "immediate": output failures as soon as they happen
48+
# * "final": output failures at the end of the test run
49+
# * "immediate-final": output failures as soon as they happen and at the end of
50+
# the test run; combination of "immediate" and "final"
51+
# * "never": don't output failures at all
52+
#
53+
# For large test suites and CI it is generally useful to use "immediate-final".
54+
#
55+
# Can be overridden through the `--failure-output` option.
56+
failure-output = "immediate"
57+
58+
# "success-output" controls production of standard output and standard error on success. This should
59+
# generally be set to "never".
60+
success-output = "never"
61+
62+
# Cancel the test run on the first failure. For CI runs, consider setting this
63+
# to false.
64+
fail-fast = true
65+
66+
# Treat a test that takes longer than the configured 'period' as slow, and print a message.
67+
# See <https://nexte.st/book/slow-tests> for more information.
68+
#
69+
# Optional: specify the parameter 'terminate-after' with a non-zero integer,
70+
# which will cause slow tests to be terminated after the specified number of
71+
# periods have passed.
72+
# Example: slow-timeout = { period = "60s", terminate-after = 2 }
73+
slow-timeout = { period = "60s" }
74+
75+
# Treat a test as leaky if after the process is shut down, standard output and standard error
76+
# aren't closed within this duration.
77+
#
78+
# This usually happens in case of a test that creates a child process and lets it inherit those
79+
# handles, but doesn't clean the child process up (especially when it fails).
80+
#
81+
# See <https://nexte.st/book/leaky-tests> for more information.
82+
leak-timeout = "100ms"
83+
84+
# `nextest archive` automatically includes any build output required by a standard build.
85+
# However sometimes extra non-standard files are required.
86+
# To address this, "archive.include" specifies additional paths that will be included in the archive.
87+
archive.include = [
88+
# Examples:
89+
#
90+
# { path = "application-data", relative-to = "target" },
91+
# { path = "data-from-some-dependency/file.txt", relative-to = "target" },
92+
#
93+
# In the above example:
94+
# * the directory and its contents at "target/application-data" will be included recursively in the archive.
95+
# * the file "target/data-from-some-dependency/file.txt" will be included in the archive.
96+
]
97+
98+
[profile.default.junit]
99+
# Output a JUnit report into the given file inside 'store.dir/<profile-name>'.
100+
# If unspecified, JUnit is not written out.
101+
102+
path = "junit.xml"
103+
104+
# The name of the top-level "report" element in JUnit report. If aggregating
105+
# reports across different test runs, it may be useful to provide separate names
106+
# for each report.
107+
report-name = "nextest-run"
108+
109+
# Whether standard output and standard error for passing tests should be stored in the JUnit report.
110+
# Output is stored in the <system-out> and <system-err> elements of the <testcase> element.
111+
store-success-output = false
112+
113+
# Whether standard output and standard error for failing tests should be stored in the JUnit report.
114+
# Output is stored in the <system-out> and <system-err> elements of the <testcase> element.
115+
#
116+
# Note that if a description can be extracted from the output, it is always stored in the
117+
# <description> element.
118+
store-failure-output = true
119+
120+
# This profile is activated if MIRI_SYSROOT is set.
121+
[profile.default-miri]
122+
123+
# This profile is used in CI (use with `--profile ci`)
124+
[profile.ci]
125+
# Print out output for failing tests as soon as they fail, and also at the end
126+
# of the run (for easy scrollability).
127+
failure-output = "immediate-final"
128+
# Do not cancel the test run on the first failure.
129+
fail-fast = false
130+
131+
[profile.ci.junit]
132+
path = "junit.xml"
133+
report-name = "nextest-run-ci"
134+
store-success-output = true
135+
store-failure-output = true

0 commit comments

Comments
 (0)