mirror of https://github.com/JoshKarpel/spiel
write some noodly tests (#11)
parent
09ec4ae422
commit
6bd7c5706a
@ -0,0 +1,41 @@
|
||||
import pytest
|
||||
from PIL import Image as Img
|
||||
from rich.console import Console
|
||||
|
||||
from spiel.image import Image, ImageSize
|
||||
from spiel.main import DEMO_DIR
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def image() -> Image:
|
||||
return Image(Img.new(mode="RGB", size=ImageSize(100, 100)))
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"max_width, height, size",
|
||||
[
|
||||
(100, None, ImageSize(100, 100)),
|
||||
(100, 50, ImageSize(100, 100)),
|
||||
(100, 25, ImageSize(50, 50)),
|
||||
(50, 25, ImageSize(50, 50)),
|
||||
(50, 50, ImageSize(50, 50)),
|
||||
(50, 100, ImageSize(50, 50)),
|
||||
(50, 10, ImageSize(20, 20)),
|
||||
],
|
||||
)
|
||||
def test_determine_size(
|
||||
console: Console, image: Image, max_width: int, height: int, size: ImageSize
|
||||
) -> None:
|
||||
options = console.options.update(max_width=max_width, height=height)
|
||||
|
||||
assert image._determine_size(options) == size
|
||||
|
||||
|
||||
def test_render_image(image: Image, console: Console) -> None:
|
||||
console.print(image)
|
||||
|
||||
|
||||
def test_render_image_from_file(console: Console) -> None:
|
||||
image = Image.from_file(DEMO_DIR / "img.jpg")
|
||||
|
||||
console.print(image)
|
@ -0,0 +1,27 @@
|
||||
import pytest
|
||||
|
||||
from spiel.rps import RPSCounter
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def counter() -> RPSCounter:
|
||||
return RPSCounter()
|
||||
|
||||
|
||||
def test_internals(counter: RPSCounter) -> None:
|
||||
# 3 renders in 4 seconds
|
||||
counter.render_time_history.extend([1, 2, 5])
|
||||
|
||||
assert counter.renders_per_second() == 3 / 4
|
||||
|
||||
|
||||
def test_not_enough_samples(counter: RPSCounter) -> None:
|
||||
counter.render_time_history.extend([1])
|
||||
|
||||
# 1 sample isn't enough
|
||||
|
||||
assert counter.renders_per_second() == 0
|
||||
|
||||
|
||||
def test_custom_length() -> None:
|
||||
assert RPSCounter(render_history_length=5).render_time_history.maxlen == 5
|
Loading…
Reference in New Issue