author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Tue, 02 Jan 2018 16:29:05 +0000 | |
branch | jv |
changeset 1966 | 99c870d21885 |
parent 1566 | 2ca58098256d |
child 1974 | f2eaf05205d6 |
permissions | -rw-r--r-- |
1447 | 1 |
"{ Package: 'stx:goodies/regression' }" |
344 | 2 |
|
3 |
"{ NameSpace: RegressionTests }" |
|
4 |
||
5 |
TestCase subclass:#Win32OperatingSystemTest |
|
675 | 6 |
instanceVariableNames:'' |
7 |
classVariableNames:'' |
|
8 |
poolDictionaries:'' |
|
1161 | 9 |
category:'tests-Regression-RuntimeSystem' |
344 | 10 |
! |
11 |
||
12 |
||
13 |
!Win32OperatingSystemTest methodsFor:'release'! |
|
14 |
||
1566
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
15 |
setUp |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
16 |
self skipIf: OperatingSystem isMSWINDOWSlike not description: 'Windows specific tests'. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
17 |
super setUp |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
18 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
19 |
"Created: / 28-12-2016 / 22:12:14 / jv" |
344 | 20 |
! ! |
21 |
||
22 |
!Win32OperatingSystemTest methodsFor:'tests'! |
|
23 |
||
24 |
testMutex |
|
25 |
|handle alreadyExists lastErrorCode handleAndLastErrorCode| |
|
26 |
||
27 |
handleAndLastErrorCode := Win32OperatingSystem createMutexNamed: '8906f5e0-54ed-11dd-9da4-001558137da0'. |
|
28 |
handle := handleAndLastErrorCode first. |
|
29 |
handle isNil ifTrue:[^ self]. |
|
30 |
lastErrorCode := handleAndLastErrorCode second. |
|
31 |
self assert: lastErrorCode == 0. |
|
32 |
alreadyExists := (lastErrorCode == 5 "ERROR_ACCESS_DENIED" or:[ lastErrorCode == 183 "ERROR_ALREADY_EXISTS"]). |
|
33 |
alreadyExists ifTrue:[ |
|
1566
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
34 |
Transcript showCR: 'Mutex already exists!!'. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
35 |
^ self. |
344 | 36 |
]. |
354 | 37 |
Transcript showCR: 'Mutex created!!'. |
344 | 38 |
Win32OperatingSystem waitForSingleObject: handle. |
355 | 39 |
Delay waitForSeconds:0.5. "/ self halt. |
344 | 40 |
Win32OperatingSystem releaseMutex: handle. |
41 |
Win32OperatingSystem primCloseHandle: handle. |
|
354 | 42 |
Transcript showCR: 'Mutex closed!!'. |
344 | 43 |
|
44 |
" |
|
45 |
self new testMutex |
|
46 |
" |
|
1566
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
47 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
48 |
"Modified: / 28-12-2016 / 22:13:37 / jv" |
1352 | 49 |
! |
50 |
||
51 |
testRegistry |
|
52 |
|k hasContentType| |
|
53 |
||
54 |
k := OperatingSystem registryEntry key:'HKEY_CLASSES_ROOT\MIME\Database\'. |
|
55 |
self assert:(k notNil). |
|
56 |
||
57 |
hasContentType := false. |
|
1447 | 58 |
k subKeyNamesAndClassesDo:[:nm :clsNm | |
1566
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
59 |
"/ Transcript showCR:nm. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
60 |
nm = 'Content Type' ifTrue:[hasContentType := true]. |
1352 | 61 |
]. |
62 |
self assert:hasContentType. |
|
63 |
||
64 |
"/ k subKeysDo:[:k | Transcript showCR:k]. |
|
65 |
||
66 |
" |
|
67 |
self new testRegistry |
|
68 |
" |
|
1566
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
69 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
70 |
"Modified: / 28-12-2016 / 22:13:43 / jv" |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
71 |
! |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
72 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
73 |
testRegistry02a |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
74 |
| root key | |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
75 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
76 |
root :=OperatingSystem registryEntry key:'HKEY_CURRENT_USER'. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
77 |
root deleteSubKeyNamed: testSelector. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
78 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
79 |
self assert:(root subKeyNamed: testSelector) isNil. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
80 |
self deny: (root deleteSubKeyNamed: testSelector). |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
81 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
82 |
key := root createSubKeyNamed:testSelector. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
83 |
self assert: key notNil. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
84 |
self assert:(root subKeyNamed: testSelector) notNil. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
85 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
86 |
self assert: (root deleteSubKeyNamed:testSelector). |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
87 |
self assert:(root subKeyNamed: testSelector) isNil. |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
88 |
self deny: (root deleteSubKeyNamed: testSelector). |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
89 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
90 |
"Created: / 28-12-2016 / 23:14:15 / jv" |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
91 |
"Modified: / 05-01-2017 / 21:45:20 / jv" |
344 | 92 |
! ! |
93 |
||
94 |
!Win32OperatingSystemTest class methodsFor:'documentation'! |
|
95 |
||
96 |
version |
|
97 |
^ '$Header$' |
|
1566
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
98 |
! |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
99 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
100 |
version_HG |
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
101 |
|
2ca58098256d
Issue #109: Added tests for registry key creation / deletion
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
1500
diff
changeset
|
102 |
^ '$Changeset: <not expanded> $' |
344 | 103 |
! ! |
1161 | 104 |