Exemple #1
0
    def __reboot_tv(self):
        try:
            tv_chassis, _ = get_chassis_info(self._tvip)
        except:
            raise

        self._testlog('TV chassis is recognized as ' + str(tv_chassis))

        try:
            reboot_result = tv_restart.tv_restart(self._tvip, tv_chassis)
        except:
            self._testlog('#WARN: Command to reboot TV returned error')
            reboot_result = None

        if reboot_result:
            self._testlog('Command to reboot TV sent successfully')
        else:
            self._testlog('#WARN: No successful response from TV')

        # make sure tv is off
        time.sleep(4)

        if ping.check_ip(self._tvip):
            raise RuntimeError('TV was not switched OFF')

        if not ping.check_ip(self._tvip, 120):
            raise RuntimeError('TV was not woke up')

        self._testlog('Wait 1 min to check TV is up and running')
        time.sleep(60)
Exemple #2
0
    def dcm_monitor(self):
        while self._timeout:
            if self._timeout % 60 == 0:
                self._testlog('\n#INFO: DCM monitor timeout: '+str(self._timeout))

            if ping.check_ip(self._tvip, 1):
                self._testlog('TV woke up')
                reason = self._get_last_wakeupreason()

                if not self._is_reason_got(reason):
                    continue

                if not self._alarm_reason(reason):
                    self._testlog("Wait while TV goes to standby...")
                    while ping.check_ip(self._tvip, 1):
                        time.sleep(0.5)
                        self._timeout -= 1
                    self._testlog('TV in standby state')
                    continue

                return

            self._timeout -= 1

        raise RuntimeError('Timeout was occurred. TV did not wake up')
Exemple #3
0
    def _execute_test(self):
        self.check_test_files()

        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        self.remove_camlog_file()

        self.start_serial_logging()

        self.start_playback()

        self.move_to_standby()

        try:
            self.dcm_monitor()
        except (RuntimeError, Exception) as e:
            self._testlog('{}'.format(e))
            self._testlog('\nTest will be terminated.')
            self._testlog('Test result: TEST_FAILED')
            return

        try:
            # Execute middle script
            self.start_test_script('WeBiz', self._confirm_wakeup_script, 30)
            # Execute main script
            self.start_test_script(self._interpreter, self._test_script, 600)
        except:
            raise
Exemple #4
0
    def _execute_test(self):
        self.check_test_files()

        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        self.start_serial_logging()

        self.start_playback()

        self.exec_webiz_auth_script()

        # Wait for WeBiz script prepared to work
        time.sleep(10)

        # Exec python script
        try:
            self.start_test_script(self._interpreter, self._test_script,
                                   self._timeout)
        except:
            raise

        # Wait for Webiz Script to stop
        try:
            self.wait_for_webiz_termination()
        except:
            self._testlog('\nTest result: TEST_FAILED')
Exemple #5
0
    def _execute_test(self):
        self.check_test_files()

        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        self.start_serial_logging()

        self.start_playback()

        try:
            self.run_emulator()
        except:
            raise

        # Send request for CAM emulator connect
        time.sleep(10)

        # Execute main test script
        try:
            self.start_test_script(
                self._interpreter, self._test_script, self._timeout
            )
        except:
            raise
    def _execute_test(self):
        self.check_test_files()

        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')
        self.start_serial_logging()
        self.start_precon_playback()

        # Execute precondition script
        # Deliberatly exit without rising, return by design
        try:
            self.start_test_script(self._precon_interpreter,
                                   self._precon_script, self._timeout)
        except:
            raise
        finally:
            self.stop_precon_playback()

        # Update precondition result print
        replaced = general.replace_in_log(
            self._testlog_fd, 'Test result: TEST_PASSED',
            'Precondition result: PRECONDITION_PASSED')
        if not replaced:
            self._testlog('\nPrecondition was not executed with PASS result.')
            self._testlog('Test will be terminated.')
            self._testlog('Test result: TEST_FAILED')
            return

        self.start_playback()
        try:
            # Execute main test script
            self.start_test_script(self._interpreter, self._test_script,
                                   self._timeout)
        except:
            raise
    def __exec_precondition_script(self):
        self.check_test_files()

        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable')

        self.start_serial_logging()
        self.start_precon_playback()
        try:
            self.start_test_script('WeBiz', self._precon_script, self._timeout)
            result, *_ = self.parse_log()
        except:
            raise
        finally:
            self.stop_precon_playback()

        if result == TEST_STATUS.passed:
            self._testlog('Scheduled scan is executed')
            self._testlog('Test result: TEST_PASSED')
            return True
        elif result == TEST_STATUS.blocked:
            raise RuntimeError('Can not go to night dcm script execution')
        else:
            self._testlog(
                'Scheduled scan was not executed. Transfer TV to standby')

            # Delete precondition failed result from log file
            general.replace_in_log(self._testlog_fd,
                                   'Test result: TEST_FAILED', '')

            self.__exec_night_dcm()
    def __exec_night_dcm(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable')

        self.move_to_standby()
        self.dcm_monitor()

        self.start_test_script('WeBiz', self._confirm_wakeup_script, 30)
        self.start_test_script('WeBiz', self._test_script, self._timeout)
Exemple #9
0
    def _is_reason_got(self, reason):
        if reason:
            self._testlog('Wake up reason: {}'.format(reason))
            return True

        if not ping.check_ip(self._tvip):
            return False

        raise RuntimeError('Woke up reason was not got')
Exemple #10
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable')

        self.start_serial_logging()

        self.start_playback()

        time.sleep(self._timeout)

        self._testlog('\nTest result: TEST_PASSED')
Exemple #11
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        try:
            self._ping_resource()
        except Exception as e:
            self._testlog('Ping failed. Reason: {}'.format(e))
            self._testlog('Test result: TEST_FAILED')
        else:
            self._testlog('\nAll services were pinged successfully.')
            self._testlog('Test result: TEST_PASSED')
Exemple #12
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        try:
            res = self._delete()
            self._testlog('Result of operation: {}'.format(res))
        except Exception as err:
            self._testlog('\nError: {}. Can not delete loreg keys'.format(err))
            self._testlog('\nTest result: TEST_FAILED')
        else:
            self._testlog('\nKeys were deleted')
            self._testlog('Test result: TEST_PASSED')
Exemple #13
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        if not self._serial_log_setting:
            raise RuntimeError('Test requires to set log settings')

        try:
            self.start_serial_logging()
        except:
            raise

        self._testlog('\nTest result: TEST_PASSED')
Exemple #14
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        try:
            self.get_service_list()
        except Exception as e:
            self._testlog('\nFailed to get service list from TV: {}'.format(e))
            self._testlog('Test result: TEST_FAILED')
            return
        else:
            self._testlog('\nService list available at: {}'.format(
                self._service_list_path))
            self._testlog('Test result: TEST_PASSED')
Exemple #15
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        self.start_serial_logging()

        self.start_playback()

        try:
            self.reboot_tv()
        except:
            status = 'TEST_FAILED'
        else:
            status = 'TEST_PASSED'
        finally:
            self._testlog('\nTest result: {}'.format(status))
Exemple #16
0
    def move_to_standby(self):
        self._replace_duration_timeout()

        self._testlog('\nSet alarm time and transfer TV to standby.')
        try:
            self.start_test_script('WeBiz', self.__standby_temp, 20)
        except:
            raise RuntimeError('Can not execute standby script')

        self._testlog('\nWait 60 sec to make sure TV is unreachable')
        time.sleep(60)

        if not ping.check_ip(self._tvip):
            self._testlog('#VERIFICATION PASSED: TV transferred to standby')
        else:
            raise RuntimeError(
                '#VERIFICATION FAILED: TV did not go to standby.')
Exemple #17
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        if not self._player_settings:
            raise RuntimeError("Can not start playback. "
                               "Player settings ini files was not found")

        self.start_serial_logging()

        try:
            self.start_playback()
        except Exception as e:
            self._testlog('\nAn a error occurred: {}.'.format(e))
            raise

        # wait untill cancel button will be pushed
        while True:
            pass
Exemple #18
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        try:
            self.clear_dump_files()
        except Exception as e:
            self._testlog(
                '\nError getdump files from TV. Reason: {}.'.format(e))
            self._testlog('Removal of dump files failed')
            self._testlog('Test result: TEST_FAILED')
            return

        try:
            self.clearing_crash_logs()
        except Exception as e:
            self._testlog('\nRemoval crash files failed. Reason: {}'.format(e))
            self._testlog('Test result: TEST_FAILED')
            return

        self._testlog('\nTest result: TEST_PASSED')
Exemple #19
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable.')

        try:
            self.get_crash_logs()
        except Exception as e:
            self._testlog('\nCrash Files was not retrieved from TV. ')
            self._testlog('Reason: {}'.format(e))
            self._testlog('\nTest result: TEST_FAILED')
            return

        try:
            self.get_dump_files()
        except Exception as e:
            self._testlog('\nDump Files was not retrieved from TV. ')
            self._testlog('Reason: {}\n'.format(e))
            self._testlog('\nTest result: TEST_FAILED')
            return

        self._testlog('\nTest result: TEST_PASSED')
Exemple #20
0
    def _execute_test(self):
        if not ping.check_ip(self._tvip):
            raise RuntimeError('Device under test is unreachable')

        self.get_screenshot()