예제 #1
0
파일: repo.py 프로젝트: pombredanne/maxify
    def init(cls, path, test_mode=False):
        """Initialize the repository with a path to the data store to be
        used.

        :param path: `str` containing the path to the data store.
        :param test_mode: Optional `boolean` indicating whether the repository
            is being used in a test mode (i.e. during unit tests) vs.
            normal operation mode.

        """
        cls.db_session = open_user_data(path, use_static_pool=test_mode)
예제 #2
0
def metrics_session(request):
    session = open_user_data(":memory:", use_static_pool=True)
    request.addfinalizer(session.close)
    return session
예제 #3
0
"""Project wide test fixtures and utilities.

"""

import pytest

from maxify.data import open_user_data
from maxify.projects import Project
from maxify.metrics import Metric, Duration, Number
from maxify.repo import Repository


_db_session = open_user_data(":memory:", False)


@pytest.fixture(autouse=True)
def repository(request):
    Repository.init(":memory:", test_mode=True)
    request.addfinalizer(_clear_test_data)
    return Repository


@pytest.fixture()
def db_session(repository):
    """Database session object for accessing in-memory persisted data.

    """
    return repository.db_session


def _clear_test_data():