def test_send_sms(self): def _login(): self.s._session = '1361468289330' manager = Mock() self.s._login = manager._login self.s._login.side_effect = _login self.s._send_sms = manager._send_sms self.s._balance = 10 self.s.send('041928491', 'test') expected_calls = [ call._login(), call._send_sms('1361468289330', '41', '928491', 'test') ] self.assertEqual(expected_calls, manager.mock_calls) self.s.send('041928491', 'test') expected_calls = [ call._login(), call._send_sms('1361468289330', '41', '928491', 'test'), call._send_sms('1361468289330', '41', '928491', 'test') ] self.assertEqual(expected_calls, manager.mock_calls)
def test_send_sms_login_error_error(self): manager = Mock() self.s._login = manager._login self.s._login.side_effect = AuthException self.s._send_sms = manager._send_sms self.s._balance = 10 with self.assertRaises(AuthException): self.s.send('041928491', 'test') expected_calls = [call._login(), call._login()] self.assertEqual(expected_calls, manager.mock_calls)
def test_send_sms_balance_error_error(self): def _login(): self.s._session = '1361468289330' manager = Mock() self.s._login = manager._login self.s._login.side_effect = _login self.s._balance = 0 with self.assertRaises(SendException): self.s.send('041928491', 'test') expected_calls = [call._login(), call._login()] self.assertEqual(expected_calls, manager.mock_calls)
def test_send_sms_login_error_ok(self): def _login_first(): def _login_second(): self.s._session = '1361468289330' self.s._login.side_effect = _login_second raise AuthException manager = Mock() self.s._login = manager._login self.s._login.side_effect = _login_first self.s._send_sms = manager._send_sms self.s._balance = 10 self.s.send('041928491', 'test') expected_calls = [call._login(), call._login(), call._send_sms('1361468289330', '41','928491', 'test')] self.assertEqual(expected_calls, manager.mock_calls)
def test_send_sms(self): def _login(): self.s._session = '1361468289330' manager = Mock() self.s._login = manager._login self.s._login.side_effect = _login self.s._send_sms = manager._send_sms self.s._balance = 10 self.s.send('041928491', 'test') expected_calls = [call._login(), call._send_sms('1361468289330', '41','928491', 'test')] self.assertEqual(expected_calls, manager.mock_calls) self.s.send('041928491', 'test') expected_calls = [call._login(), call._send_sms('1361468289330', '41','928491', 'test'), call._send_sms('1361468289330', '41','928491', 'test')] self.assertEqual(expected_calls, manager.mock_calls)
def test_send_sms_login_error_ok(self): def _login_first(): def _login_second(): self.s._session = '1361468289330' self.s._login.side_effect = _login_second raise AuthException manager = Mock() self.s._login = manager._login self.s._login.side_effect = _login_first self.s._send_sms = manager._send_sms self.s._balance = 10 self.s.send('041928491', 'test') expected_calls = [ call._login(), call._login(), call._send_sms('1361468289330', '41', '928491', 'test') ] self.assertEqual(expected_calls, manager.mock_calls)