Commit Graph

470 Commits

Author SHA1 Message Date
Huw Davies f9d48e7ba0 ole32/tests: win9x and winme don't have CF_UNICODETEXT. 2009-04-22 14:43:17 +02:00
Huw Davies 508d6db8e2 ole32/tests: win9x, winme and nt4 ignore the target device. 2009-04-22 14:43:13 +02:00
Huw Davies 57d555c796 ole32/tests: OleGetClipboard doesn't return the same object under win9x, winme and nt4. 2009-04-22 14:43:09 +02:00
Huw Davies 08d4352f9b ole32: Add support for enumerating non-ole clipboard formats. 2009-04-21 13:26:17 +02:00
Huw Davies 575b0e1435 ole32: Don't set cf_dataobject if we're clearing the clipboard. 2009-04-21 13:21:19 +02:00
Huw Davies 1e73a54690 ole32: Check that the target devices match. 2009-04-21 13:16:48 +02:00
Huw Davies aadd07ca9d ole32/tests: Tests for a flushed clipboard. 2009-04-16 11:37:39 -05:00
Huw Davies 718831b77c ole32/tests: Add a few more reference count tests. 2009-04-16 11:36:53 -05:00
Huw Davies fca4ed5596 ole32: After a call to GetData the consumer should hold a ref on the source data object. 2009-04-16 11:36:42 -05:00
Huw Davies df08d463c9 ole32: The consumer data object is not a singleton, but reflects the state of the clipboard when it was acquired. 2009-04-16 11:36:00 -05:00
Huw Davies f8a1b7e5a5 ole32/tests: Tests that show the consumer data object isn't a singleton. 2009-04-16 11:35:24 -05:00
Alexandre Julliard c378490d7d ole32/tests: Avoid size_t in traces. 2009-04-08 16:09:52 +02:00
Huw Davies 126ec0181f ole32/tests: Set tymed in GetData and AddRef the interfaces (ReleaseStgMedium releases them even if pUnkForRelease is non-NULL). 2009-04-01 15:23:03 +02:00
Huw Davies 61fa9bb061 ole32/tests: Add some tests for stream data. 2009-03-31 15:00:38 +02:00
Huw Davies d28d731b61 ole32/tests: Add broken return value for win98. 2009-03-31 15:00:33 +02:00
Huw Davies 5492fd2b0d ole32/tests: On win9x GetClipboardData returns a new handle. 2009-03-31 15:00:28 +02:00
Huw Davies 59501e037b ole32/tests: Tests for EnumFormatEtc. 2009-03-30 16:42:46 +02:00
Huw Davies 89dcb968a3 ole32/tests: Fix DVTARGETDEVICE offsets. 2009-03-30 16:42:41 +02:00
Huw Davies 690202440e ole32: Set the 'Ole Private Data' clipboard format. 2009-03-26 16:11:24 +01:00
Huw Davies b7a2e83ddb ole32: OleFlushClipboard shouldn't call EmptyClipboard. 2009-03-26 16:11:21 +01:00
Huw Davies b75caee2ab ole32/tests: Tests for the 'Ole Private Data' clipboard format. 2009-03-25 15:43:36 +01:00
Huw Davies ef4b6b8749 ole32: Store the ole clipboard window's HWND in the DataObject clipboard format. 2009-03-23 15:52:18 +01:00
Michael Stefaniuc efbb4ebf3e widl: Output "LONG" instead of "long" for a 32bit integer.
long is always 32bit in IDL files but that's not true in C.
2009-03-13 11:15:21 +01:00
Paul Vriens e31df3616a ole32/tests: Remove an unused function declaration. 2009-03-06 15:39:30 +01:00
Huw Davies 561df2f1c6 ole32: Add support for VT_DECIMAL. 2009-03-06 15:39:02 +01:00
Huw Davies 5e0d4c774c ole32/tests: win9x and winnt don't include the trailing '\0'. 2009-02-26 15:13:26 +01:00
Alexandre Julliard b55f6dfed5 ole32/tests: Don't hang forever in the child process. 2009-02-17 14:58:45 +01:00
Rob Shearman 2803516d26 ole32: Round the extected size in the marshal and moniker tests using the results of sizing a global, not a heap pointer.
The rounding isn't the same on Win9x, and the size being compared to
is that of a global handle.
2009-02-17 12:47:53 +01:00
Rob Shearman ad880ba057 ole32: Fix a test failure in the moniker tests on Win9x.
Also fix a crash in running the tests on Win95.
2009-02-11 11:42:21 +01:00
Rob Shearman 1e8ae571f5 ole32: Fix some test failures in the free threaded marshaller tests on Win9x & NT4.
These platforms only write 8 bytes into the stream so cope appropriately.
2009-02-11 11:42:17 +01:00
Rob Shearman b859d2052b ole32: Allow some optional methods to be called in the OleCreate tests.
Fixes failures in these tests on NT4.
2009-02-09 14:03:09 +01:00
Rob Shearman d26250fd08 ole32: Add framework in the ole2 tests for having optionally called methods. 2009-02-09 14:03:03 +01:00
Rob Shearman db851a1d2a ole32: Output the size that we didn't expect in the HGLOBAL marshalling tests. 2009-02-09 14:02:29 +01:00
Rob Shearman f2b17029aa ole32: Fix some test failures in the HGLOBAL marshalling tests on 64-bit Windows. 2009-02-09 13:58:07 +01:00
Rob Shearman 2eca96af67 ole32: Fix CLIPFORMAT marshalling on 64-bit platforms by not using the wireCLIPFORMAT type.
The wireCLIPFORMAT represents the memory equivalent format of the wire
format and not the wire format itself.

Also update the tests to do the same.
2009-02-09 13:58:04 +01:00
Rob Shearman 40660894c8 ole32: Fix an ole2 test failure on Win9x and NT4.
The combination of CF_BITMAP and TYMED_GLOBAL isn't accepted on newer
versions of Windows, so mark it as broken.
2009-02-06 13:03:16 +01:00
Rob Shearman 712e33e669 ole32: Initialise more of the context passed into user marshaling functions in the tests for these functions. 2009-02-02 11:55:29 +01:00
Ge van Geldorp 4b27dfec93 ole32/tests: Write to HKCR instead of HKCU/Software/Classes for the benefit of older Windows versions. 2009-01-29 15:59:39 +01:00
Rob Shearman 0025bdf607 ole32: Fix a missing CoUninitialize in test_CoFreeUnusedLibraries. 2009-01-28 14:15:48 +01:00
Rob Shearman 9353dff5b3 ole32: Fix some tests that fail on NT4 and Win9x.
Round the expected sizes up to the alignment used by HeapSize, which
is 4 on Win9x and NT4 but 1 in more recent versions.

Additionally fix an IGlobalInterfaceTable test which erroneously
succeeds on these older OSs.
2009-01-28 14:15:42 +01:00
Ge van Geldorp f7a34db378 ole32/tests: Some Windows versions need the class to be registered. 2009-01-26 16:06:02 +01:00
Michael Stefaniuc bdbfac5996 ole32/tests: Remove superfluous pointer casts. 2009-01-20 12:34:31 +01:00
Andrey Turkin a06f568a2a ole32: Add CoGetCallContext and CoSwitchCallContext implementations. 2009-01-19 14:44:32 +01:00
Andrey Turkin d20ab01ed2 ole32: Do not crash in WriteClassStg if passed NULL pointer. 2009-01-15 12:42:33 +01:00
Andrey Turkin 37d27c38ce ole32: Add IContextCallback interface to context object. 2009-01-15 12:42:12 +01:00
Andrey Turkin 8ff76d24f6 ole32/tests: Add test for IContextCallback. 2009-01-14 14:16:21 +01:00
Austin English 753affe48d ole32: Add tests for CoInitializeEx. 2009-01-13 16:17:02 +01:00
Alexandre Julliard 8377b2464b ole32/tests: Fix marshalling data layout for Win64. 2009-01-10 21:06:09 +01:00
Nikolay Sivov 37d4349636 ole32: Some tests for IMoniker::IsRunning with NULL args. 2009-01-09 14:06:13 +01:00
Nikolay Sivov 11c1d7a0e7 ole32: Fix return value for DefaultHandler_GetMiscStatus. 2009-01-07 12:27:34 +01:00
Alexandre Julliard e793a2ba35 ole32/tests: Fix a structure size check for Win64. 2009-01-05 15:37:48 +01:00
Alexandre Julliard 68bd54b558 ole32/tests: Fix a pointer casting warning on 64-bit. 2009-01-03 20:14:11 +01:00
Ge van Geldorp f5df407522 ole32/tests: Add declarations which are not present in SDK headers. 2009-01-03 14:55:32 +01:00
Ge van Geldorp 69c5fca81a ole32/tests: Work around broken Windows urlmon.dll. 2009-01-03 14:55:32 +01:00
Nikolay Sivov 55658d061c ole32: Fix return value for IDataObject_GetData. 2008-12-22 10:28:37 +01:00
Nikolay Sivov 0eeb042067 ole32: Make OleSetClipboard affected by previous OleInitialize() calls. 2008-12-19 17:36:36 +01:00
Francois Gouget 0b1d8be037 ole32/tests: Make test_runnable() static. 2008-12-12 11:42:31 +01:00
Francois Gouget 3b140ccb0e Assorted spelling fixes. 2008-11-17 16:04:39 +01:00
Alexandre Julliard f8b8478f91 ole32/tests: Fix a couple of test failures on Win9x and NT4. 2008-11-13 21:45:57 +01:00
Alexandre Julliard 4bff91265a ole32/tests: Don't hardcode the Ansi codepage value. 2008-11-13 21:45:41 +01:00
Alexandre Julliard 48d41dbc37 ole32/tests: Use a CLSID that is more likely to exist on old Windows versions. 2008-11-13 21:45:25 +01:00
Alexandre Julliard 5ca20cd482 ole32/tests: Fix a couple of global stream test failures on Win9x. 2008-11-13 21:45:04 +01:00
Paul Vriens a9c3d6f207 ole32/tests: Don't crash on NT4. 2008-11-11 11:40:55 +01:00
Michael Stefaniuc 095568dfe9 ole32: Remove some superfluous casts of void pointers and zero. 2008-11-06 11:09:54 +01:00
Huw Davies 0cc2c53107 ole32: Create the '\1Ole' stream. 2008-10-28 12:14:06 +01:00
Paul Vriens 6d15749d14 ole32/tests: Fix two failures on NT4. 2008-10-09 13:01:40 +02:00
Rob Shearman f16bbf3282 ole32: Fix clipboard test failures on some versions of Windows.
Some versions of ole32 don't test that the lindex field of the
FORMATETC structure passed into functions is valid.
2008-09-29 17:25:00 -05:00
Rob Shearman 7b564cbf17 ole32: Create a dummy window for use in the drag and drop API tests.
As a window being registered for drag and drop is a system-global
property, the tests could be affected by other processes in the
system.
2008-09-29 17:24:42 -05:00
James Hawkins 6f7c2b94d4 ole32: Fix a few file access discrepancies between platforms. 2008-09-09 11:46:17 +02:00
James Hawkins e28098aee5 ole32: Fix two failing tests in win9x. 2008-09-03 14:21:43 +02:00
James Hawkins 21cde57be5 ole32: Fix a failing test in Vista. 2008-09-03 13:14:51 +02:00
Dan Hipschman 44800b6ad4 ole32: Add a widl-generated proxy file for objidl.idl. 2008-09-02 16:02:29 +02:00
Alistair Leslie-Hughes 0a1a4f7ca8 ole32: Stop crash under w2k8. 2008-08-20 13:55:43 +02:00
James Hawkins 5ea0d9d807 ole32: Storage sharing should be implemented in ole32, not the lower-level file API. 2008-08-19 13:55:53 +02:00
James Hawkins 48524c9b92 ole32: Test the file access and share modes of StgCreateDocFile. 2008-08-19 13:30:47 +02:00
Paul Vriens d46f93669d ole32/tests: Fix a test on win98 and W2K. 2008-08-18 17:04:48 +02:00
Vincent Povirk a0249babcd ole32: Always return false when asked if NULL is the current clipboard. 2008-07-21 14:36:29 +02:00
Vincent Povirk 38c5185d2e ole32: Add tests for OleIsCurrentClipboard(NULL). 2008-07-21 14:36:21 +02:00
Alexandre Julliard 79c64acc7b tests: Don't depend on the static uuid libraries in the tests.
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
James Hawkins 833c342555 ole32: Fix a few failing tests in win2k. 2008-07-08 10:48:16 +02:00
James Hawkins e71e3efe77 ole32: Fix a test failure in win9x. 2008-06-30 12:47:57 +02:00
Paul Vriens 185ad65d12 ole32/tests: Only skip the tests if we are on NT4 or below. 2008-06-10 17:43:14 +02:00
Paul Vriens b1a5b94001 ole32/tests: Fix crash on NT4 and below. 2008-06-10 11:33:40 +02:00
Paul Vriens 470a0a22f4 ole32/tests: Fix crash on W2K and below. 2008-06-10 11:33:36 +02:00
Paul Vriens dae64e67fc ole32/tests: Prevent a crash. 2008-05-30 11:50:04 +02:00
Francois Gouget 315bf2fa45 ole32/tests: Add a trailing '\n' to ok() calls. 2008-05-22 11:42:54 +02:00
Michael Karcher 3d5ea20190 ole32/tests: Test StringFromGUID2. 2008-05-20 15:45:43 +02:00
Michael Karcher a2880cc61d ole32/tests: Do not call Release if CoCreateInstance failed. 2008-05-20 15:43:54 +02:00
Alexandre Julliard dad21bbcbf makefiles: List the static libraries as normal imports instead of extra libs. 2008-04-30 14:23:55 +02:00
Rob Shearman b9f8a81d8c rpcss: When registering a moniker that is already registered in the ROT another ROT entry should still be created and a distinct cookie returned. 2008-04-29 12:35:35 +02:00
Rob Shearman 8580198dc8 ole32: Keep track of the number of weak references to an object.
This is so that an object will only be released when a weak-reference is 
used after the last weak reference has been released (either by 
CoReleaseMarshalData or CoUnmarshalInterface + Release).
2008-04-29 12:35:26 +02:00
Rob Shearman 4cb5c3b7d6 ole32: Add a test for marshaling an object as table-weak and as normal and then unmarshaling and testing that the object is released on the final release. 2008-04-29 12:35:22 +02:00
Rob Shearman 9ebebc0ecc ole32: Add tests for registering a moniker more than once in the ROT and then using it. 2008-04-29 12:35:19 +02:00
James Hawkins 1edb56cec8 ole32: Fix a few tests that fail in win2k. 2008-04-17 12:51:31 +02:00
Rob Shearman 51158a2f9c ole32: Add tests for clipboard's implementation of IDataObject_GetData. 2008-04-16 14:07:24 +02:00
Rob Shearman 2cd4117f81 ole32: Fix OLEClipbrd_IDataObject_QueryGetData to conform to the tests. 2008-04-16 14:07:19 +02:00
Rob Shearman e0ef1f061a ole32: Add some tests for OleGetClipboard.
Test the IDataObject_QueryGetData function of the returned object.
2008-04-16 14:07:14 +02:00
Reece Dunn 4fbdab7a8f ole32: Added a missing include needed for CLSID_ShellDesktop using MSVC headers. 2008-03-24 21:05:17 +01:00
Alexandre Julliard 05c7174909 tests: Add a helper routine to wait for a child process and propagate its result correctly. 2008-02-07 12:56:00 +01:00
Rob Shearman b7f3ee51b1 ole32: Add pointer moniker implementation. 2008-02-04 13:04:21 +01:00
Rob Shearman c647bb4691 ole32: Add tests for CreatePointerMoniker. 2008-02-04 13:04:04 +01:00
Rob Shearman 2456f2d43b ole32: Fix a typo in the class moniker tests. 2008-01-07 12:31:42 +01:00
Rob Shearman 34ab21d11e ole32: Register the window used in the marshal tests only once.
Destroy the windows that have been created when they are no longer needed.
2007-12-07 16:34:48 +01:00
Rob Shearman b711d35d40 ole32: Fix the test of the size returned from WdtpInterfacePointer_UserSize.
It varies on different versions of Windows, so we shouldn't test it for 
an exact value.
2007-12-04 13:32:45 +01:00
Rob Shearman 5c53b52c5a ole32: Fix a test in the WdtpInterfacePointer tests. 2007-11-29 13:35:14 +01:00
Rob Shearman 95b6167244 ole32: Fix description of what is being test in ok calls in the WdtpInterfacePointer tests. 2007-11-29 13:35:10 +01:00
Rob Shearman c111c2d685 ole32: Add tests for WdtpInterfacePointer_* functions.
Add stubs for these so that the tests link.
2007-11-27 11:40:19 +01:00
Rob Shearman 2fd5acedb7 ole32: Release the correct pointer in test_MkParseDisplayName.
Reported by Dan Kegel.
2007-11-13 23:28:05 +01:00
Rob Shearman 5d2f802359 ole32: Validate the parameters to DataCache_Cache. 2007-11-13 23:28:05 +01:00
Rob Shearman 56a624b0fe ole32: Wait forever on the ready_event in the local server tests. 2007-11-13 13:33:17 +01:00
Rob Shearman 8ee930150c ole32: Fix a memory leak in the HGLOBAL stream tests by telling CreateStreamOnHGlobal to free the memory it allocates, as we don't free it ourselves in this test. 2007-11-13 13:29:47 +01:00
Rob Shearman dd527a7d2c ole32: Fix a leak of a moniker object in test_default_handler. 2007-11-12 11:46:11 +01:00
Rob Shearman e8b9a427be ole32: Add a missing IMoniker_Release to test_MkParseDisplayName. 2007-11-12 11:45:38 +01:00
Rob Shearman b75a33a214 ole32: Add a missing IStream_Release to test_same_apartment_unmarshal_failure. 2007-11-12 11:45:30 +01:00
Rob Shearman 2e2383d5ca ole32: Add a missing IStream_Release to test_CoMarshalInterThreadInterfaceInStream. 2007-11-12 11:45:19 +01:00
Rob Shearman 1d0993341c ole32: Add tests for CoGetObjectContext. 2007-11-02 12:18:42 +01:00
Rob Shearman 2eb10c2e22 ole32: Improve the error reporting in the marshal test when CreateProcess fails. 2007-11-02 12:18:40 +01:00
Rob Shearman 5ce2d25b32 ole32: Reset the parent storage on overwritten streams so that operations on them now fail. 2007-10-22 12:36:07 +02:00
Rob Shearman 842d1b698d ole32: Add a test to show that operations on overwritten should no longer succeed. 2007-10-22 12:36:07 +02:00
Alexandre Julliard 41cf63148a Fix redundant uses of MAKEINTRESOURCE. 2007-10-18 14:16:32 +02:00
Mikolaj Zalewski 01e7891d48 ole32: OleIsRunning should return TRUE if the class doesn't implement IRunnableObject. 2007-10-10 11:18:44 +02:00
Rob Shearman 5e2d890e5d ole32: RegisterDragDrop should return E_OUTOFMEMORY in the case that COM isn't intialised, instead of CO_E_NOTINITIALIZED. 2007-10-09 17:52:46 +02:00
Alexandre Julliard 2b5376cbc1 ole32/tests: Remove test that tries to create a huge file on Windows. 2007-09-25 11:38:31 +02:00
Michael Stefaniuc d28c3ca60c ole32: Remove superfluous casts of void pointers to other pointer types. 2007-06-27 12:53:25 +02:00
Rob Shearman 30cc21196e ole32: Remove spurious AddRef of returned object on retrieval of an interface from the global interface table. 2007-05-23 12:49:50 +02:00
Rob Shearman 7d90b6ce29 ole32: Allow the getting of different interfaces from the global interface table than that with what the object was registered with. 2007-05-23 12:49:45 +02:00
Rob Shearman 05230781b0 ole32: Add more tests for global interface table functions. 2007-05-23 12:49:39 +02:00
Rob Shearman 071ea06af8 ole32: Remove a useless trace.
Remove an incorrect comment.
2007-05-22 12:19:07 +02:00
Rob Shearman dd8a736c3f ole32: The identity functions can be used from apartments other than the one the proxy was unmarshaled into.
In this case, don't use the cached This->remunk and don't cache the 
unmarshaled object in This->remunk.
2007-05-22 12:18:55 +02:00
Rob Shearman 5369d4dffd ole32: Handle MSHLFLAGS_TABLEWEAK and MSHLFLAGS_TABLESTRONG when marshaling a proxy.
Add tests for this behaviour.
2007-05-22 12:18:31 +02:00
Rob Shearman 82cfed96a7 ole32: Fix reading from an HGLOBALStreamImpl with an invalid HGLOBAL.
Add tests that show the strange behaviour of IStream_Read returning S_OK 
instead of an error code.
2007-05-18 14:42:53 +02:00
Rob Shearman 600143d4fa ole32: Create host apartments to enable isolation of objects of incompatible threading models.
There should be one host apartment per apartment. Existing apartments 
should not be re-used, except in the case of the main apartment.
2007-05-18 14:42:37 +02:00
Paul Vriens 0eeb5727b2 ole32/tests: Check for correct return value. 2007-05-14 16:45:17 +02:00
Rob Shearman b005e9ed0d ole32: Move the logic in StgCreateDocfile for "if no share mode given then DENY_NONE is the default" to before the validateSTGM check.
Add a test that shows this behaviour is correct.

Remove a test on the access mode that is redundant because it is already 
done in validateSTGM.
2007-05-10 12:15:11 +02:00
Rob Shearman 71ada5c654 ole32: Add a test for the retrieved local class object in another thread being a proxy. 2007-05-08 13:24:07 +02:00
Rob Shearman 7d7f9a59d0 ole32: Fix CoRevokeClassObject to return RPC_E_WRONG_THREAD if it was called from a different apartment than the one that called CoRegisterClassObject. 2007-05-08 13:23:51 +02:00
Rob Shearman 51f85a765b ole32: COM_GetRegisteredClassObject should only retrieve objects that were registered in the current apartment. 2007-05-08 13:23:30 +02:00
Rob Shearman e93c82e643 ole32: Add tests for in-process registered class objects not being visible from different apartments. 2007-05-08 13:23:01 +02:00
Rob Shearman 4cbca9ac3a ole32: Add test for registered class becoming invalid when apartment is destroyed. 2007-05-08 13:22:26 +02:00
Rob Shearman 1360357f92 ole32: Fix a hack which depended on the IID of the interface being marshaled
to determine whether we were marshaling the remote unknown for the
apartment or not.
2007-04-06 12:31:04 +02:00
Rob Shearman 63ea015c65 ole32: Don't release the registered drop targets in OleUninitialize.
Do it in DLL_PROCESS_DETACH instead.
2007-04-05 13:25:18 +02:00
Rob Shearman 47432cba45 ole32: Check the input hwnd is valid in RevokeDragDrop. 2007-04-05 13:25:05 +02:00
Rob Shearman 2d8ae2cf83 ole32: Check for COM not being initialised and an invalid window handle being input to RegisterDragDrop. 2007-04-05 13:24:54 +02:00
Rob Shearman db4972f1fb ole32: Add tests for drag and drop functions. 2007-04-05 13:23:59 +02:00
Rob Shearman ab7f796fcb ole32: Keep a list of the loaded dlls for each apartment.
Use it to make CoFreeUnusedLibraries per-apartment.
2007-04-04 21:28:36 +02:00
Rob Shearman 1d8879bccc ole32: Add a test that shows CoFreeUnusedLibraries only frees unused libraries from the current apartment. 2007-04-04 21:27:12 +02:00
Francois Gouget a8695bae88 ole32/tests: Spelling fix. 2007-04-03 11:22:57 +02:00
Francois Gouget f4f4eb24c8 ole32/tests: Spelling fix. 2007-04-03 11:22:52 +02:00
Francois Gouget d9e8a0f63e Remove unneeded checks on the GetModuleHandle() return value for cases where we are linked with the dll. 2007-03-28 12:36:13 +02:00
Rob Shearman f8789122aa ole32: Implement MkParseDisplayName. 2007-03-28 12:12:49 +02:00