move some tests into the main HPI package

This commit is contained in:
Dima Gerasimov 2023-05-25 22:14:49 +01:00 committed by karlicoss
parent 9594caa1cd
commit fcfc423a75
2 changed files with 22 additions and 10 deletions

8
my/tests/__init__.py Normal file
View file

@ -0,0 +1,8 @@
# hmm, sadly pytest --import-mode importlib --pyargs my.core.tests doesn't work properly without __init__.py
# although it works if you run either my.core or my.core.tests.sqlite (for example) directly
# so if it gets in the way could get rid of this later?
# this particularly sucks here, because otherwise would be nice if people could also just put tests for their my. packages into their tests/ directory
# maybe some sort of hack could be used later similar to handle_legacy_import?
from my.core import __NOT_HPI_MODULE__

View file

@ -1,9 +1,15 @@
import os
from pathlib import Path
from more_itertools import bucket
import pytest
import os
from my.core.cfg import tmp_config
from my.coding.commits import commits
pytestmark = pytest.mark.skipif(
os.name == 'nt',
reason='TODO figure out how to install fd-find on Windows',
@ -11,7 +17,6 @@ pytestmark = pytest.mark.skipif(
def test() -> None:
from my.coding.commits import commits
all_commits = list(commits())
assert len(all_commits) > 100
@ -27,15 +32,14 @@ def prepare(tmp_path: Path):
# - bare repos
# - canonical name
# - caching?
hpi_repo_root = Path(__file__).absolute().parent.parent
hpi_repo_root = Path(__file__).absolute().parent.parent.parent
assert (hpi_repo_root / '.git').exists(), hpi_repo_root
class commits:
emails = {'karlicoss@gmail.com'}
names = {'Dima'}
roots = [hpi_repo_root]
class config:
class commits:
emails = {'karlicoss@gmail.com'}
names = {'Dima'}
roots = [hpi_repo_root]
from my.core.cfg import tmp_config
with tmp_config() as config:
config.commits = commits
with tmp_config(modules='my.coding.commits', config=config):
yield