summaryrefslogtreecommitdiff
path: root/tests/benchmark
diff options
context:
space:
mode:
authorshotat <shotat@users.noreply.github.com>2021-05-30 20:57:40 +0900
committershotat <shotat@users.noreply.github.com>2021-05-30 21:31:08 +0900
commitb4254e7f91afb6863c13c6b4b1914e6f5e287a3c (patch)
tree7c9445454bbe769ab3e9d178f3cdd08fc43bc44c /tests/benchmark
parent290605491c4b3b342f9dae4a56715ad5a1910106 (diff)
downloadisort-b4254e7f91afb6863c13c6b4b1914e6f5e287a3c.tar.gz
add benchmark
Diffstat (limited to 'tests/benchmark')
-rw-r--r--tests/benchmark/test_api.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/tests/benchmark/test_api.py b/tests/benchmark/test_api.py
new file mode 100644
index 00000000..11698cb0
--- /dev/null
+++ b/tests/benchmark/test_api.py
@@ -0,0 +1,28 @@
+import pytest
+from isort import api
+
+imperfect_content = "import b\nimport a\n"
+fixed_content = "import a\nimport b\n"
+
+
+@pytest.fixture
+def imperfect(tmpdir) -> None:
+ imperfect_file = tmpdir.join("test_needs_changes.py")
+ imperfect_file.write_text(imperfect_content, "utf8")
+ return imperfect_file
+
+
+def test_sort_file(benchmark, imperfect) -> None:
+ def sort_file():
+ api.sort_file(imperfect)
+
+ benchmark.pedantic(sort_file, iterations=10, rounds=100)
+ assert imperfect.read() == fixed_content
+
+
+def test_sort_file_in_place(benchmark, imperfect) -> None:
+ def sort_file():
+ api.sort_file(imperfect, overwrite_in_place=True)
+
+ benchmark.pedantic(sort_file, iterations=10, rounds=100)
+ assert imperfect.read() == fixed_content