Example #1
0
            nodes,
            command_context,
            namespace,
        )

        child = parent_context.build_child_context('child')
        assert_equal(child.path, '%s.child' % path)
        assert_equal(child.nodes, nodes)
        assert_equal(child.namespace, namespace)
        assert_equal(child.command_context, command_context)
        assert not child.partial


StubConfigObject = schema.config_object_factory(
    'StubConfigObject',
    ['req1', 'req2'],
    ['opt1', 'opt2'],
)


class StubValidator(config_utils.Validator):
    config_class = StubConfigObject


class ValidatorTestCase(TestCase):
    @setup
    def setup_validator(self):
        self.validator = StubValidator()

    def test_validate_with_none(self):
        expected_msg = "A StubObject is required"
Example #2
0
            nodes,
            command_context,
            namespace,
        )

        child = parent_context.build_child_context('child')
        assert_equal(child.path, '%s.child' % path)
        assert_equal(child.nodes, nodes)
        assert_equal(child.namespace, namespace)
        assert_equal(child.command_context, command_context)
        assert not child.partial


StubConfigObject = schema.config_object_factory(
    'StubConfigObject',
    ['req1', 'req2'],
    ['opt1', 'opt2'],
)


class StubValidator(config_utils.Validator):
    config_class = StubConfigObject


class TestValidator(TestCase):
    @setup
    def setup_validator(self):
        self.validator = StubValidator()

    def test_validate_with_none(self):
        expected_msg = "A StubObject is required"
Example #3
0
"""
Parse and validate scheduler configuration and return immutable structures.
"""
import calendar
import datetime
import re
from collections import namedtuple

from tron.config import config_utils
from tron.config import ConfigError
from tron.config import schema
from tron.utils import crontab

ConfigGenericSchedule = schema.config_object_factory(
    'ConfigGenericSchedule',
    ['type', 'value'],
    ['jitter'],
)

ConfigGrocScheduler = namedtuple(
    'ConfigGrocScheduler',
    'original ordinals weekdays monthdays months timestr jitter',
)

ConfigCronScheduler = namedtuple(
    'ConfigCronScheduler',
    'original minutes hours monthdays months weekdays ordinals jitter',
)

ConfigDailyScheduler = namedtuple(
    'ConfigDailyScheduler',
class ConfigContextTestCase(TestCase):
    def test_build_config_context(self):
        path, nodes, namespace = "path", set([1, 2, 3]), "namespace"
        command_context = mock.MagicMock()
        parent_context = config_utils.ConfigContext(path, nodes, command_context, namespace)

        child = parent_context.build_child_context("child")
        assert_equal(child.path, "%s.child" % path)
        assert_equal(child.nodes, nodes)
        assert_equal(child.namespace, namespace)
        assert_equal(child.command_context, command_context)
        assert not child.partial


StubConfigObject = schema.config_object_factory("StubConfigObject", ["req1", "req2"], ["opt1", "opt2"])


class StubValidator(config_utils.Validator):
    config_class = StubConfigObject


class ValidatorTestCase(TestCase):
    @setup
    def setup_validator(self):
        self.validator = StubValidator()

    def test_validate_with_none(self):
        expected_msg = "A StubObject is required"
        exception = assert_raises(ConfigError, self.validator.validate, None, config_utils.NullConfigContext)
        assert_in(expected_msg, str(exception))
Example #5
0
"""
Parse and validate scheduler configuration and return immutable structures.
"""
import calendar
from collections import namedtuple
import datetime
import re

from tron.config import ConfigError, config_utils, schema
from tron.utils import crontab


ConfigGenericSchedule = schema.config_object_factory(
    'ConfigGenericSchedule',
    ['type', 'value'],
    ['jitter']
)

ConfigGrocScheduler = namedtuple('ConfigGrocScheduler',
    'original ordinals weekdays monthdays months timestr jitter')

ConfigCronScheduler = namedtuple('ConfigCronScheduler',
    'original minutes hours monthdays months weekdays ordinals jitter')

ConfigDailyScheduler    = namedtuple('ConfigDailyScheduler',
    'original hour minute second days jitter')

ConfigConstantScheduler = namedtuple('ConfigConstantScheduler', [])

ConfigIntervalScheduler = namedtuple('ConfigIntervalScheduler',
    'timedelta jitter')