diff --git a/tests/unit_tests/categories/test_session.py b/tests/unit_tests/categories/test_session.py index 06b1a083..fc5fed08 100644 --- a/tests/unit_tests/categories/test_session.py +++ b/tests/unit_tests/categories/test_session.py @@ -1,4 +1,4 @@ -from app.categories.constants import Category, HOUSING +from app.categories.constants import Category, HOUSING, EDUCATION from app.categories.models import CategoryAnswer @@ -99,3 +99,28 @@ def test_set_category_dataclass(app, client): session["category"] = {"code": EDUCATION.code} assert session.category == EDUCATION assert isinstance(session.category, Category) + + +def test_in_scope(client): + in_scope_answer = CategoryAnswer( + question="What is your favourite mode of transport?", + answer_value="bus", + answer_label="Bus", + next_page="categories.index", + question_page="categories.housing.homelessness", + category=HOUSING.sub.homelessness, + ) + out_scope_answer = CategoryAnswer( + question="What is your favourite mode of transport?", + answer_value="car", + answer_label="Car", + next_page="categories.index", + question_page="categories.housing.homelessness", + category=EDUCATION.sub.child_young_person, + ) + with client.session_transaction() as session: + assert session.in_scope is False + session.set_category_question_answer(in_scope_answer) + assert session.in_scope is True + session.set_category_question_answer(out_scope_answer) + assert session.in_scope is False