Ejemplo n.º 1
0
def ensure_list_available_package_names_delegates_to_cached_index_when_failing_to_download_index(temp_dir):
    proxy_package_index = ProxyPackageIndex(
        "cached", temp_dir.join("packages"), "http://pypi.python.org")
    temp_dir.touch("packages", "spam-0.1.2.tar.gz")
    temp_dir.touch("packages", "eggs-0.1.2.tar.gz")
    cached_environment = os.environ
    os.environ = {}
    when(pypiproxy.packageindex.urllib2).urlopen(
        any_value()).thenRaise(URLError("Failed!"))

    actual_list = proxy_package_index.list_available_package_names()

    assert_that(actual_list).is_equal_to(['eggs', 'spam'])
    os.environ = cached_environment
Ejemplo n.º 2
0
def ensure_list_available_package_names_retrieves_index_from_pypi(temp_dir):
    proxy_package_index = ProxyPackageIndex(
        "cached", temp_dir.join("packages"), "http://pypi.python.org")
    package_stream = StringIO("""<!doctype html><html><body>
<a href='alpha'>alpha</a><br/>
<a href='beta'>beta</a><br/>
<a href='gamma'>gamma</a><br/>
</body></html>""")
    cached_environment = os.environ
    os.environ = {}
    when(pypiproxy.packageindex.urllib2).urlopen(
        any_value()).thenReturn(package_stream)

    actual_list = proxy_package_index.list_available_package_names()

    assert_that(actual_list).is_equal_to(['alpha', 'beta', 'gamma'])
    verify(pypiproxy.packageindex.urllib2).urlopen(
        "http://pypi.python.org/simple/")
    os.environ = cached_environment