6483: don\t indent tests r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
This commit is contained in:
bors[bot] 2020-11-06 19:30:06 +00:00 committed by GitHub
commit 6a759e5160
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -89,6 +89,32 @@ There are many benefits to this:
It also makes sense to format snippets more compactly (for example, by placing enum definitions like `enum E { Foo, Bar }` on a single line),
as long as they are still readable.
When using multiline fixtures, use unindented raw string literals:
```rust
#[test]
fn inline_field_shorthand() {
check_assist(
inline_local_variable,
r"
struct S { foo: i32}
fn main() {
let <|>foo = 92;
S { foo }
}
",
r"
struct S { foo: i32}
fn main() {
S { foo: 92 }
}
",
);
}
```
That way, you can use your editor's "number of selected characters" feature to correlate offsets with test's source code.
## Preconditions
Express function preconditions in types and force the caller to provide them (rather than checking in callee):