| OLD | NEW |
| 1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 | 5 |
| 6 # DESCRIPTION : | 6 # DESCRIPTION : |
| 7 # | 7 # |
| 8 # This is a factory test to test the external display (hdmi/vga/other) | 8 # This is a factory test to test the external display (hdmi/vga/other) |
| 9 # UI based heavily on factory_Display/factory_Audio | 9 # UI based heavily on factory_Display/factory_Audio |
| 10 | 10 |
| (...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 102 self._status_map[subtest_name] = ful.FAILED | 102 self._status_map[subtest_name] = ful.FAILED |
| 103 self.finish_subtest() | 103 self.finish_subtest() |
| 104 self.goto_next_subtest() | 104 self.goto_next_subtest() |
| 105 elif event.keyval == gtk.keysyms.Return and \ | 105 elif event.keyval == gtk.keysyms.Return and \ |
| 106 self._status_map[subtest_name] is ful.ACTIVE: | 106 self._status_map[subtest_name] is ful.ACTIVE: |
| 107 self._status_map[subtest_name] = ful.PASSED | 107 self._status_map[subtest_name] = ful.PASSED |
| 108 self.finish_subtest() | 108 self.finish_subtest() |
| 109 self.goto_next_subtest() | 109 self.goto_next_subtest() |
| 110 elif event.keyval == ord('Q'): | 110 elif event.keyval == ord('Q'): |
| 111 gtk.main_quit() | 111 gtk.main_quit() |
| 112 else: | |
| 113 self._ft_state.exit_on_trigger(event) | |
| 114 | 112 |
| 115 # evaluating a new subtest now | 113 # evaluating a new subtest now |
| 116 if subtest_name is not self._current_subtest[0]: | 114 if subtest_name is not self._current_subtest[0]: |
| 117 subtest_name, subtest_cfg = self._current_subtest | 115 subtest_name, subtest_cfg = self._current_subtest |
| 118 self.start_subtest() | 116 self.start_subtest() |
| 119 self._prompt_label.set_text(subtest_cfg['msg']) | 117 self._prompt_label.set_text(subtest_cfg['msg']) |
| 120 | 118 |
| 121 self._test_widget.queue_draw() | 119 self._test_widget.queue_draw() |
| 122 return True | 120 return True |
| 123 | 121 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 154 raise error.TestFail('ERROR: Must provide an audio sample') | 152 raise error.TestFail('ERROR: Must provide an audio sample') |
| 155 if not os.path.isabs(sample): | 153 if not os.path.isabs(sample): |
| 156 # assume its in deps | 154 # assume its in deps |
| 157 sample = self.autodir + '/' + sample | 155 sample = self.autodir + '/' + sample |
| 158 if not os.path.exists(sample): | 156 if not os.path.exists(sample): |
| 159 raise error.TestFail('ERROR: Unable to find audio sample %s' \ | 157 raise error.TestFail('ERROR: Unable to find audio sample %s' \ |
| 160 % sample) | 158 % sample) |
| 161 self._sample=sample | 159 self._sample=sample |
| 162 | 160 |
| 163 def run_once(self, | 161 def run_once(self, |
| 164 test_widget_size=None, | |
| 165 trigger_set=None, | |
| 166 has_audio=False, | 162 has_audio=False, |
| 167 sample=None, | 163 sample=None): |
| 168 ): | |
| 169 | 164 |
| 170 factory.log('%s run_once' % self.__class__) | 165 factory.log('%s run_once' % self.__class__) |
| 171 # because audio files relative to that | 166 |
| 167 # Src contains the audio files. |
| 172 os.chdir(self.autodir) | 168 os.chdir(self.autodir) |
| 173 | 169 |
| 174 self._ft_state = ful.State(trigger_set=trigger_set) | |
| 175 self._test_widget_size = test_widget_size | |
| 176 self._started = False | 170 self._started = False |
| 177 | 171 |
| 178 if has_audio: | 172 if has_audio: |
| 179 self.locate_asample(sample) | 173 self.locate_asample(sample) |
| 180 _SUBTEST_LIST.append(_OPTIONAL) | 174 _SUBTEST_LIST.append(_OPTIONAL) |
| 181 | 175 |
| 182 self._subtest_queue = [x for x in reversed(_SUBTEST_LIST)] | 176 self._subtest_queue = [x for x in reversed(_SUBTEST_LIST)] |
| 183 self._status_map = dict((n, ful.UNTESTED) for n, c in _SUBTEST_LIST) | 177 self._status_map = dict((n, ful.UNTESTED) for n, c in _SUBTEST_LIST) |
| 184 | 178 |
| 185 | 179 |
| 186 prompt_label = ful.make_label(_LABEL_START_STR, fg=ful.WHITE) | 180 prompt_label = ful.make_label(_LABEL_START_STR, fg=ful.WHITE) |
| 187 self._prompt_label = prompt_label | 181 self._prompt_label = prompt_label |
| 188 | 182 |
| 189 vbox = gtk.VBox() | 183 vbox = gtk.VBox() |
| 190 vbox.pack_start(prompt_label, False, False) | 184 vbox.pack_start(prompt_label, False, False) |
| 191 | 185 |
| 192 for name, cfg in _SUBTEST_LIST: | 186 for name, cfg in _SUBTEST_LIST: |
| 193 label_box = self.make_subtest_label_box(name) | 187 label_box = self.make_subtest_label_box(name) |
| 194 vbox.pack_start(label_box, False, False) | 188 vbox.pack_start(label_box, False, False) |
| 195 | 189 |
| 196 self._test_widget = vbox | 190 self._test_widget = vbox |
| 197 | 191 |
| 198 self.goto_next_subtest() | 192 self.goto_next_subtest() |
| 199 self.start_subtest() | 193 self.start_subtest() |
| 200 | 194 |
| 201 self._ft_state.run_test_widget( | 195 ful.run_test_widget(self.job, vbox, |
| 202 test_widget=vbox, | |
| 203 test_widget_size=test_widget_size, | |
| 204 window_registration_callback=self.register_callbacks) | 196 window_registration_callback=self.register_callbacks) |
| 205 | 197 |
| 206 failed_set = set(name for name, status in self._status_map.items() | 198 failed_set = set(name for name, status in self._status_map.items() |
| 207 if status is not ful.PASSED) | 199 if status is not ful.PASSED) |
| 208 if failed_set: | 200 if failed_set: |
| 209 raise error.TestFail('some subtests failed (%s)' % | 201 raise error.TestFail('some subtests failed (%s)' % |
| 210 ', '.join(failed_set)) | 202 ', '.join(failed_set)) |
| 211 | 203 |
| 212 factory.log('%s run_once finished' % self.__class__) | 204 factory.log('%s run_once finished' % self.__class__) |
| OLD | NEW |