38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
-
+
-
-
+
+
+
+
+
+
-
-
+
+
+
-
+
+
-
+
+
+
+
|
TEST(@"+[OFWindowsRegistryKey localMachineKey]",
[OFWindowsRegistryKey localMachineKey])
TEST(@"+[OFWindowsRegistryKey usersKey]",
[OFWindowsRegistryKey usersKey])
TEST(@"-[openSubkeyAtPath:securityAndAccessRights:]",
TEST(@"-[openSubkeyAtPath:accessRights:options:] #1",
(softwareKey = [[OFWindowsRegistryKey currentUserKey]
openSubkeyAtPath: @"Software"
securityAndAccessRights: KEY_ALL_ACCESS]) &&
openSubkeyAtPath: @"Software"
accessRights: KEY_ALL_ACCESS
options: 0]))
EXPECT_EXCEPTION(@"-[openSubkeyAtPath:accessRights:options:] #2",
OFOpenWindowsRegistryKeyFailedException,
[[OFWindowsRegistryKey currentUserKey]
openSubkeyAtPath: @"nonexistent"
securityAndAccessRights: KEY_ALL_ACCESS] == nil)
openSubkeyAtPath: @"nonexistent"
accessRights: KEY_ALL_ACCESS
options: 0])
TEST(@"-[createSubkeyAtPath:securityAndAccessRights:]",
TEST(@"-[createSubkeyAtPath:accessRights:securityAttributes:options:"
@"disposition:]",
(objFWKey = [softwareKey createSubkeyAtPath: @"ObjFW"
securityAndAccessRights: KEY_ALL_ACCESS]))
accessRights: KEY_ALL_ACCESS
securityAttributes: NULL
options: 0
disposition: NULL]))
TEST(@"-[setData:forValueNamed:type:]",
R([objFWKey setData: data forValueNamed: @"data" type: REG_BINARY]))
TEST(@"-[dataForValueNamed:subkeyPath:flags:type:]",
[[objFWKey dataForValueNamed: @"data" type: &type] isEqual: data] &&
type == REG_BINARY)
|