コード例 #1
0
ファイル: env.py プロジェクト: basaks/rasterio
    def wrapper(*args, **kwds):
        if local._env:
            env_ctor = Env
        else:
            env_ctor = Env.from_defaults

        if isinstance(args[0], str):
            session = Session.from_path(args[0])
        else:
            session = Session.from_path(None)

        with env_ctor(session=session):
            return f(*args, **kwds)
コード例 #2
0
    def wrapper(*args, **kwds):
        if local._env:
            env_ctor = Env
        else:
            env_ctor = Env.from_defaults

        if isinstance(args[0], str):
            session = Session.from_path(args[0])
        else:
            session = Session.from_path(None)

        with env_ctor(session=session):
            return f(*args, **kwds)
コード例 #3
0
def test_session_factory_s3_kwargs():
    """Get an AWSSession for s3:// paths with keywords"""
    pytest.importorskip("boto3")
    sesh = Session.from_path("s3://lol/wut", aws_access_key_id='foo', aws_secret_access_key='bar')
    assert isinstance(sesh, AWSSession)
    assert sesh._session.get_credentials().access_key == 'foo'
    assert sesh._session.get_credentials().secret_key == 'bar'
コード例 #4
0
ファイル: test_session.py プロジェクト: mapbox/rasterio
def test_session_factory_s3_no_boto3(monkeypatch):
    """Get an AWSSession for s3:// paths"""
    pytest.importorskip("boto3")
    with monkeypatch.context() as mpctx:
        mpctx.setattr("rasterio.session.boto3", None)
        sesh = Session.from_path("s3://lol/wut")
        assert isinstance(sesh, DummySession)
コード例 #5
0
ファイル: test_session.py プロジェクト: basaks/rasterio
def test_session_factory_s3_kwargs():
    """Get an AWSSession for s3:// paths with keywords"""
    pytest.importorskip("boto3")
    sesh = Session.from_path("s3://lol/wut", aws_access_key_id='foo', aws_secret_access_key='bar')
    assert isinstance(sesh, AWSSession)
    assert sesh._session.get_credentials().access_key == 'foo'
    assert sesh._session.get_credentials().secret_key == 'bar'
コード例 #6
0
ファイル: test_session.py プロジェクト: urslee/rasterio
def test_session_factory_oss_kwargs():
    """Get an OSSSession for oss:// paths with keywords"""
    sesh = Session.from_path("oss://lol/wut",
                             oss_access_key_id='foo',
                             oss_secret_access_key='bar')
    assert isinstance(sesh, OSSSession)
    assert sesh.get_credential_options()['OSS_ACCESS_KEY_ID'] == 'foo'
    assert sesh.get_credential_options()['OSS_SECRET_ACCESS_KEY'] == 'bar'
コード例 #7
0
ファイル: test_session.py プロジェクト: mapbox/rasterio
def test_session_factory_az_kwargs_connection_string():
    """Get an AzureSession for az:// paths with keywords"""
    sesh = Session.from_path("az://lol/wut",
                             azure_storage_connection_string=
                             'AccountName=myaccount;AccountKey=MY_ACCOUNT_KEY')
    assert isinstance(sesh, AzureSession)
    assert sesh.get_credential_options(
    )['AZURE_STORAGE_CONNECTION_STRING'] == 'AccountName=myaccount;AccountKey=MY_ACCOUNT_KEY'
コード例 #8
0
ファイル: test_session.py プロジェクト: mapbox/rasterio
def test_session_factory_az_kwargs():
    """Get an AzureSession for az:// paths with keywords"""
    sesh = Session.from_path("az://lol/wut",
                             azure_storage_account='foo',
                             azure_storage_access_key='bar')
    assert isinstance(sesh, AzureSession)
    assert sesh.get_credential_options()['AZURE_STORAGE_ACCOUNT'] == 'foo'
    assert sesh.get_credential_options()['AZURE_STORAGE_ACCESS_KEY'] == 'bar'
コード例 #9
0
ファイル: test_session.py プロジェクト: urslee/rasterio
def test_session_factory_unparsed():
    """Get a DummySession for unparsed paths"""
    sesh = Session.from_path("/vsicurl/lolwut")
    assert isinstance(sesh, DummySession)
コード例 #10
0
def test_session_factory_swift_kwargs():
    """Get an SwiftSession for /vsiswift/bucket/key with keywords"""
    sesh = Session.from_path("/vsiswift/lol/wut",
                             swift_storage_url='foo',
                             swift_auth_token='bar')
    assert isinstance(sesh, DummySession)
コード例 #11
0
ファイル: test_session.py プロジェクト: DanLipsitt/rasterio
def test_session_factory_swift_kwargs():
    """Get an SwiftSession for /vsiswift/bucket/key with keywords"""
    sesh = Session.from_path("/vsiswift/lol/wut", swift_storage_url='foo', swift_auth_token='bar')
    assert isinstance(sesh, DummySession)

    
コード例 #12
0
ファイル: test_session.py プロジェクト: urslee/rasterio
def test_session_factory_unknown():
    """Get a DummySession for unknown paths"""
    sesh = Session.from_path("https://fancy-cloud.com/lolwut")
    assert isinstance(sesh, DummySession)
コード例 #13
0
ファイル: test_session.py プロジェクト: urslee/rasterio
def test_session_factory_empty():
    """Get a DummySession for no path"""
    sesh = Session.from_path("")
    assert isinstance(sesh, DummySession)
コード例 #14
0
ファイル: test_session.py プロジェクト: basaks/rasterio
def test_session_factory_s3():
    """Get an AWSSession for s3:// paths"""
    pytest.importorskip("boto3")
    sesh = Session.from_path("s3://lol/wut")
    assert isinstance(sesh, AWSSession)
コード例 #15
0
ファイル: test_session.py プロジェクト: basaks/rasterio
def test_session_factory_unknown():
    """Get a DummySession for unknown paths"""
    sesh = Session.from_path("https://fancy-cloud.com/lolwut")
    assert isinstance(sesh, DummySession)
コード例 #16
0
ファイル: test_session.py プロジェクト: basaks/rasterio
def test_session_factory_local():
    """Get a DummySession for local paths"""
    sesh = Session.from_path("file:///lolwut")
    assert isinstance(sesh, DummySession)
コード例 #17
0
ファイル: test_session.py プロジェクト: basaks/rasterio
def test_session_factory_empty():
    """Get a DummySession for no path"""
    sesh = Session.from_path("")
    assert isinstance(sesh, DummySession)
コード例 #18
0
ファイル: test_session.py プロジェクト: basaks/rasterio
def test_session_factory_unparsed():
    """Get a DummySession for unparsed paths"""
    sesh = Session.from_path("/vsicurl/lolwut")
    assert isinstance(sesh, DummySession)
コード例 #19
0
ファイル: test_session.py プロジェクト: urslee/rasterio
def test_session_factory_local():
    """Get a DummySession for local paths"""
    sesh = Session.from_path("file:///lolwut")
    assert isinstance(sesh, DummySession)
コード例 #20
0
ファイル: test_session.py プロジェクト: mapbox/rasterio
def test_session_factory_s3_presigned_url():
    """Get a DummySession for presigned URLs"""
    sesh = Session.from_path(
        "https://fancy-cloud.com/lolwut?X-Amz-Signature=foo")
    assert isinstance(sesh, DummySession)
コード例 #21
0
ファイル: test_session.py プロジェクト: urslee/rasterio
def test_session_factory_s3():
    """Get an AWSSession for s3:// paths"""
    pytest.importorskip("boto3")
    sesh = Session.from_path("s3://lol/wut")
    assert isinstance(sesh, AWSSession)
コード例 #22
0
ファイル: test_session.py プロジェクト: DanLipsitt/rasterio
def test_session_factory_oss_kwargs():
    """Get an OSSSession for oss:// paths with keywords"""
    sesh = Session.from_path("oss://lol/wut", oss_access_key_id='foo', oss_secret_access_key='bar')
    assert isinstance(sesh, OSSSession)
    assert sesh.get_credential_options()['OSS_ACCESS_KEY_ID'] == 'foo'
    assert sesh.get_credential_options()['OSS_SECRET_ACCESS_KEY'] == 'bar'