diff --git a/lumapps/api/conf.py b/lumapps/api/conf.py index 2c2c110a..754bac9d 100644 --- a/lumapps/api/conf.py +++ b/lumapps/api/conf.py @@ -1,2 +1,2 @@ -__version__ = "0.1.17" +__version__ = "0.1.18" __pypi_packagename__ = "lumapps-sdk" diff --git a/lumapps/api/utils.py b/lumapps/api/utils.py index f28e944b..0347b556 100644 --- a/lumapps/api/utils.py +++ b/lumapps/api/utils.py @@ -81,38 +81,27 @@ def get_conf_db_file(): return os.path.join(d, "{}.db".format(__pypi_packagename__)) -_conn = None - - -def _unset_conn(): - global _conn - _conn = None - - def _get_conn(): - global _conn - if _conn is None: - conn = sqlite3.connect(get_conf_db_file()) - conn.isolation_level = None - conn.row_factory = sqlite3.Row - conn.execute('PRAGMA journal_mode=WAL') - conn.execute( - """CREATE TABLE IF NOT EXISTS discovery_cache ( - url TEXT NOT NULL, - expiry TEXT NOT NULL, - content TEXT NOT NULL, - PRIMARY KEY (url) - )""" - ) - conn.execute( - """CREATE TABLE IF NOT EXISTS config ( - name TEXT NOT NULL, - content TEXT NOT NULL, - PRIMARY KEY (name) - )""" - ) - _conn = conn - return _conn + conn = sqlite3.connect(get_conf_db_file()) + conn.isolation_level = None + conn.row_factory = sqlite3.Row + conn.execute('PRAGMA journal_mode=WAL') + conn.execute( + """CREATE TABLE IF NOT EXISTS discovery_cache ( + url TEXT NOT NULL, + expiry TEXT NOT NULL, + content TEXT NOT NULL, + PRIMARY KEY (url) + )""" + ) + conn.execute( + """CREATE TABLE IF NOT EXISTS config ( + name TEXT NOT NULL, + content TEXT NOT NULL, + PRIMARY KEY (name) + )""" + ) + return conn def get_discovery_cache(url): diff --git a/requirements_dev.txt b/requirements_dev.txt index 2a3197fa..c755628d 100644 --- a/requirements_dev.txt +++ b/requirements_dev.txt @@ -2,7 +2,7 @@ flake8 coverage pytest -mock +pytest-mock # Doc sphinx diff --git a/tests/test_cli.py b/tests/test_cli.py index c9dfdb65..643ea0f3 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -1,8 +1,7 @@ from lumapps.api.cli import load_config, parse_args, list_configs -from lumapps.api.utils import set_config, _unset_conn +from lumapps.api.utils import set_config, _get_conn import pytest -from mock import patch, MagicMock def test_load_config(): @@ -20,16 +19,15 @@ def test_arg_parser(): arg_parser, args = parse_args(["--user", "foo"]) -@patch("lumapps.api.utils.get_conf_db_file", MagicMock(return_value=":memory:")) -def test_list_configs_1(capsys): - _unset_conn() +def test_list_configs_1(capsys, mocker): + mocker.patch("lumapps.api.utils.get_conf_db_file", return_value=":memory:") list_configs() assert capsys.readouterr().out.startswith("There are no saved configs") -@patch("lumapps.api.utils.get_conf_db_file", MagicMock(return_value=":memory:")) -def test_list_configs_2(capsys): - _unset_conn() +def test_list_configs_2(capsys, mocker): + mocker.patch("lumapps.api.utils.get_conf_db_file", return_value=":memory:") + mocker.patch("lumapps.api.utils._get_conn", return_value=_get_conn()) set_config("foo", "bar") list_configs() assert "foo" in capsys.readouterr().out diff --git a/tests/test_utils.py b/tests/test_utils.py index 81b6ffa2..a5389824 100644 --- a/tests/test_utils.py +++ b/tests/test_utils.py @@ -1,7 +1,5 @@ from datetime import datetime, timedelta -from mock import patch, MagicMock - from lumapps.api.utils import ( list_prune_filters, _DiscoveryCacheDict, @@ -10,7 +8,7 @@ get_config_names, set_config, get_config, - _unset_conn, + _get_conn, ) @@ -24,7 +22,9 @@ def test_discovery_cache_1(): assert DiscoveryCache == _DiscoveryCacheSqlite -def test_discovery_cache_dict(): +def test_discovery_cache_dict(mocker): + mocker.patch("lumapps.api.utils.get_conf_db_file", return_value=":memory:") + mocker.patch("lumapps.api.utils._get_conn", return_value=_get_conn()) c = _DiscoveryCacheDict assert c.get('foobar.com') is None c.set('foobar.com', "bla") @@ -33,18 +33,18 @@ def test_discovery_cache_dict(): assert c.get('foobar.com') is None -@patch("lumapps.api.utils.get_conf_db_file", MagicMock(return_value=":memory:")) -def test_discovery_cache_sqlite(): - _unset_conn() +def test_discovery_cache_sqlite(mocker): + mocker.patch("lumapps.api.utils.get_conf_db_file", return_value=":memory:") + mocker.patch("lumapps.api.utils._get_conn", return_value=_get_conn()) c = _DiscoveryCacheSqlite assert c.get('foobar.com') is None c.set('foobar.com', "bla") assert c.get('foobar.com') == "bla" -@patch("lumapps.api.utils.get_conf_db_file", MagicMock(return_value=":memory:")) -def test_get_set_configs(): - _unset_conn() +def test_get_set_configs(mocker): + mocker.patch("lumapps.api.utils.get_conf_db_file", return_value=":memory:") + mocker.patch("lumapps.api.utils._get_conn", return_value=_get_conn()) assert len(get_config_names()) == 0 set_config("foo", "bar") assert len(get_config_names()) == 1