aboutsummaryrefslogtreecommitdiff
path: root/tests/test_functions.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_functions.py')
-rw-r--r--tests/test_functions.py51
1 files changed, 51 insertions, 0 deletions
diff --git a/tests/test_functions.py b/tests/test_functions.py
new file mode 100644
index 0000000..d71f616
--- /dev/null
+++ b/tests/test_functions.py
@@ -0,0 +1,51 @@
+import os
+from tempfile import TemporaryDirectory
+import pytest
+
+from unixreg.constants import *
+from unixreg.functions import *
+
+
+_temp_dir = TemporaryDirectory()
+os.environ["XDG_CONFIG_HOME"] = os.path.join(_temp_dir.name, "unixreg")
+
+def test_ConnectRegistry():
+ key = ConnectRegistry(None, HKEY_CURRENT_USER)
+ key.Close()
+
+ with pytest.raises(OSError):
+ key = ConnectRegistry("FakeComputer", HKEY_CURRENT_USER)
+ key.Close()
+
+def test_CreateKey():
+ def _create(key, subkey):
+ with CreateKey(key, subkey) as key:
+ CloseKey(key)
+
+ _create(HKEY_CURRENT_USER, None)
+ _create(HKEY_CURRENT_USER, "str")
+ _create(HKEY_CURRENT_USER, RegKey("RegKey"))
+
+ with pytest.raises(TypeError):
+ _create(HKEY_CURRENT_USER, 1)
+ _create(HKEY_CURRENT_USER, [])
+ _create(HKEY_CURRENT_USER, ())
+ _create(HKEY_CURRENT_USER, {})
+
+def test_QueryValue():
+ value = "value"
+ value_name = "value_name"
+
+ print(__import__("unixreg").HKEY_CURRENT_USER,)
+ key = CreateKey(HKEY_CURRENT_USER, None)
+ SetValue(key, value_name, REG_SZ, value)
+ assert QueryValue(key, value_name) == value
+
+
+def test_ExpandEnvironmentStrings():
+ _test_str = "testvar"
+ os.environ["TEST"] = _test_str
+ os.environ["HOME"] = _test_str
+
+ assert ExpandEnvironmentStrings(r"%TEST%") == os.environ["TEST"]
+ assert ExpandEnvironmentStrings(r"%USERPROFILE%") == os.environ["HOME"] \ No newline at end of file