Skip to content

Commit

Permalink
Add basic UI test docs on legacy compiletest-style headers vs ui_test…
Browse files Browse the repository at this point in the history
…-style headers
  • Loading branch information
jieyouxu authored and oli-obk committed Feb 12, 2024
1 parent 5c04ed2 commit ba9995f
Showing 1 changed file with 35 additions and 0 deletions.
35 changes: 35 additions & 0 deletions tests/ui/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# UI Tests

This folder contains `rustc`'s
[UI tests](https://rustc-dev-guide.rust-lang.org/tests/ui.html).

## Test Directives (Headers)

Typically, a UI test will have some test directives / headers which are
special comments that tell compiletest how to build and intepret a test.

As part of an on-going effort to rewrite compiletest
(see <https://github.com/rust-lang/compiler-team/issues/536>), a major
change proposal to change legacy compiletest-style headers `// <directive>`
to [`ui_test`](https://github.com/oli-obk/ui_test)-style headers
`//@ <directive>` was accepted (see
<https://github.com/rust-lang/compiler-team/issues/512>.

An example directive is `ignore-test`. In legacy compiletest style, the header
would be written as

```rs
// ignore-test
```

but in `ui_test` style, the header would be written as

```rs
//@ ignore-test
```

compiletest is changed to accept only `//@` directives for UI tests
(currently), and will reject and report an error if it encounters any
comments `// <content>` that may be parsed as an legacy compiletest-style
test header. To fix this, you should migrate to the `ui_test`-style header
`//@ <content>`.

0 comments on commit ba9995f

Please sign in to comment.