| #!/usr/bin/python |
| # |
| # Copyright 2008 Google Inc. All Rights Reserved. |
| |
| """Tests for test.""" |
| |
| import unittest, sys, os |
| |
| import common |
| from autotest_lib.cli import cli_mock, topic_common, test |
| from autotest_lib.client.common_lib import control_data |
| |
| CLIENT = control_data.CONTROL_TYPE_NAMES.CLIENT |
| SERVER = control_data.CONTROL_TYPE_NAMES.SERVER |
| |
| class test_list_unittest(cli_mock.cli_unittest): |
| values = [{u'description': u'unknown', |
| u'test_type': CLIENT, |
| u'test_class': u'Canned Test Sets', |
| u'path': u'client/tests/test0/control', |
| u'synch_type': u'Asynchronous', |
| u'id': 138, |
| u'name': u'test0', |
| u'experimental': False}, |
| {u'description': u'unknown', |
| u'test_type': SERVER, |
| u'test_class': u'Kernel', |
| u'path': u'server/tests/test1/control', |
| u'synch_type': u'Asynchronous', |
| u'id': 139, |
| u'name': u'test1', |
| u'experimental': False}, |
| {u'description': u'unknown', |
| u'test_type': CLIENT, |
| u'test_class': u'Canned Test Sets', |
| u'path': u'client/tests/test2/control.readprofile', |
| u'synch_type': u'Asynchronous', |
| u'id': 140, |
| u'name': u'test2', |
| u'experimental': False}, |
| {u'description': u'unknown', |
| u'test_type': SERVER, |
| u'test_class': u'Canned Test Sets', |
| u'path': u'server/tests/test3/control', |
| u'synch_type': u'Asynchronous', |
| u'id': 142, |
| u'name': u'test3', |
| u'experimental': False}, |
| {u'description': u'Random stuff to check that things are ok', |
| u'test_type': CLIENT, |
| u'test_class': u'Hardware', |
| u'path': u'client/tests/test4/control.export', |
| u'synch_type': u'Asynchronous', |
| u'id': 143, |
| u'name': u'test4', |
| u'experimental': True}] |
| |
| |
| def test_test_list_tests_default(self): |
| self.run_cmd(argv=['atest', 'test', 'list'], |
| rpcs=[('get_tests', {'experimental': False}, |
| True, self.values)], |
| out_words_ok=['test0', 'test1', 'test2', |
| 'test3', 'test4'], |
| out_words_no=['Random', 'control.export']) |
| |
| |
| def test_test_list_tests_all(self): |
| self.run_cmd(argv=['atest', 'test', 'list', '--all'], |
| rpcs=[('get_tests', {}, |
| True, self.values)], |
| out_words_ok=['test0', 'test1', 'test2', |
| 'test3', 'test4'], |
| out_words_no=['Random', 'control.export']) |
| |
| |
| def test_test_list_tests_exp(self): |
| self.run_cmd(argv=['atest', 'test', 'list', '--experimental'], |
| rpcs=[('get_tests', {'experimental': True}, |
| True, |
| [{u'description': u'Random stuff', |
| u'test_type': CLIENT, |
| u'test_class': u'Hardware', |
| u'path': u'client/tests/test4/control.export', |
| u'synch_type': u'Asynchronous', |
| u'id': 143, |
| u'name': u'test4', |
| u'experimental': True}])], |
| out_words_ok=['test4'], |
| out_words_no=['Random', 'control.export']) |
| |
| |
| def test_test_list_tests_select_one(self): |
| filtered = [val for val in self.values if val['name'] in ['test3']] |
| self.run_cmd(argv=['atest', 'test', 'list', 'test3'], |
| rpcs=[('get_tests', {'name__in': ['test3'], |
| 'experimental': False}, |
| True, filtered)], |
| out_words_ok=['test3'], |
| out_words_no=['test0', 'test1', 'test2', 'test4', |
| 'unknown']) |
| |
| |
| def test_test_list_tests_select_two(self): |
| filtered = [val for val in self.values |
| if val['name'] in ['test3', 'test1']] |
| self.run_cmd(argv=['atest', 'test', 'list', 'test3,test1'], |
| rpcs=[('get_tests', {'name__in': ['test1', 'test3'], |
| 'experimental': False}, |
| True, filtered)], |
| out_words_ok=['test3', 'test1', SERVER], |
| out_words_no=['test0', 'test2', 'test4', |
| 'unknown', CLIENT]) |
| |
| |
| def test_test_list_tests_select_two_space(self): |
| filtered = [val for val in self.values |
| if val['name'] in ['test3', 'test1']] |
| self.run_cmd(argv=['atest', 'test', 'list', 'test3', 'test1'], |
| rpcs=[('get_tests', {'name__in': ['test1', 'test3'], |
| 'experimental': False}, |
| True, filtered)], |
| out_words_ok=['test3', 'test1', SERVER], |
| out_words_no=['test0', 'test2', 'test4', |
| 'unknown', CLIENT]) |
| |
| |
| def test_test_list_tests_all_verbose(self): |
| self.run_cmd(argv=['atest', 'test', 'list', '-v'], |
| rpcs=[('get_tests', {'experimental': False}, |
| True, self.values)], |
| out_words_ok=['test0', 'test1', 'test2', |
| 'test3', 'test4', 'client/tests', |
| 'server/tests'], |
| out_words_no=['Random']) |
| |
| |
| def test_test_list_tests_all_desc(self): |
| self.run_cmd(argv=['atest', 'test', 'list', '-d'], |
| rpcs=[('get_tests', {'experimental': False}, |
| True, self.values)], |
| out_words_ok=['test0', 'test1', 'test2', |
| 'test3', 'test4', 'unknown', 'Random'], |
| out_words_no=['client/tests', 'server/tests']) |
| |
| |
| def test_test_list_tests_all_desc_verbose(self): |
| self.run_cmd(argv=['atest', 'test', 'list', '-d', '-v'], |
| rpcs=[('get_tests', {'experimental': False}, |
| True, self.values)], |
| out_words_ok=['test0', 'test1', 'test2', |
| 'test3', 'test4', 'client/tests', |
| 'server/tests', 'unknown', 'Random' ]) |
| |
| |
| if __name__ == '__main__': |
| unittest.main() |