def test_iphone_battery_with_a_phone(self): """test find_iphone func.""" m_text = mock.Mock() m_device = mock.Mock() m_battery_level = 0.5 expected_percentage = int(float(m_battery_level) * 100) m_tts_expected_arg = '{}percent battery left in m_name'.format( expected_percentage) m_device_name = 'm_name' m_device.status.return_value = { 'deviceDisplayName': 'iPhone', 'batteryLevel': m_battery_level, 'name': m_device_name, } from melissa.actions.find_iphone import iphone_battery with mock.patch('melissa.actions.find_iphone.PyiCloudService') \ as m_pc_service, \ mock.patch('melissa.actions.find_iphone.tts') as m_tts: m_pc_service.return_value.devices = [m_device] # run the func iphone_battery(m_text) # testing. m_pc_service.assert_called_once_with(M_USERNAME, M_PASSWORD) m_tts.assert_called_once_with(m_tts_expected_arg) assert m_device.status.call_count == 2 m_device.status.assert_called_with()
def test_iphone_battery_with_a_phone(self): """test find_iphone func.""" m_text = mock.Mock() m_device = mock.Mock() m_battery_level = 0.5 expected_percentage = int(float(m_battery_level) * 100) m_tts_expected_arg = "{}percent battery left in m_name".format(expected_percentage) m_device_name = "m_name" m_device.status.return_value = { "deviceDisplayName": "iPhone", "batteryLevel": m_battery_level, "name": m_device_name, } from melissa.actions.find_iphone import iphone_battery with mock.patch("melissa.actions.find_iphone.PyiCloudService") as m_pc_service, mock.patch( "melissa.actions.find_iphone.tts" ) as m_tts: m_pc_service.return_value.devices = [m_device] # run the func iphone_battery(m_text) # testing. m_pc_service.assert_called_once_with(M_USERNAME, M_PASSWORD) m_tts.assert_called_once_with(m_tts_expected_arg) assert m_device.status.call_count == 2 m_device.status.assert_called_with()
def test_iphone_battery_raise_failed_login(self): """test find iphone but raise failed login error.""" m_text = mock.Mock() from melissa.actions.find_iphone import iphone_battery with mock.patch('melissa.actions.find_iphone.PyiCloudService') \ as m_pc_service, \ mock.patch('melissa.actions.find_iphone.tts') as m_tts: m_pc_service.side_effect = PyiCloudFailedLoginException() # run iphone_battery(m_text) # testing m_pc_service.assert_called_once_with(M_USERNAME, M_PASSWORD) m_tts.assert_called_once_with('Invalid Username & Password')
def test_iphone_battery_raise_failed_login(self): """test find iphone but raise failed login error.""" m_text = mock.Mock() from melissa.actions.find_iphone import iphone_battery with mock.patch("melissa.actions.find_iphone.PyiCloudService") as m_pc_service, mock.patch( "melissa.actions.find_iphone.tts" ) as m_tts: m_pc_service.side_effect = PyiCloudFailedLoginException() # run iphone_battery(m_text) # testing m_pc_service.assert_called_once_with(M_USERNAME, M_PASSWORD) m_tts.assert_called_once_with("Invalid Username & Password")