Commit Graph

322 Commits

Author SHA1 Message Date
Robert Shearman
385e693e44 ole: Test and implement LPSAFEARRAY marshaling. 2006-01-27 12:54:22 +01:00
Dmitry Timoshkov
57a579ffcd Make more arrays const. 2006-01-24 14:00:32 +01:00
Michael Stefaniuc
ba23adba41 oleaut: Add missing SysFreeString to the Var{Mul,Add,Cmp} tests. 2006-01-18 11:30:23 +01:00
Michael Stefaniuc
0d00d9af0e oleaut: Merge the VarCmp tests from vartype.c into vartest.c. 2006-01-18 11:30:01 +01:00
Michael Stefaniuc
2f9c9b31ae oleaut32: Tests for the VarCmp reimplementation. 2006-01-16 21:34:59 +01:00
Robert Shearman
9f1c6bf6bc OLE: Fix SafeArrayCopy for NULL pvData.
It is allowed to copy a SAFEARRAY with a NULL pvData, as long as
cbElements is non-zero. Add a test for this and fix the safe array
code.
2005-12-12 11:52:51 +01:00
Robert Shearman
36f112973e OLE: Add tests for the typelib version of ITypeComp_Bind. 2005-12-06 21:23:19 +01:00
Michael Stefaniuc
8ec3906768 Fix VarBstrCmp for NULL input BSTRs (MSDN is wrong). 2005-12-05 12:00:24 +01:00
Alexandre Julliard
0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Marcus Meissner
c49f5f0095 Added support of loading of IPicture data from non-statable
IStreams. Added testcases for this.
2005-11-07 11:09:10 +00:00
Robert Shearman
3a0a31843e Add a test for Invoking an OleFont function. 2005-11-04 11:13:08 +00:00
Uwe Bonnes
87df07452a Extend VarCmp() and add test cases. 2005-11-03 13:21:11 +00:00
Marcus Meissner
d6e45770b5 SysReAllocString of same pointer returns TRUE. 2005-11-01 18:06:41 +00:00
Alex Villacís Lasso
c1d07134b8 Add tests for functionality implemented or corrected: multiplication,
division, cast to double, cast to string.
2005-10-27 12:09:40 +00:00
Francois Gouget
10f72c719b Add trailing '\n's to ok() calls. 2005-09-26 09:52:25 +00:00
Alexandre Julliard
7c1925a0f3 Remove the 'L' suffix on a number of constants to avoid comparison
errors on 64-bit platforms.
2005-09-13 15:00:32 +00:00
Walt Ogburn
d765cb960f Get IFontDisp type information from stdole2.tlb, instead of IDispatch
information from stdole32.tlb.
2005-09-13 10:36:54 +00:00
Marcus Meissner
bd7ec9aca5 The last argument to MultiByteToWideChar is wide character count and
not the buffer size in bytes. Fixed all places where it was wrong.
2005-09-12 22:07:53 +00:00
Alex Villacís Lasso
10f0ace4a2 Make Single|Double->BSTR conversion use the specified locale for the
decimal point even without the LOCALE_USE_NLS flag. Test supplied.
2005-09-09 15:01:17 +00:00
Alexandre Julliard
cc4da88563 Explicitly import kernel32 in tests that use it. 2005-08-27 09:27:09 +00:00
Michael Stefaniuc
4d36546c07 - VarAdd, VarMul: I4 overflows to R8 and not I8 even if the result
would fit in I8. Fix tests.
- Document a brokeness in the handling of I8 numbers in
  VarNumFromParseNum. Fix tests.
2005-08-23 09:33:37 +00:00
Walt Ogburn
9473bcbb93 Add tests for olefont size functions & conversions. 2005-08-22 09:22:52 +00:00
Saulius Krasuckas
7782e72322 Comment out VarDateFromStr() calls that generate exceptions on WinME. 2005-08-08 17:58:14 +00:00
Mike McCormack
50a6d970f5 gcc 4.0 warning fixes for Interlocked* functions. 2005-08-03 11:03:05 +00:00
Alex Villacís Lasso
3153aa9131 Ensure that underflowing negative float is represented as a positive
0, just as native oleaut32.
2005-07-19 11:38:12 +00:00
Alex Villacís Lasso
324267c4a9 Test for behavior of negative underflow formatting. 2005-07-18 10:33:12 +00:00
Francois Gouget
c7dcf642ea Add trailing '\n's to ok() calls. 2005-07-06 15:46:47 +00:00
Robert Shearman
cbc3af8ca5 - Conversions between variants types of the same size should ignore
overflows.
- Tests for this behaviour.
2005-06-29 20:15:32 +00:00
Stefan Huehner
ffe53258aa Fix some -Wstrict-prototypes warnings. 2005-06-27 09:57:28 +00:00
Michael Stefaniuc
0b1f8cdf4d - more VarFormat fixes for number formats (exponent, mixed '#' and '0'
in formats, rounding, etc). Simplify the code.
- previous VarFormat todo_wine tests pass now + add more tests
2005-06-23 09:48:07 +00:00
Stefan Huehner
ac6f562b52 Fix more -Wstrict-prototypes warnings. 2005-06-20 14:18:03 +00:00
Francois Gouget
6394a15314 Assorted spelling fixes. 2005-06-17 20:59:49 +00:00
Stefan Huehner
03cc8c4181 Remove some -Wstrict-prototypes warnings. 2005-06-17 10:11:37 +00:00
Mike McCormack
65ad7da1f7 Fix some declaration and write string warnings. 2005-06-16 10:45:25 +00:00
Saulius Krasuckas
8272074b85 Change (long long) to (LONGLONG) to compile with MSVC. 2005-06-14 12:25:29 +00:00
Michael Stefaniuc
b9208137c1 - Fix VarFormat for formats that mix '0' and '#' in the whole number
part.
- Fix VarFormat for negative exponent formats.
- Add tests for the above + a couple of "todo_wine"'s.
2005-06-14 11:39:32 +00:00
Alexandre Julliard
c2d5b444b3 Moved the NONAMELESSUNION/STRUCT macros to wine/test.h so that they
can be used in all the test.
2005-06-13 12:10:54 +00:00
Dmitry Timoshkov
eba47f1dfe Make remaining OLE interface vtables const. 2005-06-06 19:50:35 +00:00
Marcus Meissner
c834e6a96f Added testcases for OLE Picture handling.
Implemented PICTYPE_NONE loading.
Cleaned up stream loading, handle "lt" magic.
Fixed some small problems exposed by tests against native.
2005-06-06 10:03:58 +00:00
Jacek Caban
f863bb59f9 Test only stdole32.tlb as we don't have olepro32.dll in Wine. 2005-06-05 18:04:54 +00:00
Michael Stefaniuc
485d140b36 Tests for VarAdd. 2005-05-29 20:00:50 +00:00
Michael Stefaniuc
d0dbae3b18 Tests for VarMul(). 2005-05-23 11:46:36 +00:00
Richard Cohen
97bc8f6dc7 - Remove unused macro.
- Check for VT_I8 before testing it.
- VarMod returns DISP_E_OVERFLOW not E_INVALIDARG.
2005-05-23 10:26:32 +00:00
Richard Cohen
25ab9f2c0f Check if VT_R8 and VT_INT_PTR are supported before testing them. 2005-05-20 19:00:02 +00:00
Pierre d'Herbemont
342da59b0c Remove stdlib.h inclusion if winsock.h is included. 2005-05-18 15:33:20 +00:00
Jacek Caban
7ff344e20f Fixed vartype test. 2005-03-18 14:02:12 +00:00
Jon Griffiths
eb5bf7dd38 Documentation spelling fixes. 2005-02-25 14:07:56 +00:00
Rein Klazes
26771be4da SafeArrayDestroy() returns success when called with a NULL
pointer. Added to the test cases.
2005-01-31 11:31:50 +00:00
Rémi Assailly
6063b542aa char -> const char fixes. 2005-01-24 11:29:44 +00:00
Alex Villacís Lasso
ed9a359402 When parsing an hex/oct integer value, copy value verbatim in VARIANT,
rather than a negated value. Add test case for this behavior.
2005-01-17 19:34:58 +00:00
Paul Vriens
202b340a51 - use Interlocked* functions in AddRef and Release.
- store the result of the Interlocked functions and use only this.
2005-01-09 17:29:21 +00:00
Alexandre Julliard
ddd2486e98 Expand the COPYTEST macro to avoid trouble with 64-bit types. 2004-12-17 19:13:24 +00:00
Walt Ogburn
f61786d444 VarParseNumFromStr: Keep zeros after decimal point, correctly keep
track of trailing zeros in a decimal number.
VarNumFromParseNum: Don't error on decimal expressions for zero.
2004-10-21 19:55:37 +00:00
Walt Ogburn
84c1f667ae Keep "trailing" zeros on whole number part of a decimal.
Add an example of this to tests.
2004-10-19 21:08:40 +00:00
Walt Ogburn
f5c25e8067 Test that SafeArrayDestroyData keeps the pointer if FADF_STATIC is
set, nulls it otherwise.
2004-10-19 21:08:18 +00:00
Walt Ogburn
ea1b58b560 Test zero exponents with and without signs. 2004-10-18 22:35:18 +00:00
Huw Davies
76c5590bfb Don't trash the dst variant if we can't do the type conversion.
Add a test for this.
2004-09-22 19:12:18 +00:00
Marcus Meissner
a6584f5eed SafeArrayGetElement on a VARIANT array does not free the previous
VARIANT in the passed pointer. Added testcase.
2004-09-20 19:11:48 +00:00
James Hawkins
2d044dd64b Use InterlockedDecrement and InterlockedIncrement instead of ++/--. 2004-09-16 19:08:23 +00:00
Francois Gouget
27ca26bcb1 Detect whether Visual Studio can cast __uint64's to floats and disable
the relevant tests if it cannot.
Fix a double to float literal conversion warning.
2004-09-02 20:05:55 +00:00
Francois Gouget
d0f10ac268 Remove references to ICOM_THIS and WINE_UNUSED as they don't exist on
Windows.
Define COBJMACROS so we get the IRecordInfo_* macros.
2004-09-01 04:53:52 +00:00
Jacek Caban
3a2574e3cc Fix handling of VARIANT with VT_BYREF and null pointer in
VariantChangeTypeEx.
2004-08-25 00:38:59 +00:00
Robert Shearman
25b74d2cfe More safe array tests. 2004-08-24 18:42:53 +00:00
Alexandre Julliard
f714b39762 Get rid of the no longer used ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
macro.
2004-08-23 19:39:48 +00:00
Jacek Caban
bf9f8da333 Ref counting fixes. 2004-08-19 20:29:16 +00:00
Francois Gouget
08177d6d7b The Windows headers support for NONAMELESSUNION and NONAMELESSSTRUCT
is unusable. So don't force this mode. Instead check whether
NONAMELESSUNION and/or NONAMELESSSTRUCT are set (by the Wine headers)
and define custom access macros accordingly.
2004-08-13 19:49:53 +00:00
Alexandre Julliard
48c4bb3c31 Get rid of the non-standard ICOM_VTABLE macro. 2004-08-12 23:00:51 +00:00
Alexandre Julliard
0467ce9fd7 Get rid of the non-standard ICOM_VFIELD macro. 2004-08-12 19:52:49 +00:00
Francois Gouget
bf72af30d0 Modify widl to put the C COM macros inside an #ifdef COBJMACROS block
as is done in the Windows headers.
Add #define COBJMACROS where needed in Wine.
Fixes the compilation of the oleaut32/tests/olefont.c and
urlmon/tests/url.c conformance tests with the Windows headers.
2004-08-11 19:43:45 +00:00
Jon Griffiths
0d1b4239fd Trace the system and user locales upon startup.
Print the returned string if VarDateChangeTypeEx fails.
2004-05-05 19:00:21 +00:00
Jon Griffiths
d275676215 Fix failures under win2k. 2004-04-27 23:30:10 +00:00
Jon Griffiths
309ed0641e Update VarXor,VarAbs,VarNot for all input types.
Test VarOr; fix a failure with later oleaut32 versions.
Speed up compilation by sharing failure strings.
2004-04-27 23:29:58 +00:00
Jon Griffiths
30febfc87c Test ClearCustData() and UINT->I4 conversion. 2004-04-23 21:31:37 +00:00
Chris Morgan
58dcfb6205 Skip over most of the unused variant types to speed up the variant
tests.
2004-04-23 02:40:30 +00:00
Francois Gouget
ebf0eb3138 Make static Unicode strings const. 2004-04-20 00:34:52 +00:00
Francois Gouget
b948778660 Assorted spelling fixes. 2004-03-23 23:20:16 +00:00
Jon Griffiths
ad1190e4ab Tests for VarXor/VarEqv. 2004-03-22 20:39:50 +00:00
Jon Griffiths
19271d7ae9 Use function ptrs for call only present in later versions.
Fix tests that fail with old versions.
2004-03-17 20:47:42 +00:00
Fabian Cenedese
5feedfdc73 Let VarParseNumFromStr and VarNumFromParseNum cope with hex and oct
strings. Needed from VB conversions such as CLng, CInt, CByte...
2004-03-16 19:15:04 +00:00
Alexandre Julliard
589e115233 We no longer use the .exe.spec.c files. 2004-03-02 21:16:37 +00:00
Fabian Cenedese
3d7034e79e VarRound implementation (without type DECIMAL yet) with test function. 2004-02-26 05:27:11 +00:00
Chris Morgan
21d591ec4f Implement tests for VarMod().
Added char *vtstr() to enhance test debugging by returning a text
string that corresponds to the input type.
2004-02-06 05:23:48 +00:00
Francois Gouget
231fbff8d0 Add trailing '\n's to ok() calls. 2004-01-27 04:01:10 +00:00
Alexandre Julliard
20b4585e3c Only link against libdxguid where necessary. 2004-01-27 00:11:16 +00:00
Jon Griffiths
d83ed49148 Remove tests that are covered by vartype.c.
Call by pointer for more functions not available in early versions.
Add tests for VarFix/VarInt/VarNeg, VarFormat "on/off/yes/no".
Fix tests that assumed relative dates.
Make BSTR copy test separate.
2004-01-20 23:38:38 +00:00
Hans Leidekker
301bbc4984 Add missing comma. 2004-01-19 21:48:21 +00:00
Marcus Meissner
2ac287e875 Copy BSTRs byte wise.
Added a testcase for byte wise copy of VT_BSTR variant with
VariantCopy().
2004-01-09 00:58:01 +00:00
Francois Gouget
640cc3f3e1 Assorted spelling fixes. 2004-01-06 22:08:33 +00:00
Alexandre Julliard
bb0d6b7202 Commented out tests that assume that the current year is 2003. 2004-01-02 01:51:38 +00:00
Marcus Meissner
e12ef562a8 Dimensions with cElements=0 are valid and needed by InstallShield.
SafeArrayGetElement: fixed BSTR and LPUNKNOWN handling.
Added testcases for above cases.
2003-12-30 19:06:41 +00:00
Jon Griffiths
b3401e66a3 I8/UI8 are accepted in arrays in recent native dlls.
Test UDTs, array coercion and new functions.
2003-12-15 21:11:25 +00:00
Marcus Meissner
cf50f9a04e Implemented VarInt, VarPow.
Added R4 (float) support to VarAdd.
Added DATE support to VarSub.
2003-12-15 20:14:32 +00:00
Alexandre Julliard
6fee8c95b2 Avoid long long constants (reported by Gerald Pfeifer).
Added a few missing parentheses in macros.
2003-12-12 06:02:31 +00:00
Jon Griffiths
17ce98503b Test almost all of the low level variant functions 2003-12-11 05:25:44 +00:00
Jon Griffiths
7e40baadc1 Reimplement/document every low level variant function.
Implement DECIMAL, I8, UI8 types and other missing conversions.
VariantChangeType: Use LOCALE_USER_DEFAULT as per MSDN.
VariantChangeTypeEx: Support new types, pass proper flags.
VarNumFromParseNum: Support VT_DECIMAL as output.
2003-12-11 04:28:20 +00:00
Jon Griffiths
27db93dc6a Fix a couple of tests for w2k (Russian). 2003-12-10 00:37:35 +00:00
Jon Griffiths
85602c218d Fix the tests to pass when locale settings are user-overriden.
Fix those tests which pass now.
Test copying, formatting, VarAbs, VarNot.
2003-12-09 00:05:53 +00:00
Alexandre Julliard
5f8223670a Porting fixes. 2003-11-28 23:19:30 +00:00
Jon Griffiths
392cbdf7b8 Tests for the non-variant date conversion functions. 2003-11-25 01:50:10 +00:00
Daniel Marmier
0348649853 Fixed warnings with gcc option "-Wwrite-strings". 2003-10-06 21:03:32 +00:00
Jon Griffiths
72d7e5b10d Tests for recent variant changes. 2003-10-03 04:34:34 +00:00
Francois Gouget
68ea3623b8 Modify winetest_ok to only add a trailing '\n' if there is none.
Modify macros in the kernel, oleaut32 and user tests to print a '\n'.
2003-09-11 01:07:19 +00:00
Alexandre Julliard
e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Marcus Meissner
615615b0c9 OleCreateFontIndirect(NULL,...) uses the OLE StdFont.
Added testcase for OleCreateFontIndirect(NULL).
Added VT_NULL -> VT_BOOL variant converter.
2003-06-24 19:21:20 +00:00
Marcus Meissner
eee3a24dc9 Fixed index handling for multi dimensional arrays. 2003-06-13 16:35:07 +00:00
Dimitrie O. Paun
b46d8235c1 Make sure winsock.h gets included before stdlib.h. 2003-05-13 23:36:33 +00:00
Francois Gouget
18e6bb81e3 Fix the case of floats in VarBstrFromR4, VarBstrFromR8 and
VarBstrFromCy.
We cannot check for equality of floats or doubles because of rounding
errors. Check equality to 14 digits for doubles.
Add more precision to the expected results so that they match actual
results.
Print floating values with more precision so we know what went wrong.
Specify the locale for all variant functions that depend on it.
Added return codes for Win95. Win95 returns dates with only two digits
for the year.
Uncommented more VariantCopyInd and VariantChangeTypeEx tests.
2003-01-13 18:30:18 +00:00
Francois Gouget
44eb8bf59f Many oleaut32 APIs are missing on Win95/IE3. Load them dynamically.
Uncomment some 'NULL' tests as they pass on Windows and on Wine.
Comment out those that crash on Win95 and indicate why they are
commented out.
Remove two redundant tests in vartest.c (VarI1FromBool and
VarUI2FromI2, last diff hunk).
2003-01-07 19:40:40 +00:00
Francois Gouget
065e928a7b The vt field should be a VARTYPE not a VARENUM. 2003-01-05 01:03:12 +00:00
Marcus Meissner
8ff278d25e Implemented SafeArray{SetIID,GetIID,SetRecordInfo,GetRecordInfo}.
Added support for FADF_HAVEIID, FADF_RECORD, FADF_HAVEVARTYPE.
Implemented SafeArrayAllocDescriptorEx and SafeArrayGetVarType
correctly.
Fixed second argument of SafeArrayCopyData (it is just SAFEARRAY*).
Changed allocation to include 16 bytes before the SAFEARRAY (to store
IID/VARTYPE/IRecordInfo*).
VARTYPE -> size array was not indexed correctly.
Added lots of testcases for most functionality.
Added IRecordInfo interface definition.
2003-01-02 23:13:56 +00:00
Francois Gouget
236ae4d2c9 Remove unnecessary sprintf calls. 2003-01-02 17:49:51 +00:00
Francois Gouget
3b640ca405 Fix signed/unsigned warnings. 2003-01-02 17:47:01 +00:00
Francois Gouget
49e119f95f Move the test strings into their own array and convert them to unicode
using a for loop. This lets us later print the offending string when a
test fails.
Fix the MSVC compilation error (XXXe183) and warnings (put suffixes as
in 0L & 1.0F, signed/unsigned warnings, s/-2147483648/0x80000000L/).
Uncomment the DateFromStr tests and fill in the todo fields where
appropriate.
Define an NB_OLE_STRINGS macro and use it to make sure all the arrays
have the right number of fields.
In the *FromStr loops, fill the return field with a dummy value (42)
before calling the conversion function. This way a test no longer
depends on whether the previous test failed or not!
If a test is expected to fail, then retval is meaningless -> omit it
from the result arrays.
If a test actually fails or was expected to fail, then there is no
point in checking retval.
Improve error reporting.
Pass the printf-style format directly to ok, remove the unnecessary
sprintfs.
2002-12-24 00:49:27 +00:00
Marcus Meissner
7c290abd85 Fixed VarBstrCmp/Cat .spec entries.
Started regression test for SafeArray functions.
Fixed SafeArrayAllocDescriptor (check bounds, set cDims).
Fixed VARTYPE_SIZE array entries so it matches native.
2002-12-23 02:02:49 +00:00
Alexandre Julliard
edeee89c3e Create separate makefiles for tests for more flexibility. 2002-08-09 01:22:40 +00:00
Alexandre Julliard
8438d9fccb Moved succeeding test out of todo block. 2002-06-21 19:02:44 +00:00
Vincent Béron
9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Francois Gouget
4c314000b9 Make the tests compile with Visual C++. 2002-05-23 02:40:07 +00:00
Alexandre Julliard
cc2ee7636d Renamed Winelib apps to .exe.so to follow the dll naming convention. 2002-05-21 19:42:29 +00:00
Alexandre Julliard
67371bcc8d Added -res option to specify resources on winebuild command-line.
Added -exe mode to generate a .spec.c for an exe without having to
provide a .spec.
Removed some no longer needed spec files.
Removed .dll extension in makefiles import specifications.
2002-05-11 23:06:32 +00:00
Alexandre Julliard
32459912dc Moved imports specification from the .spec into the Makefile so that
it can be used on platforms that don't build a .spec.c file.
2002-05-09 00:05:48 +00:00
Marcus Meissner
e8d977011b Ported variant tests to the new testing framework. 2002-03-26 01:54:25 +00:00