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
9553e9bd
Commit
9553e9bd
authored
Sep 07, 2004
by
Francois Gouget
Committed by
Alexandre Julliard
Sep 07, 2004
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add trailing '\n's to ok() and trace() calls.
Point to the pre-compiled winetest binaries. A couple of small tweaks here and there.
parent
2a54aac7
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
35 additions
and
22 deletions
+35
-22
testing.sgml
documentation/testing.sgml
+35
-22
No files found.
documentation/testing.sgml
View file @
9553e9bd
...
...
@@ -65,7 +65,7 @@
When a test fails, one immediately knows what was the expected
behavior and which APIs are involved. Thus regressions caught
this way should be detected earlier, because it is easy to run
all tests on a regular basis, and easier to fix because of the
all tests on a regular basis, and
be
easier to fix because of the
reduced diagnosis work.
</para>
</listitem>
...
...
@@ -118,7 +118,8 @@
set its contents, possibly check length restrictions, and verify the
results using WM_GETTEXT. Similarly one could create a listbox and
check the effect of LB_DELETESTRING on the list's number of items,
selected items list, highlighted item, etc.
selected items list, highlighted item, etc. For concrete examples,
see <filename>dlls/user/tests/win.c</> and the related tests.
</para>
<para>
However, undocumented behavior should not be tested for unless there
...
...
@@ -167,11 +168,12 @@
following:
<screen>
<prompt>$ </>../../../tools/runtest -q -M kernel32.dll -p kernel32_test.exe.so thread.c
<prompt>$ </>../../../tools/runtest -p kernel32_test.exe.so thread.c
<prompt>$ </>../../../tools/runtest -
P wine -
p kernel32_test.exe.so thread.c
thread.c: 86 tests executed, 5 marked as todo, 0 failures.
</screen>
The '-P wine' options defines the platform that is currently being
tested. Remove the '-q' option if you want the testing framework
The '-P wine' option defines the platform that is currently being
tested and is used in conjunction with the 'todo' statements (see
below). Remove the '-q' option if you want the testing framework
to report statistics about the number of successful and failed tests.
Run <command>runtest -h</> for more details.
</para>
...
...
@@ -189,8 +191,15 @@ thread.c: 86 tests executed, 5 marked as todo, 0 failures.
<sect3>
<title>Debian GNU/Linux</title>
<para>
On Debian all you need to do is type <command>apt-get install
mingw32</>.
On Debian do <command>apt-get install mingw32</>.
</para>
<para>
The standard MinGW libraries will probably be incomplete, causing
'undefined symbol' errors. So get the latest
<ulink url="http://mirzam.it.vu.nl/mingw/">mingw-w32api RPM</>
and use <command>alien</> to either convert it to a .tar.gz file
from which to extract just the relevant files, or to convert it
to a Debian package that you will install.
</para>
</sect3>
<sect3>
...
...
@@ -241,11 +250,15 @@ thread.c: 86 tests executed, 5 marked as todo, 0 failures.
<sect2>
<title>Using pre-compiled binaries</title>
<para>
Unfortunately there are no pre-compiled binaries yet. However if
send an email to the Wine development list you can probably get
someone to send them to you, and maybe motivate some kind soul to
put in place a mechanism for publishing such binaries on a regular
basis.
The simplest solution is to download the
<ulink url="http://www.astro.gla.ac.uk/users/paulm/WRT/CrossBuilt/winetest-latest.exe">latest
version of winetest</>. This executable contains all the Wine
conformance tests, runs them and reports the results.
</para>
<para>
You can also get the older versions from
<ulink url="http://www.astro.gla.ac.uk/users/paulm/WRT/CrossBuilt/">Paul
Millar's website</>.
</para>
</sect2>
<sect2>
...
...
@@ -322,7 +335,7 @@ thread.c: 86 tests executed, 5 marked as todo, 0 failures.
method. So to run the kernel 'path' tests you would do:
<screen>
<prompt>C:\></>cd dlls\kernel\tests\Output\Win32_MSVC_Headers
<prompt>C:\
dlls\kernel\tests\Output\Win32_MSVC_Headers></>
kernel32_test path
<prompt>C:\
wine\dlls\kernel\tests\Output\Win32_MSVC_Headers></>
kernel32_test path
</screen>
</para></listitem>
</itemizedlist>
...
...
@@ -386,8 +399,8 @@ START_TEST(paths)
You can use <function>trace</> to print informational messages. Note
that these messages will only be printed if 'runtest -v' is being used.
<screen>
trace("testing GlobalAddAtomA");
trace("foo=%d",foo);
trace("testing GlobalAddAtomA
\n
");
trace("foo=%d
\n
",foo);
</screen>
</para>
<para>
...
...
@@ -395,8 +408,8 @@ START_TEST(paths)
they behaved as expected:
<screen>
ATOM atom = GlobalAddAtomA( "foobar" );
ok( GlobalFindAtomA( "foobar" ) == atom, "could not find atom foobar" );
ok( GlobalFindAtomA( "FOOBAR" ) == atom, "could not find atom FOOBAR" );
ok( GlobalFindAtomA( "foobar" ) == atom, "could not find atom foobar
\n
" );
ok( GlobalFindAtomA( "FOOBAR" ) == atom, "could not find atom FOOBAR
\n
" );
</screen>
The first parameter of <function>ok</> is an expression which must
evaluate to true if the test was successful. The next parameter is a
...
...
@@ -431,7 +444,7 @@ START_TEST(paths)
of a bad error message:
<screen>
ok(GetThreadPriorityBoost(curthread,&disabled)!=0,
"GetThreadPriorityBoost Failed");
"GetThreadPriorityBoost Failed
\n
");
</screen>
This will yield:
<screen>
...
...
@@ -451,7 +464,7 @@ thread.c:123: Test failed: GetThreadPriorityBoost Failed
BOOL rc;
...
rc=GetThreadPriorityBoost(curthread,&disabled);
ok(rc!=0 && disabled==0,"rc=%d error=%ld disabled=%d",
ok(rc!=0 && disabled==0,"rc=%d error=%ld disabled=%d
\n
",
rc,GetLastError(),disabled);
</screen>
This will yield:
...
...
@@ -485,7 +498,7 @@ thread.c:123: Test failed: rc=0 error=120 disabled=0
for some tests you may want to define a macro such as the following:
<screen>
#define eq(received, expected, label, type) \
ok((received) == (expected), "%s: got " type " instead of " type, (label),(received),(expected))
ok((received) == (expected), "%s: got " type " instead of " type
"\n"
, (label),(received),(expected))
...
...
...
@@ -512,7 +525,7 @@ thread.c:123: Test failed: rc=0 error=120 disabled=0
<screen>
todo_wine {
SetLastError( 0xdeadbeef );
ok( GlobalAddAtomA(0) == 0 && GetLastError() == 0xdeadbeef, "failed to add atom 0" );
ok( GlobalAddAtomA(0) == 0 && GetLastError() == 0xdeadbeef, "failed to add atom 0
\n
" );
}
</screen>
On Windows the above check would be performed normally, but on Wine it
...
...
@@ -567,7 +580,7 @@ ok ( GetLastError() == WIN9X_ERROR || GetLastError() == NT_ERROR, ...);
<!-- FIXME: Strategies for testing threads, testing network stuff,
file handling
, eq macro
... -->
file handling... -->
</chapter>
...
...
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