예제 #1
0
def mock_spk_url(request):
    # Mock requests so we don't hit the server
    with responses.RequestsMock(assert_all_requests_are_fired=False) as rsps:
        for data in spk_data:
            body = 'fake data for ' + data['kernel']

            # If the file is in the 'old' directory, mock a 404 response in the
            # top level directory.
            if data['old']:
                rsps.add(GET, SPK_URL.format(**data), status=404)
                url = SPK_OLD_URL
            else:

                url = SPK_URL
            if request.param:
                rsps.add(GET, url.format(**data), body=body)
            else:
                headers = {'Content-Length': str(len(body))}
                rsps.add(GET,
                         url.format(**data),
                         body=body,
                         adding_headers=headers)

        rsps.add(GET,
                 SPK_URL.format(category='planets', kernel='tatooine'),
                 status=404)
        rsps.add(GET,
                 SPK_OLD_URL.format(category='planets', kernel='tatooine'),
                 status=404)

        yield rsps
def mock_spk_url(request):
    # Mock requests so we don't hit the server
    with responses.RequestsMock(assert_all_requests_are_fired=False) as rsps:
        for data in spk_data:
            body = 'fake data for ' + data['kernel']

            # If the file is in the 'old' directory, mock a 404 response in the
            # top level directory.
            if data['old']:
                rsps.add(GET, SPK_URL.format(**data), status=404)
                url = SPK_OLD_URL
            else:

                url = SPK_URL
            if request.param:
                rsps.add(GET, url.format(**data), body=body)
            else:
                headers = {'Content-Length': str(len(body))}
                rsps.add(GET, url.format(**data), body=body, adding_headers=headers)

        rsps.add(GET, SPK_URL.format(category='planets', kernel='tatooine'),
                 status=404)
        rsps.add(GET, SPK_OLD_URL.format(category='planets', kernel='tatooine'),
                 status=404)

        yield rsps
    def test_download_failed(self, tmpdir):
        with responses.RequestsMock(assert_all_requests_are_fired=False) as rsps:
            rsps.add(
                GET, SPK_URL.format(category='planets', kernel='jakku'),
                status=500)
            rsps.add(
                GET, SPK_OLD_URL.format(category='planets', kernel='jakku'),
                status=500)

            with pytest.raises(requests.HTTPError):
                download_spk(category='planets', kernel='jakku',
                             download_dir=str(tmpdir))
예제 #4
0
    def test_download_failed(self, tmpdir):
        with responses.RequestsMock(
                assert_all_requests_are_fired=False) as rsps:
            rsps.add(GET,
                     SPK_URL.format(category='planets', kernel='jakku'),
                     status=500)
            rsps.add(GET,
                     SPK_OLD_URL.format(category='planets', kernel='jakku'),
                     status=500)

            with pytest.raises(requests.HTTPError):
                download_spk(category='planets',
                             kernel='jakku',
                             download_dir=str(tmpdir))