Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
126 changes: 126 additions & 0 deletions tests/core/test_fasting_season_01_new.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
"""Test for fasting subpackage."""

import pytest

from ocma_data.core.fasting.logic import get_fasting
from ocma_data.utils.date_utils import string_to_date

test_cases = [
# Maximum range for each fasting season
# Format: ["Calendar", "Start Month-Day", "End Month-Day"]
# Fasting season 1: ["New Calendar", "1-24", "3-6"]
(
"2010-1-24",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2010-1-25",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Monday
(
"2010-1-26",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Tuesday
(
"2010-1-31",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2041-2-10",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2041-2-13",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Wednesday
(
"2041-2-14",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Thursday
(
"2041-2-17",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2078-2-27",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2078-3-4",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Friday
(
"2078-3-5",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Saturday
(
"2078-3-6",
"new",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
]


@pytest.mark.parametrize("current_date, calendar_style, expected", test_cases)
def test_get_fasting(current_date: str, calendar_style: str, expected: str) -> None:
"""Test for get_fasting."""
assert get_fasting(string_to_date(current_date), calendar_style) == expected
126 changes: 126 additions & 0 deletions tests/core/test_fasting_season_01_old.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
"""Test for fasting subpackage."""

import pytest

from ocma_data.core.fasting.logic import get_fasting
from ocma_data.utils.date_utils import string_to_date

test_cases = [
# Maximum range for each fasting season
# Format: ["Calendar", "Start Month-Day", "End Month-Day"]
# Fasting season 1: ["Old Calendar", "1-11", "2-21"]
(
"2010-1-11",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2010-1-12",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Monday
(
"2010-1-13",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Tuesday
(
"2010-1-18",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2041-1-28",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2041-1-31",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Wednesday
(
"2041-2-1",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Thursday
(
"2041-2-4",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2078-2-14",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
(
"2078-2-19",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Friday
(
"2078-2-20",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Saturday
(
"2078-2-21",
"old",
{
"fasting_season_index": "1",
"fasting_laymen_index": "1",
"fasting_monks_index": "2",
},
), # Sunday
]


@pytest.mark.parametrize("current_date, calendar_style, expected", test_cases)
def test_get_fasting(current_date: str, calendar_style: str, expected: str) -> None:
"""Test for get_fasting."""
assert get_fasting(string_to_date(current_date), calendar_style) == expected
117 changes: 117 additions & 0 deletions tests/core/test_fasting_season_02_new.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
"""Test for fasting subpackage."""

import pytest

from ocma_data.core.fasting.logic import get_fasting
from ocma_data.utils.date_utils import string_to_date

test_cases = [
# Maximum range for each fasting season
# Format: ["Calendar", "Start Month-Day", "End Month-Day"]
# Fasting season 2: ["New Calendar", "2-8", "3-20"]
(
"2010-2-8",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Monday
(
"2010-2-9",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Tuesday
(
"2010-2-14",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Sunday
(
"2041-2-25",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Monday
(
"2041-2-27",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Wednesday
(
"2041-2-28",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Thursday
(
"2041-3-3",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Sunday
(
"2078-3-14",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Monday
(
"2078-3-18",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Friday
(
"2078-3-19",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Saturday
(
"2078-3-20",
"new",
{
"fasting_season_index": "2",
"fasting_laymen_index": "2",
"fasting_monks_index": "2",
},
), # Sunday
]


@pytest.mark.parametrize("current_date, calendar_style, expected", test_cases)
def test_get_fasting(current_date: str, calendar_style: str, expected: str) -> None:
"""Test for get_fasting."""
assert get_fasting(string_to_date(current_date), calendar_style) == expected
Loading