/
GlebBavykin
/
python_sketches
Обзор
Документация
Войти
/
GlebBavykin
/
python_sketches
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
tests/design_patterns/behavioral/test_state_pattern.py
43 строки
1 KB
Gleb Bavykin
renaming
11 июл 2026, 19:01
11 июл 2026, 19:01
4a59f68
Код
Авторство
О чём код?
import pytest from design_patterns.behavioral.state import ( Document, DraftState, ModerationState, PublishedState, ) @pytest.fixture(scope="function") def document() -> Document: """ Document instance """ return Document(name="Driving License") def test_strategy_pattern_1(document: Document): """ Test state pattern: go to DraftState """ assert isinstance(document.state, DraftState) assert "Document Driving License is drafting" in str(document.state) def test_strategy_pattern_2(document: Document): """ Test state pattern: go to ModerationState """ document.publish() assert isinstance(document.state, ModerationState) assert "Document Driving License is moderating" in str(document.state) def test_strategy_pattern_3(document: Document): """ Test state pattern: go to PublishedState """ document.publish() document.publish() assert isinstance(document.state, PublishedState) assert "Document Driving License is published" in str(document.state)