зеркало из https://github.com/mozilla/gecko-dev.git
72 строки
1.6 KiB
Python
72 строки
1.6 KiB
Python
import mozunit
|
|
|
|
|
|
LINTER = "rustfmt"
|
|
fixed = 0
|
|
|
|
|
|
def test_good(lint, config, paths):
|
|
results = lint(paths("subdir/good.rs"))
|
|
print(results)
|
|
assert len(results) == 0
|
|
|
|
|
|
def test_basic(lint, config, paths):
|
|
results = lint(paths("subdir/bad.rs"))
|
|
print(results)
|
|
assert len(results) >= 1
|
|
|
|
assert "Reformat rust" in results[0].message
|
|
assert results[0].level == "warning"
|
|
assert results[0].lineno == 4
|
|
assert "bad.rs" in results[0].path
|
|
assert "Print text to the console" in results[0].diff
|
|
|
|
|
|
def test_dir(lint, config, paths):
|
|
results = lint(paths("subdir/"))
|
|
print(results)
|
|
assert len(results) >= 4
|
|
|
|
assert "Reformat rust" in results[0].message
|
|
assert results[0].level == "warning"
|
|
assert results[0].lineno == 4
|
|
assert "bad.rs" in results[0].path
|
|
assert "Print text to the console" in results[0].diff
|
|
|
|
assert "Reformat rust" in results[1].message
|
|
assert results[1].level == "warning"
|
|
assert results[1].lineno == 4
|
|
assert "bad2.rs" in results[1].path
|
|
assert "Print text to the console" in results[1].diff
|
|
|
|
|
|
def test_fix(lint, create_temp_file):
|
|
|
|
contents = """fn main() {
|
|
// Statements here are executed when the compiled binary is called
|
|
|
|
// Print text to the console
|
|
println!("Hello World!");
|
|
let mut a;
|
|
let mut b=1;
|
|
let mut vec = Vec::new();
|
|
vec.push(1);
|
|
vec.push(2);
|
|
|
|
|
|
for x in 5..10 - 5 {
|
|
a = x;
|
|
}
|
|
|
|
}
|
|
"""
|
|
|
|
path = create_temp_file(contents, "bad.rs")
|
|
lint([path], fix=True)
|
|
assert fixed == 3
|
|
|
|
|
|
if __name__ == "__main__":
|
|
mozunit.main()
|