94 lines
3.6 KiB
Python
94 lines
3.6 KiB
Python
from datetime import timedelta
|
|
from datetime import datetime
|
|
|
|
import pytest
|
|
|
|
from setup import get_brownout_schedule
|
|
from setup import maybe_raise_error
|
|
|
|
|
|
def test_brownout():
|
|
brownout_schedule = get_brownout_schedule()
|
|
|
|
brownout_iter = iter(brownout_schedule)
|
|
|
|
start_datetime = next(brownout_iter).start_datetime
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=4))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=5))
|
|
|
|
start_datetime = next(brownout_iter).start_datetime
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=9))
|
|
|
|
maybe_raise_error(start_datetime + timedelta(minutes=10))
|
|
|
|
start_datetime = next(brownout_iter).start_datetime
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=14))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=15))
|
|
|
|
start_datetime = next(brownout_iter).start_datetime
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=9))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=10))
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=30))
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=39))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=40))
|
|
|
|
start_datetime = next(brownout_iter).start_datetime
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=14))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=15))
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=30))
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=44))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=45))
|
|
|
|
start_datetime = next(brownout_iter).start_datetime
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=19))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=20))
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=30))
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=49))
|
|
maybe_raise_error(start_datetime + timedelta(minutes=50))
|
|
|
|
start_datetime = next(brownout_iter).start_datetime
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(start_datetime + timedelta(minutes=59))
|
|
|
|
checked_datetime = datetime(2030, 1, 1)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(checked_datetime)
|
|
|
|
|
|
def test_allow_sklearn_package_install_environment_variable(monkeypatch):
|
|
with monkeypatch.context() as context:
|
|
context.setenv("SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL", "True")
|
|
checked_datetime = datetime(2030, 1, 1)
|
|
maybe_raise_error(checked_datetime)
|
|
|
|
context.setenv("SKLEARN_ALLOW_DEPRECATED_SKLEARN_PACKAGE_INSTALL", "False")
|
|
checked_datetime = datetime(2020, 1, 1)
|
|
with pytest.raises(SystemExit):
|
|
maybe_raise_error(checked_datetime)
|