コード例 #1
0
    def test_bad_message_text_characters(self):
        rule_set = validation.RuleSet()
        self.mock(validation, 'DEFAULT_RULE_SET', rule_set)

        @validation.rule('projects/foo', 'bar.cfg', rule_set=rule_set)
        def validate(cfg, ctx):  # pylint: disable=unused-argument, unused-variable
            ctx.error('a\x80b')

        self.mock(auth, 'is_admin', lambda: True)

        req = {
            'config_set': 'projects/foo',
            'path': 'bar.cfg',
            'content': '',
        }
        resp = self.call_api('validate', req).json_body
        self.assertEqual(
            resp, {
                'messages': [
                    {
                        'path': 'bar.cfg',
                        'severity': 'ERROR',
                        'text': u'a\ufffdb'
                    },
                ],
            })
コード例 #2
0
    def test_metadata(self):
        rule_set = validation.RuleSet()
        self.mock(validation, 'DEFAULT_RULE_SET', rule_set)
        validation.rule('projects/foo', 'bar.cfg', rule_set=rule_set)
        validation.rule('services/foo', 'foo.cfg', rule_set=rule_set)

        self.mock(auth, 'is_admin', lambda: True)
        resp = self.call_api('get_metadata', {}).json_body
        self.assertEqual(
            resp, {
                'version': '1.0',
                'validation': {
                    'url':
                    'https://localhost:80/_ah/api/config/v1/validate',
                    'patterns': [
                        {
                            'config_set': 'projects/foo',
                            'path': 'bar.cfg'
                        },
                        {
                            'config_set': 'services/foo',
                            'path': 'foo.cfg'
                        },
                    ],
                },
            })
コード例 #3
0
ファイル: validation_test.py プロジェクト: stefb965/luci-py
 def setUp(self):
     super(ValidationTestCase, self).setUp()
     self.rule_set = validation.RuleSet()