瀏覽代碼

test: cover _io.py

Sam Jaffe 3 周之前
父節點
當前提交
becc269355
共有 1 個文件被更改,包括 25 次插入0 次删除
  1. 25 0
      tests/io_test.py

+ 25 - 0
tests/io_test.py

@@ -0,0 +1,25 @@
+import sys
+import pytest
+
+import cipy._io
+
+
+def test_capture_cout() -> None:
+    with cipy._io.capture_stdout() as out:
+        print("Hello, World")
+        sys.stdout.flush()
+        assert out.getvalue() == "Hello, World\n"
+
+
+def test_capture_cerr() -> None:
+    with cipy._io.capture_stderr() as out:
+        print("Hello, World", file=sys.stderr)
+        sys.stderr.flush()
+        assert out.getvalue() == "Hello, World\n"
+
+
+def test_capture_expires_scope() -> None:
+    with cipy._io.capture_stdout() as out:
+        pass
+    with pytest.raises(ValueError):
+        out.read()