def test_api_call_throttle_should_pass(self):
        api = FakeApi(True)
        api._is_response_valid = MagicMock(return_value=True)
        api.requests_per_seconds = 5

        for i in range(api.requests_per_seconds):
            api.call()
    def test_api_call_throttle_should_fail(self):
        api = FakeApi(True)
        api._is_response_valid = MagicMock(return_value=True)
        api.requests_per_seconds = 5

        with self.assertRaises(TimeoutError):
            for i in range(api.requests_per_seconds * 2):
                api.call()
 def test_mocked_call(self):
     api = FakeApi(True)
     api._is_response_valid = MagicMock(return_value=True)
     api.get_inventory(test='awesome')
     result = api.call()
     self.assertTrue(result)