Ejemplo n.º 1
0
def test_fetch_rates():
     response_mock = Mock()
     response_mock.status_code = -1
     response_mock.json.return_value = {
          '12/25': 'Christmas',
          '7/4': 'Independence Day',
     }
     cc = CurrencyConverter(['JPY'], ['USD'])
     
     with patch('currency_converter.requests') as mock_requests:
          mock_requests.get.side_effect = response_mock
          assert cc.fetch_rate('JPY', 'USD') == "No response from the server"
     
         
     with patch('currency_converter.re.sub') as mock_sub:
          mock_sub.return_value = '10.93'
          assert cc.fetch_rate('GBP', 'USD') == None
          
          mock_sub.return_value = '1093'
          assert cc.fetch_rate('GBP', 'USD') == 1093

     with pytest.raises(Exception):
          cc.fetch_rate('Hello', 'World')