Esempio n. 1
0
def get_event(event, context, requests):
    name = event.get('queryStringParameters').get('name')
    page = event.get('queryStringParameters').get('page')
    github_api_host = os.environ.get('GITHUB_API_HOST')
    github_access_token = os.environ.get('GITHUB_ACCESS_TOKEN')
    event_url = f'{github_api_host}/users/{name}/received_events'
    event_headers = {'Authorization': f'token {github_access_token}'}
    event_parameters = {'page': page}
    events_response = requests.get(url=event_url,
                                   params=event_parameters,
                                   headers=event_headers)
    headers = {'max-page': get_max_page(events_response.headers.get('Link'))}
    return {
        'statusCode': 200,
        'body': json.dumps(pick_from_event(events_response.json())),
        'headers': headers
    }
Esempio n. 2
0
def get_search(event, context, requests):
    github_api_host = os.environ.get('GITHUB_API_HOST')
    github_access_token = os.environ.get('GITHUB_ACCESS_TOKEN')
    search_headers = {'Authorization': f'token {github_access_token}'}
    search_parameters = {
        'q': event.get('queryStringParameters').get('repository'),
        'page': event.get('queryStringParameters').get('page')
    }
    search_url = f'{github_api_host}/search/repositories'
    search_response = requests.get(url=search_url,
                                   params=search_parameters,
                                   headers=search_headers)
    searches = search_response.json().get('items')
    headers = {'max-page': get_max_page(search_response.headers.get('Link'))}
    return {
        'statusCode': 200,
        'body': json.dumps(pick_from_search(searches)),
        'headers': headers
    }
Esempio n. 3
0
 def test_should_return_0_when_header_is_none(self):
     self.assertEqual(get_max_page(None), 0)
Esempio n. 4
0
 def test_should_return_34_when_current_page_in_header_is_the_last_page(self):
     link = '<https://api.github.com/search/repositories?q=996&page=33>; rel="prev", ' \
            '<https://api.github.com/search/repositories?q=996&page=1>; rel="first"'
     self.assertEqual(get_max_page(link), 34)