63 lines
1.7 KiB
Python
63 lines
1.7 KiB
Python
#!/usr/bin/python
|
|
# Copyright 2016 The Chromium OS Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
import unittest
|
|
|
|
import common
|
|
from autotest_lib.server import afe_utils
|
|
from autotest_lib.server import site_utils
|
|
|
|
|
|
class MockHost(object):
|
|
"""
|
|
Object to represent host used to test afe_util.py methods.
|
|
"""
|
|
|
|
def __init__(self, labels=[]):
|
|
"""
|
|
Setup the self._afe_host attribute since that's what we're mostly using.
|
|
"""
|
|
self._afe_host = site_utils.EmptyAFEHost()
|
|
self._afe_host.labels = labels
|
|
|
|
|
|
class AfeUtilsUnittest(unittest.TestCase):
|
|
"""
|
|
Test functions in afe_utils.py.
|
|
"""
|
|
|
|
def testGetLabels(self):
|
|
"""
|
|
Test method get_labels returns expected labels.
|
|
"""
|
|
prefix = 'prefix'
|
|
expected_labels = [prefix + ':' + str(i) for i in range(5)]
|
|
all_labels = []
|
|
all_labels += expected_labels
|
|
all_labels += [str(i) for i in range(6, 9)]
|
|
host = MockHost(labels=all_labels)
|
|
got_labels = afe_utils.get_labels(host, prefix)
|
|
|
|
self.assertItemsEqual(got_labels, expected_labels)
|
|
|
|
|
|
def testGetLabelsAll(self):
|
|
"""
|
|
Test method get_labels returns all labels.
|
|
"""
|
|
prefix = 'prefix'
|
|
prefix_labels = [prefix + ':' + str(i) for i in range(5)]
|
|
all_labels = []
|
|
all_labels += prefix_labels
|
|
all_labels += [str(i) for i in range(6, 9)]
|
|
host = MockHost(labels=all_labels)
|
|
got_labels = afe_utils.get_labels(host)
|
|
|
|
self.assertItemsEqual(got_labels, all_labels)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|
|
|