Ejemplo n.º 1
0
def test_save_deleted(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    asset = arch.new_resource('filename.txt', deleted=True)
    arch.save(asset)
    assert not path.exists(path.join(testbucket, 'filename.txt'))
    assert not path.exists(path.join(testbucket, arch.meta_prefix,
                                     'filename.txt'))
Ejemplo n.º 2
0
def test_save_no_filename(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    with pytest.raises(TypeError) as einfo:
        asset = arch.new_resource(content='contents',
                                  contenttype=contenttype,
                                  resourcetype='asset',
                                  )
        arch.save(asset)
    assert einfo
Ejemplo n.º 3
0
def test_save_no_content(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    asset = arch.new_resource('filename.txt',
                              contenttype=contenttype,
                              resourcetype='asset',
                              )
    with pytest.raises(TypeError) as einfo:
        arch.save(asset)
    assert 'content' in str(einfo.value)
Ejemplo n.º 4
0
def test_save_artifact_no_guid(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    with pytest.raises(ValueError) as einfo:
        asset = arch.new_resource(content='contents',
                                  contenttype=contenttype,
                                  resourcetype='artifact',
                                  key='artifact_without_guid.txt'
                                  )
        arch.save(asset)
    assert einfo
Ejemplo n.º 5
0
def test_save_success(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    asset = arch.new_resource('filename.txt',
                              content='contents',
                              contenttype=contenttype,
                              resourcetype='asset'
                              )
    arch.save(asset)

    resource = arch.get('filename.txt')

    assert path.exists(path.join(testbucket, 'filename.txt'))
    assert resource.key == 'filename.txt'
    assert resource.bucket == arch.bucket
    assert resource.content == 'contents'
    assert resource.resourcetype == 'asset'
    assert resource.contenttype == contenttype
Ejemplo n.º 6
0
def test_save_with_metadata(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    meta = {"stuff": "things"}
    asset = arch.new_resource('filename.txt',
                              content='contents',
                              contenttype=contenttype,
                              resourcetype='asset',
                              metadata=meta
                              )
    arch.save(asset)
    resource = arch.get('filename.txt')

    assert path.exists(path.join(testbucket, 'filename.txt'))
    assert resource.key == 'filename.txt'
    assert resource.bucket == arch.bucket
    assert resource.content == 'contents'
    assert resource.resourcetype == 'asset'
    assert resource.contenttype == contenttype
    assert resource.metadata == {"stuff": "things", "resourcetype": "asset"}
Ejemplo n.º 7
0
def test_new_resource_with_kwargs(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    asset = arch.new_resource('test.key', deleted=True)
    assert asset.deleted is True
Ejemplo n.º 8
0
def test_new_resource_with_key(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    asset = arch.new_resource('test.key')
    assert asset.bucket == testbucket
    assert asset.key == 'test.key'
Ejemplo n.º 9
0
def test_jinja_custom_prefix(testbucket):
    arch = localarchivist(testbucket,
                          siteconfig={"template_dir": "tests"})
    jinja = arch.jinja
    assert jinja.loader.searchpath == [path.join(testbucket, "tests")]
Ejemplo n.º 10
0
def test_jinja_defaults(testbucket):
    arch = localarchivist(testbucket,
                          siteconfig={})
    jinja = arch.jinja
    assert jinja.loader.searchpath == [path.join(testbucket, '_templates')]
Ejemplo n.º 11
0
def test_asset_data_mutator(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    asset = arch.new_resource(key='testkey', data={"this": "that"},
                              contenttype='application/json')
    assert asset.content == '{"this": "that"}'
    assert asset.data == {"this": "that"}
Ejemplo n.º 12
0
def test_asset_text_mutator(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    asset = arch.new_resource(key='testkey', text='¿Dónde esta el baño?',
                              contenttype='text/plain')
    assert type(asset.content) == bytes
    assert asset.text == '¿Dónde esta el baño?'
Ejemplo n.º 13
0
def test_all_archetypes(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    for item in arch.all_archetypes():
        assert isinstance(item, localresource)
Ejemplo n.º 14
0
def test_delete_no_filename(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    with pytest.raises(TypeError):
        arch.delete()
Ejemplo n.º 15
0
def test_delete_by_key(testbucket):
    arch = localarchivist(testbucket, siteconfig={})
    arch.delete('filename.txt')
    assert not path.exists(path.join(testbucket, 'filename.txt'))
    assert not path.exists(path.join(testbucket, arch.meta_prefix,
                                     'filename.txt'))