Esempio n. 1
0
def test_asset_store_export():
    
    dir = os.path.join(tempfile.gettempdir(), 'flexx_export')
    if os.path.isdir(dir):
        shutil.rmtree(dir)
    os.mkdir(dir)
    
    s = AssetStore()
    
    s.export(dir)
    assert not os.listdir(dir)
    
    s.add_asset('foo.js', b'xx')
    s.add_asset('foo.css', b'xx')
    s.export(dir)
    assert len(os.listdir(dir)) == 2
    
    # Fail
    raises(ValueError, s.export, os.path.join(dir, 'doesnotexist'))
Esempio n. 2
0
def test_asset_store_export():

    from flexx import ui

    dir = os.path.join(tempfile.gettempdir(), 'flexx_export')
    if os.path.isdir(dir):
        shutil.rmtree(dir)

    # os.mkdir(dir) -> No, export can create this dir!

    store = AssetStore()
    store.update_modules()

    # Getting an asset marks them as used
    store.get_asset('flexx.ui.js')
    store.get_asset('flexx.app.js')
    store.get_asset('flexx.js')
    store.get_asset('reset.css')

    store.add_shared_data('foo.png', b'x')

    s = SessionAssets(store)
    s.add_data('bar.png', b'x')

    store.export(dir)
    s._export(dir)
    assert len(os.listdir(dir)) == 2
    assert os.path.isfile(os.path.join(dir, '_assets', 'shared', 'reset.css'))
    assert os.path.isfile(os.path.join(dir, '_assets', 'shared',
                                       'flexx.ui.js'))
    assert os.path.isfile(
        os.path.join(dir, '_assets', 'shared', 'flexx.app.js'))
    assert os.path.isfile(os.path.join(dir, '_assets', 'shared', 'flexx.js'))
    assert not os.path.isfile(
        os.path.join(dir, '_assets', 'shared', 'flexx.ui._widget.js'))
    assert os.path.isfile(os.path.join(dir, '_data', 'shared', 'foo.png'))
    assert os.path.isfile(os.path.join(dir, '_data', s.id, 'bar.png'))

    # Will only create a dir that is one level deep
    with raises(ValueError):
        store.export(os.path.join(dir, 'not', 'exist'))