Esempio n. 1
0
def valid_daily_scheduler(config, config_context):
    """Daily scheduler, accepts a time of day and an optional list of days."""
    schedule_config = config.value
    time_string, days = pad_sequence(schedule_config.split(), 2)
    time_string = time_string or '00:00:00'
    time_spec = config_utils.valid_time(time_string, config_context)
    days = config_utils.valid_string(days or "", config_context)

    def valid_day(day):
        if day not in CONVERT_DAYS_INT:
            raise ConfigError(
                "Unknown day %s at %s" % (
                    day,
                    config_context.path,
                )
            )
        return CONVERT_DAYS_INT[day]

    original = "%s %s" % (time_string, days)
    weekdays = {valid_day(day) for day in days or ()}
    return ConfigDailyScheduler(
        original,
        time_spec.hour,
        time_spec.minute,
        time_spec.second,
        weekdays,
        jitter=config.jitter,
    )
Esempio n. 2
0
def valid_daily_scheduler(config, config_context):
    """Daily scheduler, accepts a time of day and an optional list of days."""
    schedule_config = config.value
    time_string, days = pad_sequence(schedule_config.split(), 2)
    time_string = time_string or '00:00:00'
    time_spec = config_utils.valid_time(time_string, config_context)
    days = config_utils.valid_string(days or "", config_context)

    def valid_day(day):
        if day not in CONVERT_DAYS_INT:
            raise ConfigError("Unknown day %s at %s" % (
                day,
                config_context.path,
            ))
        return CONVERT_DAYS_INT[day]

    original = "%s %s" % (time_string, days)
    weekdays = {valid_day(day) for day in days or ()}
    return ConfigDailyScheduler(
        original,
        time_spec.hour,
        time_spec.minute,
        time_spec.second,
        weekdays,
        jitter=config.jitter,
    )
Esempio n. 3
0
def valid_daily_scheduler(time_string, days, config_context):
    """Daily scheduler, accepts a time of day and an optional list of days."""
    time_string = time_string or '00:00:00'
    time_spec   = config_utils.valid_time(time_string, config_context)
    days        = config_utils.valid_string(days or "", config_context)

    def valid_day(day):
        if day not in CONVERT_DAYS_INT:
            raise ConfigError("Unknown day %s at %s" % (day, config_context.path))
        return CONVERT_DAYS_INT[day]

    original = "%s %s" % (time_string, days)
    weekdays = set(valid_day(day) for day in days or ())
    return ConfigDailyScheduler(original,
        time_spec.hour, time_spec.minute, time_spec.second, weekdays)
Esempio n. 4
0
 def test_valid_time(self):
     time_spec = config_utils.valid_time("14:32", self.context)
     assert_equal(time_spec.hour, 14)
     assert_equal(time_spec.minute, 32)
     assert_equal(time_spec.second, 0)
Esempio n. 5
0
 def test_valid_time(self):
     time_spec = config_utils.valid_time("14:32", self.context)
     assert_equal(time_spec.hour, 14)
     assert_equal(time_spec.minute, 32)
     assert_equal(time_spec.second, 0)