Beispiel #1
0
def test_next_time_of_day(estimator, data_cache):
    time: FakeTime = FakeTime()
    now: datetime = datetime(1985, 12, 6, 1, 0, 0).astimezone(timezone.utc)
    time.setNow(now)
    info = GlobalInfo(time)
    config: Config = createConfig().override(Setting.DAYS_BETWEEN_BACKUPS,
                                             1).override(
                                                 Setting.BACKUP_TIME_OF_DAY,
                                                 '08:00')
    model: Model = Model(config, time, default_source, default_source, info,
                         estimator, data_cache)

    assert model._nextBackup(now=now,
                             last_backup=None) == now - timedelta(minutes=1)
    assert model._nextBackup(now=now, last_backup=now -
                             timedelta(days=1)) == datetime(1985,
                                                            12,
                                                            5,
                                                            8,
                                                            0,
                                                            tzinfo=test_tz)
    assert model._nextBackup(now=now,
                             last_backup=now) == datetime(1985,
                                                          12,
                                                          6,
                                                          8,
                                                          0,
                                                          tzinfo=test_tz)
    assert model._nextBackup(now=now,
                             last_backup=datetime(1985,
                                                  12,
                                                  6,
                                                  8,
                                                  0,
                                                  tzinfo=test_tz)) == datetime(
                                                      1985,
                                                      12,
                                                      7,
                                                      8,
                                                      0,
                                                      tzinfo=test_tz)
    assert model._nextBackup(now=datetime(1985, 12, 6, 8, 0, tzinfo=test_tz),
                             last_backup=datetime(1985,
                                                  12,
                                                  6,
                                                  8,
                                                  0,
                                                  tzinfo=test_tz)) == datetime(
                                                      1985,
                                                      12,
                                                      7,
                                                      8,
                                                      0,
                                                      tzinfo=test_tz)
Beispiel #2
0
def test_next_time(estimator, data_cache):
    time: FakeTime = FakeTime()
    now: datetime = datetime(1985, 12, 6, 1, 0, 0).astimezone(timezone.utc)
    time.setNow(now)
    info = GlobalInfo(time)
    config: Config = createConfig().override(Setting.DAYS_BETWEEN_SNAPSHOTS, 0)
    model: Model = Model(config, time, default_source, default_source, info,
                         estimator, data_cache)
    assert model._nextSnapshot(now=now, last_snapshot=None) is None
    assert model._nextSnapshot(now=now, last_snapshot=now) is None

    config: Config = createConfig().override(Setting.DAYS_BETWEEN_SNAPSHOTS, 1)
    model: Model = Model(config, time, default_source, default_source, info,
                         estimator, data_cache)
    assert model._nextSnapshot(
        now=now, last_snapshot=None) == now - timedelta(minutes=1)
    assert model._nextSnapshot(now=now,
                               last_snapshot=now) == now + timedelta(days=1)
    assert model._nextSnapshot(now=now,
                               last_snapshot=now - timedelta(days=1)) == now
    assert model._nextSnapshot(now=now, last_snapshot=now +
                               timedelta(days=1)) == now + timedelta(days=2)
Beispiel #3
0
def test_next_time_of_day_drift(estimator):
    time: FakeTime = FakeTime()
    info = GlobalInfo(time)
    now: datetime = datetime(1985, 12, 6, 1, 0, 0).astimezone(timezone.utc)

    config: Config = Config().override(Setting.DAYS_BETWEEN_SNAPSHOTS, 1).override(
        Setting.SNAPSHOT_TIME_OF_DAY, '08:00')
    model: Model = Model(config, time, default_source,
                         default_source, info, estimator)

    assert model._nextSnapshot(
        now=now, last_snapshot=None) == now - timedelta(minutes=1)
    assert model._nextSnapshot(
        now=now, last_snapshot=now - timedelta(days=1) + timedelta(minutes=1)) == now
Beispiel #4
0
def model(source, dest, time, simple_config, global_info, estimator,
          data_cache):
    return Model(simple_config, time, source, dest, global_info, estimator,
                 data_cache)
def test_timeOfDay(estimator) -> None:
    time: FakeTime = FakeTime()
    info = GlobalInfo(time)

    config: Config = Config()
    model: Model = Model(config, time, default_source, default_source, info,
                         estimator)
    assert model.getTimeOfDay() is None

    config = Config().override(Setting.SNAPSHOT_TIME_OF_DAY, '00:00')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() == (0, 0)

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '23:59')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() == (23, 59)

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '24:59')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '24:60')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '-1:60')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '24:-1')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, 'boop:60')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '24:boop')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '24:10:22')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None

    config.override(Setting.SNAPSHOT_TIME_OF_DAY, '10')
    model = Model(config, time, default_source, default_source, info,
                  estimator)
    assert model.getTimeOfDay() is None