def test_get_cached_invalid_json_response(self): with mock_request(200, 'invalid-json'): with contextmanagers.get_cached('test_autopylot', 'http://notreal.com/fake', default=[])\ as parsed_json: self.assertEqual([], parsed_json)
def test_get_cached_not_cached(self): with mock_request(200, '[{"answer": 42}]'): with contextmanagers.get_cached('test_autopylot', 'http://notreal.com/fake')\ as parsed_json: expected = [{'answer': 42}] self.assertEqual(expected, parsed_json) self.assertEqual(expected, cache.get('test_autopylot'))
def test_get_cached_cached(self): with mock_request(200, 'not-valid-json'): expected = [{'answer': 42}] cache.set('test_autopylot', expected) self.assertEqual(expected, cache.get('test_autopylot')) with contextmanagers.get_cached('test_autopylot', 'http://notreal.com/fake')\ as parsed_json: self.assertEqual(expected, parsed_json)
def test_get_cached_timeout(self): with contextmanagers.get_cached('test_autopylot', 'http://localhost/notreal/fake', timeout=0.00001)\ as parsed_json: self.assertEqual(None, parsed_json)
def test_get_cached_bad_response(self): with mock_request(400, '{"valid": "json"}'): with contextmanagers.get_cached('test_autopylot', 'http://notreal.com/fake')\ as parsed_json: self.assertEqual(None, parsed_json)