Exemplo n.º 1
0
async def test_setters_and_getters_schedule(
        event_loop: AbstractEventLoop) -> None:
    """Test setters of SwitcherV2Schedule object."""
    schedule = SwitcherV2Schedule(
        event_loop, 0, [unhexlify(DUMMY_SELECTIVE_RECCURING_SCHEDULE_DATA)])

    await wait([schedule.init_future])

    assert schedule.enabled
    assert schedule.schedule_data == \
        DUMMY_SELECTIVE_RECCURING_SCHEDULE_DATA_BYTES

    with raises(TypeError) as exc_info_enable:
        schedule.enabled = "not_bool"  # type: ignore

    assert exc_info_enable.type is TypeError

    with raises(TypeError) as exc_info_data:
        schedule.schedule_data = 0  # type: ignore

    assert exc_info_data.type is TypeError

    schedule.enabled = False
    assert not schedule.as_dict().get('_enabled')

    schedule.schedule_data = b'4855f34ca8c58d6f1453'
    assert schedule.as_dict().get('_schedule_data') == b'4855f34ca8c58d6f1453'
Exemplo n.º 2
0
async def test_full_recurring_schedule(event_loop: AbstractEventLoop) -> None:
    """Test full recurring SwitcherV2Schedule object."""
    schedule = SwitcherV2Schedule(
        event_loop, 0, [unhexlify(DUMMY_FULL_RECCURING_SCHEDULE_DATA)])

    await wait([schedule.init_future])

    assert schedule.schedule_id == DUMMY_FULL_RECCURING_SCHEDULE_ID
    assert schedule.enabled
    assert schedule.recurring

    await assert_lists_equal(schedule.days, DUMMY_FULL_RECCURING_DAYS_LIST)

    assert schedule.start_time == DUMMY_FULL_RECCURING_START_TIME
    assert schedule.end_time == DUMMY_FULL_RECCURING_END_TIME
    assert schedule.duration == DUMMY_FULL_RECCURING_DURATION
    assert schedule.schedule_data == DUMMY_FULL_RECCURING_SCHEDULE_DATA_BYTES
Exemplo n.º 3
0
async def test_non_recurring_schedule(event_loop: AbstractEventLoop) -> None:
    """Test non-recurring SwitcherV2Schedule object."""
    schedule = SwitcherV2Schedule(
        event_loop, 0, [unhexlify(DUMMY_NON_RECCURING_SCHEDULE_DATA)])

    await wait([schedule.init_future])

    assert schedule.schedule_id == DUMMY_NON_RECCURING_SCHEDULE_ID
    assert schedule.enabled  # TODO this should return False, fix dummy packet!
    assert schedule.recurring

    await assert_lists_equal(schedule.days, DUMMY_NON_RECCURING_DAYS_LIST)

    assert schedule.start_time == DUMMY_NON_RECCURING_START_TIME
    assert schedule.end_time == DUMMY_NON_RECCURING_END_TIME
    assert schedule.duration == DUMMY_NON_RECCURING_DURATION
    assert schedule.schedule_data == DUMMY_NON_RECCURING_SCHEDULE_DATA_BYTES
Exemplo n.º 4
0
async def test_selective_recurring_schedule(
    event_loop: AbstractEventLoop, ) -> None:
    """Test selective recurring SwitcherV2Schedule object."""
    schedule = SwitcherV2Schedule(
        event_loop, 0, [unhexlify(DUMMY_SELECTIVE_RECCURING_SCHEDULE_DATA)])

    await wait([schedule.init_future])

    assert schedule.schedule_id == DUMMY_SELECTIVE_RECCURING_SCHEDULE_ID
    assert schedule.enabled
    assert schedule.recurring

    await assert_lists_equal(schedule.days,
                             DUMMY_SELECTIVE_RECCURING_DAYS_LIST)

    if strftime("%Z", gmtime()) == "Jerusalem Standard Time":
        assert schedule.start_time == DUMMY_SELECTIVE_RECCURING_START_TIME
        assert schedule.end_time == DUMMY_SELECTIVE_RECCURING_END_TIME
    assert schedule.duration == DUMMY_SELECTIVE_RECCURING_DURATION
    assert (schedule.schedule_data ==
            DUMMY_SELECTIVE_RECCURING_SCHEDULE_DATA_BYTES)