def METHOD_NAME(self):
    df = pd.DataFrame(
        data=[
            [1, 40, 1, 0, 20, 0, 1, 0],
            [2, 41, 0, 5, 20, 0, 0, 0],
            [3, 42, 10, 10, 20, 0, 0, 1],
            [4, 281, 0, 1, 0, 1, 1, 4],
            [5, 282, 15, 10, 0, 1, 2, 4],
            [1, 283, 2, 20, 0, 1, 0, 0],
        ],
        columns=[
            "taskId",
            "total_count",
            "1_count",
            "2_count",
            "3_count",
            "4_count",  # Child of 1
            "5_count",  # Child of 1
            "6_count",  # Child of 2
        ],
    )
    updated_df = calc_parent_option_count(
        df,
        {
            1: {4, 5},
            2: {6},
            3: set(),
        },
    )
    # Columns without child shouldn't change
    for column in [
        "taskId",
        "total_count",
        "3_count",
        "4_count",
        "5_count",
        "6_count",
    ]:
        assert df[column].compare(updated_df[column]).size == 0
    # Columns with child should change
    for column, updated_index, updated_value in [
        ("1_count", [0, 3, 4, 5], [2, 2, 18, 3]),
        ("2_count", [2, 3, 4], [11, 5, 14]),
    ]:
        compared = df[column].compare(updated_df[column])
        assert list(compared['other'].index) == updated_index
        assert list(compared['other']) == updated_value