Exemplo n.º 1
0
    def test_api_limit(self, m):
        m.get('https://news.ycombinator.com/', text=self.fixture_html)

        fetch_data()

        with self.app.test_client() as c:
            response = c.get('/api/v1/posts/?limit=5')
            self.assertEqual(response.status_code, 200)
            data = json.loads(response.get_data(as_text=True))
            self.assertEqual(len(data), 5)
Exemplo n.º 2
0
    def test_home(self, m):
        m.get('https://news.ycombinator.com/', text=self.fixture_html)

        fetch_data()

        with self.app.test_client() as c:
            response = c.get('/api/v1/')
            self.assertEqual(response.status_code, 200)
            "Hacker News Grabber API"
            data = response.get_data(as_text=True)
            self.assertIn('<title>Hacker News Grabber API</title>', data)
Exemplo n.º 3
0
    def test_api_order_asc(self, m):
        m.get('https://news.ycombinator.com/', text=self.fixture_html)

        fetch_data()

        with self.app.test_client() as c:
            response = c.get(
                '/api/v1/posts/?limit=5&offset=2&order=id&dir=asc')
            self.assertEqual(response.status_code, 200)
            data = json.loads(response.get_data(as_text=True))
            self.assertEqual(len(data), 5)
            self.assertEqual(data[0]['id'], '3')
Exemplo n.º 4
0
def fetch_fresh_data():
    """Fetch data from hackernews"""
    from app.tasks import fetch_data
    fetch_data()