Example #1
0
def app():
    """Flask application fixture."""
    app = Flask('testapp')
    app.config.update(
        TESTING=True,
        SEARCH_UI_SEARCH_API='api'
    )
    Babel(app)

    FlaskCLI(app)
    assets = InvenioAssets(app)
    assets.init_cli(app.cli)
    InvenioTrendsUI(app)

    @app.route('/api')
    def api():
        return {}

    app.register_blueprint(blueprint)
    return app
Example #2
0
 ])

InvenioDB(app)
InvenioTheme(app)
InvenioRecords(app)
InvenioRecordsUI(app)
search = InvenioSearch(app)
search.register_mappings('records', 'data')
InvenioSearchUI(app)
InvenioIndexer(app)
InvenioPIDStore(app)

InvenioRecordsREST(app)

assets = InvenioAssets(app)
assets.init_cli(app.cli)

# Register assets
assets.env.register('invenio_search_ui_search_js', js)


@app.cli.group()
def fixtures():
    """Command for working with test data."""


@fixtures.command()
def records():
    """Load records."""
    import pkg_resources
    import uuid
def test_init_cli(app):
    """Test cli registration."""
    assets = InvenioAssets(app)
    assert len(app.cli.commands) == 0
    assets.init_cli(app.cli)
    assert len(app.cli.commands) == 3
Example #4
0
FlaskCLI(app)
if InvenioI18N is not None:
    InvenioI18N(app)
else:
    Babel(app)

# Set jinja loader to first grab templates from the app's folder.
app.jinja_loader = jinja2.ChoiceLoader([
    jinja2.FileSystemLoader(join(dirname(__file__), "templates")),
    app.jinja_loader
])

# Load Invenio modules
theme = InvenioTheme(app)
assets = InvenioAssets(app)
assets.init_cli(app.cli)

# Register assets
assets.env.register('invenio_theme_js', js)
assets.env.register('invenio_theme_css', css)

# Register menu items
item = theme.menu.submenu('main.errors')
item.register('',
              _('Error pages'),
              active_when=lambda: request.endpoint == "error",
              order=3)
for err, title in app.config['ERRORS'].items():
    item = theme.menu.submenu('main.errors.err%s' % err)
    item.register('error',
                  title,
def test_init_cli(app):
    """Test cli registration."""
    assets = InvenioAssets(app)
    assert len(app.cli.commands) == 0
    assets.init_cli(app.cli)
    assert len(app.cli.commands) == 3