Beispiel #1
0
def test_instantiate_correct_configs(base_config_dict: dict):
    # GIVEN a dictionary with the basic configs

    # WHEN instantiating a CGConfig object
    config_object = CGConfig(**base_config_dict)

    # THEN assert that it was successfully created
    assert isinstance(config_object, CGConfig)
Beispiel #2
0
def test_fetching_the_status_db(base_config_dict: dict, caplog):
    caplog.set_level(logging.DEBUG)
    # GIVEN a dictionary with the basic configs

    # WHEN instantiating a CGConfig object
    config_object = CGConfig(**base_config_dict)

    # THEN assert that the status db exists
    assert isinstance(config_object.status_db, Store)
    # THEN assert that it was communicated that it was instantiated
    assert "Instantiating status db" in caplog.text
Beispiel #3
0
def test_api_instantiated_once(base_config_dict: dict, caplog):
    caplog.set_level(logging.DEBUG)
    # GIVEN a dictionary with the basic configs
    # GIVEN a CGConfig object
    config_object = CGConfig(**base_config_dict)

    # WHEN fetching (instantiating) the status_db

    # THEN assert that it was only instantiated once
    config_object.status_db
    assert "Instantiating status db" in caplog.text
    caplog.clear()
    config_object.status_db
    assert "Instantiating status db" not in caplog.text
Beispiel #4
0
def base(
    context: click.Context,
    config: click.File,
    database: Optional[str],
    log_level: str,
    verbose: bool,
):
    """cg - interface between tools at Clinical Genomics."""
    if verbose:
        log_format = "%(asctime)s %(hostname)s %(name)s[%(process)d] %(levelname)s %(message)s"
    else:
        log_format = "%(message)s" if sys.stdout.isatty() else None

    coloredlogs.install(level=log_level, fmt=log_format)
    raw_configs: dict = yaml.full_load(config) if config else {"database": database}
    context.obj = CGConfig(**raw_configs)
Beispiel #5
0
def fixture_cg_config_object(base_config_dict: dict) -> CGConfig:
    """Return a CG config dict"""
    return CGConfig(**base_config_dict)
Beispiel #6
0
def fixture_cg_context(context_config: dict, base_store: Store,
                       housekeeper_api: HousekeeperAPI) -> CGConfig:
    cg_config = CGConfig(**context_config)
    cg_config.status_db_ = base_store
    cg_config.housekeeper_api_ = housekeeper_api
    return cg_config