Ejemplo n.º 1
0
def test_foca_db():
    """Ensure foca() returns a Connexion app instance; valid db field"""
    app = foca(VALID_DB_CONF)
    my_db = app.app.config['FOCA'].db.dbs['my-db']
    my_coll = my_db.collections['my-col-1']
    assert isinstance(my_db.client, Database)
    assert isinstance(my_coll.client, Collection)
    assert isinstance(app, App)
Ejemplo n.º 2
0
def main():
    # create app object
    app = foca(os.path.join(
        os.path.dirname(__file__),
        "config.yaml",
    ))

    # register service info
    with app.app.app_context():
        service_info = RegisterServiceInfo()
        service_info.set_service_info_from_config()

    # start app
    app.run(port=app.port)
Ejemplo n.º 3
0
#!/usr/bin/env python3
from pathlib import Path

from foca.foca import foca

if __name__ == '__main__':
    config = str(Path(__file__).resolve().parent / "config.yaml")
    app = foca("config.yaml")
    app.run(port=8080)
Ejemplo n.º 4
0
def test_foca_invalid_api():
    """Test foca(); invalid api field (Invalid Connexion spec)"""
    temp_file = create_temporary_copy(API_CONF, PATH_SPECS_INVALID_OPENAPI)
    with pytest.raises(InvalidSpecification):
        foca(temp_file)
Ejemplo n.º 5
0
def test_foca_api():
    """Ensure foca() returns a Connexion app instance; valid api field"""
    temp_file = create_temporary_copy(API_CONF, PATH_SPECS_2_YAML)
    app = foca(temp_file)
    assert isinstance(app, App)
    os.remove(temp_file)
Ejemplo n.º 6
0
def test_foca_jobs():
    """Ensure foca() returns a Connexion app instance; valid jobs field"""
    app = foca(JOBS_CONF)
    assert isinstance(app, App)
Ejemplo n.º 7
0
def test_foca_invalid_jobs():
    """Test foca(); invalid jobs field"""
    with pytest.raises(ValidationError):
        foca(INVALID_JOBS_CONF)
Ejemplo n.º 8
0
def test_foca_invalid_log():
    """Test foca(); invalid log field"""
    with pytest.raises(ValidationError):
        foca(INVALID_LOG_CONF)
Ejemplo n.º 9
0
def test_foca_invalid_structure():
    """Test foca(); invalid configuration file structure."""
    with pytest.raises(YAMLError):
        foca(INVALID_CONF)
Ejemplo n.º 10
0
def test_foca_empty_conf():
    """Ensure foca() require non-empty configuration parameters (if a field is
    present)"""
    with pytest.raises(ValidationError):
        foca(EMPTY_CONF)
Ejemplo n.º 11
0
def test_foca_output_defaults():
    """Ensure foca() returns a Connexion app instance; defaults only."""
    app = foca()
    assert isinstance(app, App)
Ejemplo n.º 12
0
def test_foca_invalid_db():
    """Test foca(); invalid db field"""
    with pytest.raises(ValidationError):
        foca(INVALID_DB_CONF)