Skip to content

Commit 43da954

Browse files
committed
tests: add test for find_or_create_user_id
1 parent 16571f5 commit 43da954

File tree

2 files changed

+45
-5
lines changed

2 files changed

+45
-5
lines changed

tests/test_iterative_telemetry.py

Lines changed: 0 additions & 5 deletions
This file was deleted.

tests/test_user_id.py

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
import os
2+
3+
import pytest
4+
5+
from iterative_telemetry import find_or_create_user_id
6+
7+
8+
@pytest.fixture(name="tmp_user_config_dir")
9+
def fixture_tmp_user_config_dir(mocker, tmp_path):
10+
def _user_config_dir(appname, *_args, **_kwargs):
11+
return str(tmp_path / appname)
12+
13+
mocker.patch("iterative_telemetry.user_config_dir", _user_config_dir)
14+
15+
return _user_config_dir
16+
17+
18+
def test_find_or_create_user_id(
19+
tmp_user_config_dir,
20+
): # pylint: disable=unused-argument
21+
created = find_or_create_user_id()
22+
23+
find_or_create_user_id.cache_clear()
24+
found = find_or_create_user_id()
25+
26+
assert created == found
27+
28+
29+
def test_legacy_find_or_create_user_id(tmp_user_config_dir):
30+
old_config_dir = tmp_user_config_dir("dvc", "iterative")
31+
old_config_file = os.path.join(old_config_dir, "user_id")
32+
33+
find_or_create_user_id.cache_clear()
34+
35+
os.makedirs(old_config_dir, exist_ok=True)
36+
with open(old_config_file, "w", encoding="utf-8") as fobj:
37+
fobj.write('{"user_id": "1234"}')
38+
39+
find_or_create_user_id.cache_clear()
40+
assert find_or_create_user_id() == "1234"
41+
42+
os.unlink(old_config_file)
43+
os.unlink(old_config_file + ".lock")
44+
os.rmdir(old_config_dir)
45+
assert find_or_create_user_id() == "1234"

0 commit comments

Comments
 (0)