You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.6 KiB
Python
53 lines
1.6 KiB
Python
10 years ago
|
# Copyright 2015 The Chromium Authors. All rights reserved.
|
||
|
# Use of this source code is governed by a BSD-style license that can be
|
||
|
# found in the LICENSE file.
|
||
|
|
||
|
"""Unit tests for tools/validate_config.py."""
|
||
|
|
||
|
import mock
|
||
|
import os
|
||
|
import unittest
|
||
|
|
||
|
from cq_client import cq_pb2
|
||
|
from cq_client import validate_config
|
||
|
|
||
|
|
||
|
TEST_DIR = os.path.dirname(os.path.abspath(__file__))
|
||
|
|
||
|
|
||
|
class TestValidateConfig(unittest.TestCase):
|
||
|
def test_is_valid(self):
|
||
|
with open(os.path.join(TEST_DIR, 'cq_example.cfg'), 'r') as test_config:
|
||
|
self.assertTrue(validate_config.IsValid(test_config.read()))
|
||
|
|
||
|
def test_has_field(self):
|
||
|
config = cq_pb2.Config()
|
||
|
|
||
|
self.assertFalse(validate_config._HasField(config, 'version'))
|
||
|
config.version = 1
|
||
|
self.assertTrue(validate_config._HasField(config, 'version'))
|
||
|
|
||
|
self.assertFalse(validate_config._HasField(
|
||
|
config, 'rietveld.project_bases'))
|
||
|
config.rietveld.project_bases.append('foo://bar')
|
||
|
self.assertTrue(validate_config._HasField(
|
||
|
config, 'rietveld.project_bases'))
|
||
|
|
||
|
self.assertFalse(validate_config._HasField(
|
||
|
config, 'verifiers.try_job.buckets'))
|
||
|
self.assertFalse(validate_config._HasField(
|
||
|
config, 'verifiers.try_job.buckets.name'))
|
||
|
|
||
|
bucket = config.verifiers.try_job.buckets.add()
|
||
|
bucket.name = 'tryserver.chromium.linux'
|
||
|
|
||
|
|
||
|
self.assertTrue(validate_config._HasField(
|
||
|
config, 'verifiers.try_job.buckets'))
|
||
|
self.assertTrue(validate_config._HasField(
|
||
|
config, 'verifiers.try_job.buckets.name'))
|
||
|
|
||
|
config.verifiers.try_job.buckets.add()
|
||
|
self.assertFalse(validate_config._HasField(
|
||
|
config, 'verifiers.try_job.buckets.name'))
|