mirror of
https://github.com/hakril/PythonForWindows
synced 2026-06-08 14:31:45 +00:00
44 lines
1.2 KiB
Python
44 lines
1.2 KiB
Python
import pytest
|
|
import windows
|
|
|
|
from .pfwtest import *
|
|
|
|
|
|
KNOWN_DIRECTORY_OBJECT = ("KnownDLLs", "\\KnownDLLs")
|
|
|
|
objmanager = windows.system.object_manager
|
|
|
|
@pytest.mark.parametrize("objname", KNOWN_DIRECTORY_OBJECT)
|
|
def test_directory_object(objname):
|
|
obj = objmanager[objname]
|
|
if "\\" not in objname:
|
|
assert obj.name == objname
|
|
else:
|
|
assert obj.fullname == objname
|
|
assert obj.type == "Directory"
|
|
assert obj.target is None
|
|
assert list(obj)
|
|
assert obj["kernel32.dll"]
|
|
assert obj.items()
|
|
assert obj.keys()
|
|
assert obj.values()
|
|
|
|
@pytest.mark.parametrize("objname", KNOWN_DIRECTORY_OBJECT)
|
|
def test_multiple_access_type(objname):
|
|
assert objmanager[objname]
|
|
assert objmanager.root[objname]
|
|
|
|
|
|
def test_complex_object_path():
|
|
obj = objmanager["\\KnownDLLs\\kernel32.dll"]
|
|
assert obj.name == "kernel32.dll"
|
|
assert obj.fullname == "\\KnownDLLs\\kernel32.dll"
|
|
assert obj.path == "\\KnownDLLs"
|
|
assert obj.type == "Section"
|
|
assert obj.target is None
|
|
|
|
|
|
def test_link_object():
|
|
obj = objmanager["\\KnownDLLs\\KnownDLLPath"]
|
|
assert obj.type == "SymbolicLink"
|
|
assert obj.target.lower() == "c:\windows\system32" |