def test_call_wait_using_code_43(self): """ ST_TELEPHONY_SS_CW_001 """ LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Launch Dialer.') Dialer.launch() self.assertTrue(Dialer.dialer_launched(), 'Dialer failed to launch.') LOG.info('Activate call waiting using code (%s).' % self.activate_call_waiting_nr) self.assertTrue( Dialer.dial_number(self.activate_call_waiting_nr), 'Failed to activate call waiting using code (%s).' % self.activate_call_waiting_nr) LOG.info('Check that USSD popup is open.') self.assertTrue(Dialer.is_ussd_open(), 'USSD popup not open.') self.is_ussd_open = True LOG.info('Get USSD message.') msg = Dialer.get_ussd_message() LOG.info('Found msg: %s' % msg) LOG.info('Close USSD popup.') self.assertTrue(Dialer.close_ussd(), 'Failed to close ussd popup.') self.is_ussd_open = False service_enabled_msg = 'Call waiting\nService was enabled.' LOG.info( 'Check that USSD msg indicate that service has been activated.') self.assertEqual( msg, service_enabled_msg, 'Found "%s" instead of "%s"' % (msg, service_enabled_msg)) LOG.info('Interrogate call waiting using code (%s).' % self.interrogate_call_waiting_nr) self.assertTrue( Dialer.dial_number(self.interrogate_call_waiting_nr), 'Failed to interrogate call waiting using code (%s).' % self.interrogate_call_waiting_nr) LOG.info('Check that USSD popup is open.') self.assertTrue(Dialer.is_ussd_open(), 'USSD popup not open.') self.is_ussd_open = True LOG.info('Get USSD message.') msg = Dialer.get_ussd_message() LOG.info('Found msg: %s' % msg) LOG.info('Close USSD popup.') self.assertTrue(Dialer.close_ussd(), 'Failed to close ussd popup.') self.is_ussd_open = False service_interrogate_msg = 'Call waiting\nService was enabled for:\nVoice\nSync' LOG.info( 'Check that USSD msg indicate that service has been activated.') self.assertEqual( msg, service_interrogate_msg, 'Found "%s" instead of "%s"' % (msg, service_interrogate_msg)) LOG.info('Initiate a call from %s to %s.' % (self.phone1, self.phone2)) self.assertTrue(Dialer.dial_number(self.phone2_number)) LOG.info('Activate %s' % self.phone2) dut_manager.activate_phone(self.phone2) LOG.info('Answer incoming call.') Dialer.answer_call() # I wish I could do an assert here self.is_call_active2 = True LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Check if call is active with %s.' % self.phone2_number) self.assertTrue(Dialer.is_call_active(self.phone2_number), 'Call is inactive.') LOG.info('Activate %s' % self.phone3) dut_manager.activate_phone(self.phone3) LOG.info('Launch Dialer.') Dialer.launch() self.assertTrue(Dialer.dialer_launched(), 'Dialer failed to launch.') LOG.info('Initiate a call from %s to %s.' % (self.phone3, self.phone1)) self.assertTrue(Dialer.dial_number(self.phone1_number), 'Failed to initiate call.') self.is_call_active3 = True LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Check that there is an incoming call from %s' % self.phone3_number) self.assertTrue(Dialer.check_incoming_call(self.phone3_number), 'No incoming call from %s.' % self.phone3_number) LOG.info('Activate %s' % self.phone3) dut_manager.activate_phone(self.phone3) LOG.info('End call with %s.' % self.phone1_number) self.assertTrue(Dialer.end_call(), 'Failed to end call with %s.' % self.phone1_number) self.is_call_active3 = False LOG.info('Activate %s' % self.phone2) dut_manager.activate_phone(self.phone2) LOG.info('End call with %s.' % self.phone1_number) self.assertTrue(Dialer.end_call(), 'Failed to end call with %s.' % self.phone1_number) self.is_call_active2 = False LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Launch Dialer.') Dialer.launch() self.assertTrue(Dialer.dialer_launched(), 'Dialer failed to launch.') LOG.info('Deactivate call waiting using code (%s).' % self.deactivate_call_waiting_nr) self.assertTrue( Dialer.dial_number(self.deactivate_call_waiting_nr), 'Failed to deactivate call waiting using code (%s).' % self.deactivate_call_waiting_nr) self.is_call_waiting_disabled = True LOG.info('Check that USSD popup is open.') self.assertTrue(Dialer.is_ussd_open(), 'USSD popup not open.') self.is_ussd_open = True LOG.info('Get USSD message.') msg = Dialer.get_ussd_message() LOG.info('Found msg: %s' % msg) LOG.info('Close USSD popup.') self.assertTrue(Dialer.close_ussd(), 'Failed to close ussd popup.') self.is_ussd_open = False service_disabled_msg = 'Call waiting\nService has been disabled.' LOG.info( 'Check that USSD msg indicate that service has been disabled.') self.assertEqual( msg, service_disabled_msg, 'Found "%s" instead of "%s"' % (msg, service_disabled_msg)) LOG.info('Interrogate call waiting using code (%s).' % self.interrogate_call_waiting_nr) self.assertTrue( Dialer.dial_number(self.interrogate_call_waiting_nr), 'Failed to interrogate call waiting using code (%s).' % self.interrogate_call_waiting_nr) LOG.info('Check that USSD popup is open.') self.assertTrue(Dialer.is_ussd_open(), 'USSD popup not open.') self.is_ussd_open = True LOG.info('Get USSD message.') msg = Dialer.get_ussd_message() LOG.info('Found msg: %s' % msg) LOG.info('Close USSD popup.') self.assertTrue(Dialer.close_ussd(), 'Failed to close ussd popup.') self.is_ussd_open = False service_interrogate_msg = service_disabled_msg LOG.info( 'Check that USSD msg indicate that service has been disabled.') self.assertEqual( msg, service_interrogate_msg, 'Found "%s" instead of "%s"' % (msg, service_interrogate_msg)) LOG.info('Initiate a call from %s to %s.' % (self.phone1, self.phone2)) self.assertTrue(Dialer.dial_number(self.phone2_number)) LOG.info('Activate %s' % self.phone2) dut_manager.activate_phone(self.phone2) LOG.info('Answer incoming call.') Dialer.answer_call() # I wish I could do an assert here self.is_call_active2 = True LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Check if call is active with %s.' % self.phone2_number) self.assertTrue(Dialer.is_call_active(self.phone2_number), 'Call is inactive.') LOG.info('Activate %s' % self.phone3) dut_manager.activate_phone(self.phone3) LOG.info('Launch Dialer.') Dialer.launch() self.assertTrue(Dialer.dialer_launched(), 'Dialer failed to launch.') LOG.info('Initiate a call from %s to %s.' % (self.phone3, self.phone1)) self.assertTrue(Dialer.dial_number(self.phone1_number), 'Failed to initiate call.') self.is_call_active3 = True LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Check that there is no incoming call from %s' % self.phone3_number) self.assertFalse(Dialer.check_incoming_call(self.phone3_number), 'Found incoming call from %s.' % self.phone3_number) LOG.info('Activate %s' % self.phone3) dut_manager.activate_phone(self.phone3) # If voice mail is active, call is redirected to it # Otherwise line will be busy LOG.info( 'Check if call is active with %s (redirected to voice mail).' % self.phone1_number) if Dialer.is_call_active(self.phone1_number): LOG.info('Call was redirected to voice mail.') LOG.info('End call with %s.' % self.phone1_number) self.assertTrue(Dialer.end_call(), 'Failed to end call with %s.' % self.phone1_number) else: LOG.info('Line was busy.') self.is_call_active3 = False LOG.info('Activate %s' % self.phone2) dut_manager.activate_phone(self.phone2) LOG.info('End call with %s.' % self.phone1_number) self.assertTrue(Dialer.end_call(), 'Failed to end call with %s.' % self.phone1_number) self.is_call_active2 = False
def test_call_wait_incoming_call_ignored(self): """ ST_TELEPHONY_SS_CW_004 """ LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Launch Dialer.') Dialer.launch() self.assertTrue(Dialer.dialer_launched(), 'Dialer failed to launch.') LOG.info('Activate call waiting using menu.') self.assertTrue(Dialer.enable_call_waiting(), 'Failed to activate call waiting using menu.') LOG.info('Launch Dialer.') Dialer.launch() self.assertTrue(Dialer.dialer_launched(), 'Dialer failed to launch.') LOG.info('Initiate a call from %s to %s.' % (self.phone1, self.phone2)) self.assertTrue(Dialer.dial_number(self.phone2_number)) LOG.info('Activate %s' % self.phone2) dut_manager.activate_phone(self.phone2) LOG.info('Answer incoming call.') Dialer.answer_call() # I wish I could do an assert here self.is_call_active2 = True LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Check if call is active with %s.' % self.phone2_number) self.assertTrue(Dialer.is_call_active(self.phone2_number), 'Call is inactive.') LOG.info('Activate %s' % self.phone3) dut_manager.activate_phone(self.phone3) LOG.info('Launch Dialer.') Dialer.launch() self.assertTrue(Dialer.dialer_launched(), 'Dialer failed to launch.') LOG.info('Initiate a call from %s to %s.' % (self.phone3, self.phone1)) self.assertTrue(Dialer.dial_number(self.phone1_number), 'Failed to initiate call.') self.is_call_active3 = True LOG.info('Activate %s' % self.phone1) dut_manager.activate_phone(self.phone1) LOG.info('Dismiss incoming call from %s.' % self.phone3_number) self.assertTrue( Dialer.dismiss_incoming_call(self.phone3_number), 'Failed to dismiss incoming call from %s' % self.phone3_number) LOG.info('Check that there is no indication of incoming call from %s' % self.phone3_number) self.assertFalse( Dialer.check_incoming_call(self.phone3_number), 'Still found indication of incoming call from %s.' % self.phone3_number) LOG.info('Check if call is still active with %s.' % self.phone2_number) self.assertTrue(Dialer.is_call_active(self.phone2_number), 'Call is inactive.') LOG.info('Activate %s' % self.phone3) dut_manager.activate_phone(self.phone3) # If voice mail is active, call is redirected to it # Otherwise line will be busy LOG.info( 'Check if call is active with %s (redirected to voice mail).' % self.phone1_number) if Dialer.is_call_active(self.phone1_number): LOG.info('Call was redirected to voice mail.') LOG.info('End call with %s.' % self.phone1_number) self.assertTrue(Dialer.end_call(), 'Failed to end call with %s.' % self.phone1_number) else: LOG.info('Line was busy.') self.is_call_active3 = False LOG.info('Activate %s' % self.phone2) dut_manager.activate_phone(self.phone2) LOG.info('End call with %s.' % self.phone1_number) self.assertTrue(Dialer.end_call(), 'Failed to end call with %s.' % self.phone1_number) self.is_call_active2 = False