Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
fb957ec5
Commit
fb957ec5
authored
Nov 23, 2006
by
Francois Gouget
Committed by
Alexandre Julliard
Nov 24, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
comctl32/tests: Fix the CheckDPA() tests.
There is no guarantee that the compiler will compute the function arguments in left-to-right order.
parent
26b2cdf8
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
42 additions
and
18 deletions
+42
-18
dpa.c
dlls/comctl32/tests/dpa.c
+42
-18
No files found.
dlls/comctl32/tests/dpa.c
View file @
fb957ec5
...
...
@@ -202,6 +202,7 @@ static void test_dpa(void)
PVOID
p
;
DWORD
dw
,
dw2
,
dw3
;
HRESULT
hRes
;
BOOL
rc
;
GetSystemInfo
(
&
si
);
hHeap
=
HeapCreate
(
0
,
1
,
2
);
...
...
@@ -219,7 +220,8 @@ static void test_dpa(void)
ok
(
pDPA_SetPtr
(
dpa
,
1
,
(
PVOID
)
6
),
"
\n
"
);
/* Fill the greated gap */
ok
(
pDPA_SetPtr
(
dpa
,
0
,
(
PVOID
)
5
),
"
\n
"
);
ok
(
CheckDPA
(
dpa
,
0x56
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa
,
0x56
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
/* Prepend item */
ret
=
pDPA_InsertPtr
(
dpa
,
1
,
(
PVOID
)
1
);
...
...
@@ -234,7 +236,8 @@ static void test_dpa(void)
ret
=
pDPA_InsertPtr
(
dpa
,
DPA_APPEND
,
(
PVOID
)
4
);
ok
(
ret
==
5
,
"ret=%d
\n
"
,
ret
);
ok
(
CheckDPA
(
dpa
,
0x516324
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa
,
0x516324
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
for
(
i
=
1
;
i
<=
6
;
i
++
)
{
...
...
@@ -247,24 +250,29 @@ static void test_dpa(void)
/* Sort DPA */
ok
(
pDPA_Sort
(
dpa
,
CB_CmpGT
,
0xdeadbeef
),
"
\n
"
);
ok
(
CheckDPA
(
dpa
,
0x654321
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa
,
0x654321
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
/* Clone into a new DPA */
dpa2
=
pDPA_Clone
(
dpa
,
NULL
);
ok
(
dpa2
!=
NULL
,
"
\n
"
);
/* The old data should have been preserved */
ok
(
CheckDPA
(
dpa2
,
0x654321
,
&
dw2
),
"dw=0x%x
\n
"
,
dw2
);
rc
=
CheckDPA
(
dpa2
,
0x654321
,
&
dw2
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw2
);
ok
(
pDPA_Sort
(
dpa
,
CB_CmpLT
,
0xdeadbeef
),
"
\n
"
);
/* Test if the DPA itself was really copied */
ok
(
CheckDPA
(
dpa
,
0x123456
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
ok
(
CheckDPA
(
dpa2
,
0x654321
,
&
dw2
),
"dw2=0x%x
\n
"
,
dw2
);
rc
=
CheckDPA
(
dpa
,
0x123456
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa2
,
0x654321
,
&
dw2
);
ok
(
rc
,
"dw2=0x%x
\n
"
,
dw2
);
/* Clone into an old DPA */
p
=
NULL
;
SetLastError
(
ERROR_SUCCESS
);
p
=
pDPA_Clone
(
dpa
,
dpa3
);
ok
(
p
==
dpa3
,
"p=%p
\n
"
,
p
);
ok
(
CheckDPA
(
dpa3
,
0x123456
,
&
dw3
),
"dw3=0x%x
\n
"
,
dw3
);
rc
=
CheckDPA
(
dpa3
,
0x123456
,
&
dw3
);
ok
(
rc
,
"dw3=0x%x
\n
"
,
dw3
);
for
(
i
=
1
;
i
<=
6
;
i
++
)
{
...
...
@@ -297,7 +305,8 @@ static void test_dpa(void)
/* Delete the third item */
p
=
pDPA_DeletePtr
(
dpa
,
2
);
ok
(
p
==
(
PVOID
)
3
,
"p=%p
\n
"
,
p
);
ok
(
CheckDPA
(
dpa
,
0x12456
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa
,
0x12456
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
/* Check where to re-insert the deleted item */
i
=
pDPA_Search
(
dpa
,
(
PVOID
)
3
,
0
,
...
...
@@ -315,7 +324,8 @@ static void test_dpa(void)
/* Re-insert the item */
ret
=
pDPA_InsertPtr
(
dpa
,
2
,
(
PVOID
)
3
);
ok
(
ret
==
2
,
"ret=%d i=%d
\n
"
,
ret
,
2
);
ok
(
CheckDPA
(
dpa
,
0x123456
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa
,
0x123456
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
/* When doing a binary search while claiming reverse order all indexes
* should be bogus */
...
...
@@ -332,12 +342,17 @@ static void test_dpa(void)
p
=
pDPA_DeletePtr
(
dpa
,
1
);
p
=
pDPA_DeletePtr
(
dpa
,
2
);
p
=
pDPA_DeletePtr
(
dpa
,
3
);
ok
(
CheckDPA
(
dpa
,
0x135
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa
,
0x135
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
/* Delete all odd entries from dpa2 */
pDPA_Merge
(
dpa2
,
dpa
,
DPAM_DELETE
,
CB_CmpLT
,
CB_MergeDeleteOddSrc
,
0xdeadbeef
);
todo_wine
ok
(
CheckDPA
(
dpa2
,
0x246
,
&
dw2
),
"dw=0x%x
\n
"
,
dw2
);
todo_wine
{
rc
=
CheckDPA
(
dpa2
,
0x246
,
&
dw2
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw2
);
}
/* Merge dpa3 into dpa2 and dpa */
pDPA_Merge
(
dpa
,
dpa3
,
DPAM_INSERT
|
DPAM_NOSORT
,
...
...
@@ -345,16 +360,20 @@ static void test_dpa(void)
pDPA_Merge
(
dpa2
,
dpa3
,
DPAM_INSERT
|
DPAM_NOSORT
,
CB_CmpLT
,
CB_MergeInsertSrc
,
0xdeadbeef
);
ok
(
CheckDPA
(
dpa
,
0x123456
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
ok
(
CheckDPA
(
dpa2
,
0x123456
,
&
dw2
),
"dw2=0x%x
\n
"
,
dw2
);
ok
(
CheckDPA
(
dpa3
,
0x123456
,
&
dw3
),
"dw3=0x%x
\n
"
,
dw3
);
rc
=
CheckDPA
(
dpa
,
0x123456
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
rc
=
CheckDPA
(
dpa2
,
0x123456
,
&
dw2
);
ok
(
rc
,
"dw2=0x%x
\n
"
,
dw2
);
rc
=
CheckDPA
(
dpa3
,
0x123456
,
&
dw3
);
ok
(
rc
,
"dw3=0x%x
\n
"
,
dw3
);
}
if
(
pDPA_EnumCallback
)
{
nEnum
=
0
;
pDPA_EnumCallback
(
dpa2
,
CB_EnumFirstThree
,
(
PVOID
)
dpa2
);
ok
(
CheckDPA
(
dpa2
,
0x777456
,
&
dw2
),
"dw=0x%x
\n
"
,
dw2
);
rc
=
CheckDPA
(
dpa2
,
0x777456
,
&
dw2
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw2
);
ok
(
nEnum
==
3
,
"nEnum=%d
\n
"
,
nEnum
);
}
...
...
@@ -364,7 +383,8 @@ static void test_dpa(void)
ok
(
ret
==
0x12345
,
"ret=%d
\n
"
,
ret
);
pDPA_DeleteAllPtrs
(
dpa2
);
ok
(
CheckDPA
(
dpa2
,
0
,
&
dw2
),
"dw2=0x%x
\n
"
,
dw2
);
rc
=
CheckDPA
(
dpa2
,
0
,
&
dw2
);
ok
(
rc
,
"dw2=0x%x
\n
"
,
dw2
);
pDPA_Destroy
(
dpa2
);
if
(
pDPA_DestroyCallback
)
...
...
@@ -402,8 +422,12 @@ static void test_dpa(void)
hRes
=
IStream_Seek
(
pStm
,
liZero
,
STREAM_SEEK_SET
,
NULL
);
ok
(
hRes
==
S_OK
,
"hRes=0x%x
\n
"
,
hRes
);
hRes
=
pDPA_LoadStream
(
&
dpa
,
CB_Load
,
pStm
,
0xdeadbeef
);
todo_wine
ok
(
hRes
==
S_OK
,
"hRes=0x%x
\n
"
,
hRes
);
todo_wine
ok
(
CheckDPA
(
dpa
,
0x123456
,
&
dw
),
"dw=0x%x
\n
"
,
dw
);
todo_wine
{
ok
(
hRes
==
S_OK
,
"hRes=0x%x
\n
"
,
hRes
);
rc
=
CheckDPA
(
dpa
,
0x123456
,
&
dw
);
ok
(
rc
,
"dw=0x%x
\n
"
,
dw
);
}
pDPA_Destroy
(
dpa
);
ret
=
IStream_Release
(
pStm
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment