mirror of https://github.com/astral-sh/ruff
88 lines
1.0 KiB
Python
88 lines
1.0 KiB
Python
import os
|
|
import subprocess
|
|
import time
|
|
from pathlib import Path
|
|
|
|
# Violation cases:
|
|
|
|
|
|
async def func():
|
|
open("foo")
|
|
|
|
|
|
async def func():
|
|
time.sleep(1)
|
|
|
|
|
|
async def func():
|
|
subprocess.run("foo")
|
|
|
|
|
|
async def func():
|
|
subprocess.call("foo")
|
|
|
|
|
|
async def func():
|
|
subprocess.foo(0)
|
|
|
|
|
|
async def func():
|
|
os.wait4(10)
|
|
|
|
|
|
async def func():
|
|
os.wait(12)
|
|
|
|
|
|
# Violation cases for pathlib:
|
|
|
|
|
|
async def func():
|
|
Path("foo").open() # ASYNC101
|
|
|
|
|
|
async def func():
|
|
p = Path("foo")
|
|
p.open() # ASYNC101
|
|
|
|
|
|
async def func():
|
|
with Path("foo").open() as f: # ASYNC101
|
|
pass
|
|
|
|
|
|
async def func() -> None:
|
|
p = Path("foo")
|
|
|
|
async def bar():
|
|
p.open() # ASYNC101
|
|
|
|
|
|
async def func() -> None:
|
|
(p1, p2) = (Path("foo"), Path("bar"))
|
|
|
|
p1.open() # ASYNC101
|
|
|
|
|
|
# Non-violation cases for pathlib:
|
|
|
|
|
|
class Foo:
|
|
def open(self):
|
|
pass
|
|
|
|
|
|
async def func():
|
|
Foo().open() # OK
|
|
|
|
|
|
async def func():
|
|
def open():
|
|
pass
|
|
|
|
open() # OK
|
|
|
|
|
|
def func():
|
|
Path("foo").open() # OK
|