Commit Graph

971 Commits

Author SHA1 Message Date
Jason Edmeades 06c45a8d59 msi: Correct the setting of environment variables.
Contrary to the MSDN, you can 'create only' whilst using a previous value
(ie +-variable and [~];value). This breaks the install of an application
I was debugging who uses that throughout for all their variables. In
addition whilst adding some tests I've also cleaned up invalid prefix
syntax handling and semicolon removal if the original string is empty.
2010-01-20 15:34:19 +01:00
Hans Leidekker 72393c55e9 msi: Add a test to exersize the code to retrieve rows from join tables. 2010-01-19 16:50:56 +01:00
André Hentschel 2e339c471e msi/tests: Remove dead url. 2010-01-06 09:52:52 +01:00
Paul Vriens 4749b079b5 msi/tests: Fix test failures on Win9x/WinMe. 2009-12-21 15:01:24 +01:00
Hans Leidekker 178ebae4c0 msi: Reset the ALLUSERS property from to 2 to 1. 2009-12-17 14:21:39 +01:00
James Hawkins 1a4a112d76 msi: Fix a leaking record handle. 2009-12-16 12:26:51 +01:00
Hans Leidekker 6df6332198 msi: Reject greater than and less than string comparisons in WHERE clauses. 2009-12-15 11:45:04 +01:00
James Hawkins 8fe8a100c8 msi: Free the enumeration data returned by IEnumSTATSTG_Next. 2009-12-14 12:20:48 +01:00
James Hawkins f4829063bc msi: Make sure we don't access pcchValueBuf when szBuffer is NULL, as pcchValueBuf is not required to be initialized in this case. 2009-12-14 12:19:52 +01:00
Alexandre Julliard 8b50188f57 msi/tests: Fix a handle leak. 2009-12-11 20:20:30 +01:00
Chris Schafer 350cdd2fe5 msi/tests: Remove some barriers to running msi tests in parallel. 2009-12-11 17:47:30 +01:00
James Hawkins 50833f0780 msi: Wine fails the test and passes us a Session object back, so free it in this case. 2009-12-11 12:16:27 +01:00
James Hawkins ae58e29e5e msi: Stub out a few more Installer object methods. 2009-12-11 12:16:26 +01:00
James Hawkins a44b653d53 msi: Fix a handle leak in the record tests. 2009-12-11 12:16:26 +01:00
Hans Leidekker 3840de5b1e msi/tests: Loosen check on kernel32 language version. 2009-12-07 14:18:29 +01:00
James Hawkins 25ab693008 msi: The second parameter to Installer.OpenPackage is optional, so set a default value of 0 if the parameter is not provided. 2009-12-07 09:49:06 +01:00
James Hawkins 1ff6c08621 msi: Verify that the first parameter to Installer.OpenPackage is a VT_BSTR.
It seems ugly to open up the parameters in pDispParams, but
DispGetParam will happily convert a VT_EMPTY to a VT_BSTR and not
return an error.
2009-12-07 09:49:06 +01:00
James Hawkins 4687604356 msi: It's possible to send in more than two parameters to Installer.OpenPackage, but sending in zero parameters should return DISP_E_TYPEMISMATCH. 2009-12-07 09:49:06 +01:00
James Hawkins b614052895 msi: Add more tests for the Installer.OpenPackage method.
The following series fixes a few leaks reported by valgrind.  We were
leaking exception info caused by Installer.OpenPackage failing when we
didn't expected it.
2009-12-07 09:49:06 +01:00
James Hawkins 7d3e664312 msi: MsiSetMode returns a UINT system error code, not a BOOL. 2009-12-04 14:34:57 +01:00
Hans Leidekker fd8620f6c0 msi/tests: Don't check more bytes than written to the file. 2009-12-01 13:16:30 +01:00
Nathan Gallaher f7ba4b2ec0 msi/tests: Test for SELECT table.column FROM table.
Make sure that mixing table columns returns the expected
data. eg:  SELECT t1.action, t2.action FROM t1, t2
should return distinct data.
2009-11-24 15:54:00 +01:00
Piotr Caban 1f7a07ebe3 oleaut32: Ignore milliseconds in VarDateFromUdate implementation. 2009-11-19 11:35:40 +01:00
Hans Leidekker bd4bc16147 msi: Don't set the ALLUSERS property. 2009-11-17 16:05:27 +01:00
Hans Leidekker 84ddfd8739 msi: Test more variations of environment string prefixes. 2009-11-13 13:35:58 +01:00
Hans Leidekker e52531ab1d msi: Handle environment strings without a value. 2009-11-13 12:21:46 +01:00
Francois Gouget 97619affe5 msi/tests: Make the handler_xxx() functions static.
Also remove extraneous semi-colons.
2009-11-09 19:40:44 +01:00
Detlef Riekenberg 0839ae88ca msi/tests: MsiSetExternalUIRecord not present before Installer 3.1. 2009-11-05 11:57:21 +01:00
Hans Leidekker 808343fb5b msi: Implement MsiSetExternalUIRecord. 2009-11-03 22:23:08 +01:00
Hans Leidekker 90fa4fe155 msi: Unicode and ANSI global UI handlers are mutually exclusive. 2009-11-03 22:23:01 +01:00
Nate Gallaher 07c321ba73 msi: Test that a query on a join of two tables returns data from the correct table. 2009-10-27 14:01:50 +01:00
Hans Leidekker 3f70b07870 msi/tests: Fix a couple of user SID string leaks.
Found by valgrind.
2009-10-27 10:53:42 +01:00
Hans Leidekker 394a437723 msi/tests: Free the string returned from ConvertSidToStringSid.
Found by valgrind.
2009-10-23 12:04:06 +02:00
Hans Leidekker 483590a3c5 msi/tests: Avoid accessing uninitialized memory.
Found by valgrind.
2009-10-23 12:04:00 +02:00
Hib Eris f6ae2507ef msi: Fix table rows order. 2009-10-20 15:57:09 +02:00
Hib Eris 9dddb94b99 msi: Fix merging string type checks. 2009-10-20 15:55:43 +02:00
Hib Eris 925fb3b408 msi/tests: Add tests for rows order. 2009-10-20 15:07:07 +02:00
Hib Eris 8d49633275 msi/tests: Add test for merging string types. 2009-10-20 15:03:39 +02:00
Hib Eris a3214c978d msi: Fix a failure with merging existing tables. 2009-10-20 15:03:33 +02:00
Hib Eris 6aad5cb307 msi/tests: Add tests for merging existing tables. 2009-10-20 15:03:24 +02:00
Hans Leidekker 55b89f4a66 msi: Add some tests for MsiGetTargetPathW. 2009-10-15 14:16:57 +02:00
Francois Gouget fe935e8d50 Assorted spelling fixes. 2009-10-08 12:17:31 +02:00
Alexandre Julliard fa6ffb4d5d Fix empty function prototypes. 2009-10-07 12:24:53 +02:00
Paul Vriens 35df8f2d69 msi/tests: Skip some tests on Win9x/WinMe. 2009-10-02 11:51:23 +02:00
Hans Leidekker 9c8b83ce01 msi: Schedule a rename operation when the file to overwrite is in use. 2009-10-01 12:04:02 +02:00
Michael Stefaniuc f8ec47d5c6 msi/tests: Remove trailing '\'. 2009-09-29 18:08:30 +02:00
Hans Leidekker c0c6daeb5a msi: Test installing over in-use files. 2009-09-29 16:06:23 +02:00
Hans Leidekker 2beee126a7 msi: Test the Installed property. 2009-09-29 16:06:22 +02:00
Hans Leidekker 4086ff6248 msi: Add tests to show that the condition table is ignored when there are overrides. 2009-09-22 16:20:51 +02:00
Hans Leidekker ae3418fdd9 msi: Test last used source property in combination with cabinet storage. 2009-09-22 16:20:48 +02:00
Paul Vriens c6e7558cda msi/tests: Fix some test failures on Vista/W2K8. 2009-09-22 16:15:36 +02:00
Paul Vriens 6867de0714 msi/tests: Skip some tests on Win9x/WinMe. 2009-09-18 08:56:16 -05:00
Hans Leidekker 659768e203 msi: Set or override a user environment string when there is no prefix. 2009-09-16 12:57:33 -05:00
Hans Leidekker dd1ca6ca5e msi: Ignore CoInitialize failure in ACTION_CreateShortcuts. 2009-09-10 22:32:13 +02:00
Hans Leidekker 3a7c2d005c msi: Open the database read/write when the update count is greater than zero in MsiGetSummaryInformation. 2009-09-10 10:50:28 +02:00
Hans Leidekker 92cd7a8fa0 msi: Add a test to show that creating shortcuts works regardless of COM initialization state. 2009-09-09 16:25:00 +02:00
Alexandre Julliard e98a52e585 msi: Force overwriting of read-only files when extracting a cabinet, with tests. 2009-09-09 12:19:28 +02:00
Ge van Geldorp 167ef04727 msi/tests: Create only a single restore point. 2009-08-28 16:48:27 +02:00
Hans Leidekker 0b60ed8ff1 msi: Fix parsing of integer column width specifiers. 2009-08-04 13:05:30 +02:00
Hib Eris ec4edbfd6c msi: Implement ASSIGN mode in MsiViewModify. 2009-07-06 15:25:39 +02:00
Hib Eris eaea537f0f msi/tests: Add tests for MsiViewModify ASSIGN mode. 2009-07-06 15:25:36 +02:00
Hans Leidekker 60b7604aa1 msi: Support opening transform databases. 2009-06-30 13:46:39 +02:00
Hib Eris 65ac206194 msi: Insert new tables in correct _Tables location. 2009-06-22 13:08:36 +02:00
Hib Eris 19d783d34d msi/tests: Add tests for order of tables. 2009-06-22 13:08:28 +02:00
Paul Vriens 9a1b829923 msi/tests: Fix some test failures on Win95 by using more A-functions. 2009-06-19 13:52:38 +02:00
Paul Vriens 44b53ef35e msi/tests: Fix test (logical || with non-zero constant). 2009-06-19 13:52:26 +02:00
Hans Leidekker e3a7ae8a30 msi: Add some reinstall tests. 2009-06-12 17:33:15 +02:00
Mike Kaplinskiy 9e5d07bb53 msi: Add a test to insert a null primary key temporary row and check its order. 2009-06-11 13:23:25 +02:00
Paul Vriens 9b6cf22607 msi/tests: Make sure we only create one logfile. 2009-06-09 17:01:13 +02:00
Hans Leidekker f9e33e9af6 msi/tests: Ignore case when comparing file names. 2009-06-04 12:18:20 +02:00
Hans Leidekker 761736e6aa msi: Add more tests for MsiGetSourcePath. 2009-06-04 12:18:15 +02:00
Hans Leidekker a0b9315dff msi: Add tests for importing a _SummaryInformation table. 2009-06-04 12:18:09 +02:00
Hans Leidekker d02dbf4492 msi: Initialize some variables. 2009-06-04 12:18:04 +02:00
Paul Vriens db355b4903 msi/tests: Remove unused variable. 2009-05-28 12:42:17 +02:00
Paul Vriens 45c00da496 msi/tests: Prevent crash when ConvertSidToStringSidA is not available. 2009-05-27 15:40:30 +02:00
Hib Eris ff5b29e5eb msi: Add support for merging tables that are not in target database. 2009-05-27 12:51:51 +02:00
Hib Eris 97200b0b31 msi/tests: Add test for merging tables that are not in target database. 2009-05-27 12:51:36 +02:00
Hib Eris 987d17dc6f msi: Fix merging tables with string primary keys. 2009-05-27 12:51:31 +02:00
Hib Eris a807e86dd7 msi/tests: Add test for merging tables with string primary keys. 2009-05-27 12:51:22 +02:00
Hib Eris cad837c999 msi: Add support for importing binary OBJECTS. 2009-05-27 12:51:10 +02:00
Hib Eris e7ebbbe62e msi/tests: Add test for importing binary OBJECTS. 2009-05-26 15:27:27 +02:00
Hib Eris f6dd90de5e msi: Add support for binary OBJECTS. 2009-05-26 15:18:02 +02:00
Hib Eris 8356484c9f msi/tests: Add tests for binary OBJECTS. 2009-05-26 15:17:52 +02:00
Francois Gouget 623dad0963 msi/tests: Tweak the get_user_sid() functions to simplify their use.
Now the function deals with all errors and win_skips() itself.
2009-05-26 14:10:27 +02:00
Francois Gouget d9ffbe4e82 msi/tests: Use win_skip() to skip over unimplemented functionality. 2009-05-19 12:01:20 +02:00
Hans Leidekker 0d8a826ef5 msi: Reject NULL or empty patch package parameter in MsiApplyPatch. 2009-05-06 16:09:55 +02:00
Detlef Riekenberg a31e9a1bfa msi/tests: Run tests again with older msi versions (MsiApplyMultiplePatchesA). 2009-05-05 11:33:52 +02:00
Nicolas Le Cam 2f37672225 msi/tests: Fix MsiApplyMultiplePatches tests on Windows. 2009-05-04 12:51:01 +02:00
Hans Leidekker b4b8bc830f msi: Implement MsiApplyMultiplePatchesA/W. 2009-05-01 16:19:39 +02:00
Hib Eris 0a81fbfa39 msi: Fix LONGCHAR column data type. 2009-04-28 13:10:04 +02:00
Hib Eris 508028ae03 msi/tests: Test type for LONGCHAR columns. 2009-04-28 13:10:03 +02:00
Hib Eris 5e829d1323 msi: Fix SHORT column data type. 2009-04-28 13:10:03 +02:00
Hib Eris 407866186c msi/tests: Test type for INTEGER, SHORT, LONG columns. 2009-04-28 13:10:03 +02:00
Hib Eris 15cb7290ee msi: Fix INT column data type. 2009-04-28 13:10:03 +02:00
Hib Eris fa8f8a3efc msi/tests: Test type for INT column. 2009-04-28 13:10:03 +02:00
Nicolas Le Cam 8b348fca27 msi/tests: Fix package test when run on a different drive than C:\. 2009-04-23 18:14:25 +02:00
Nicolas Le Cam b91fc465ff msi: Fix ACTION_AppSearchDr on empty path. 2009-04-23 18:14:25 +02:00
Nicolas Le Cam 34202629c9 msi/tests: Add empty dir test for the DrLocator part of the AppSearch action. 2009-04-23 18:14:25 +02:00
Nicolas Le Cam e00d864a35 msi: Fix buffer length value returned by MSI_RecordGetStringW on null and empty strings. 2009-04-20 17:26:13 +02:00
Nicolas Le Cam edac581d6a msi/tests: Test MsiRecordGetString on null and empty strings. 2009-04-20 17:26:10 +02:00
Detlef Riekenberg a26da7b7a3 msi/tests: Replace lstrcatW with memcpy to fix failures on win95. 2009-04-20 17:20:01 +02:00
Michael Stefaniuc cf6ec333a5 msi/tests: Replace long with LONG. 2009-04-20 14:12:37 +02:00
Nicolas Le Cam 112bb084f1 msi/tests: Fix test when content indexing is disabled. 2009-04-10 14:43:57 +02:00
Nicolas Le Cam 7b2a44f257 msi/tests: Fix format test when run on root drive directory. 2009-04-10 11:14:21 +02:00
Ge van Geldorp 215fd0b813 msi/tests: Handle running the tests as a domain user. 2009-04-07 14:21:25 +02:00
Detlef Riekenberg 03ff6ba641 msi/tests: Fix a copy & paste typo in a test message. 2009-03-30 17:51:03 +02:00
Detlef Riekenberg 36dbb69b66 msi/tests: Verify path names case insensitively. 2009-03-30 15:09:00 +02:00
Hans Leidekker 4365b34838 msi: Allocate token information buffer dynamically. 2009-03-27 15:51:26 +01:00
Hans Leidekker f0d1d61d3b msi: Add tests for MsiEnumProducts. 2009-03-27 15:51:26 +01:00
Hans Leidekker 9163b0d0a3 msi: Enumerate products from all contexts.
Fix for office 2007 proofing tools installer.
2009-03-27 15:51:26 +01:00
Alexandre Julliard 836d9af1be msi/tests: Avoid size_t in traces. 2009-03-26 14:01:26 +01:00
Hans Leidekker c2221f325f msi: Add some tests for MsiQueryFeatureState.
These tests confirm that a feature is reported as advertised if only
one of its components is missing.
2009-03-25 15:02:37 +01:00
James Hawkins 5e62686a0f msi: Handle a NULL and empty szPackagePath in MsiInstallProduct (Coverity 181). 2009-03-23 15:52:18 +01:00
James Hawkins fb8db0ac13 msi: Don't try to release a NULL record, with tests (Coverity 536). 2009-03-23 15:52:17 +01:00
James Hawkins cb958cd773 msi: Test and handle the case where the SourceList key does not exist and the PackageName value does not exist in MsiGetProductInfo. 2009-03-23 15:52:17 +01:00
James Hawkins dc50773c28 msi: Factor out the MsiEnumPatchesEx tests and test the NULL szUserSid and an szUserSid that is different from the current user. 2009-03-23 15:52:17 +01:00
Aric Stewart 39600d9d2e msi: Reorder the condition operators so that longer strings are matched first.
This allows ~<< to be properly matched.
2009-03-23 15:26:02 +01:00
Paul Vriens 7a8000d4e8 msi/tests: Fix a test for systems with %TEMP% being less than 2 levels deep. 2009-03-12 14:29:56 +01:00
Hans Leidekker 40cfbaf023 msi: Fix handling of REINSTALL overrides.
We were forcing features with a REINSTALL override to be reinstalled
locally, which is only correct if the original install state is local.

This causes problems with the office 2007 sp1 installer, which applies
a REINSTALL override to an advertised feature.
2009-03-12 14:29:56 +01:00
Paul Vriens fca2626768 msi/tests: Fix a test failure on Win95. 2009-03-03 12:36:25 +01:00
James Hawkins 9540d762ad msi: Handle reading from a NULL stream. 2009-03-02 12:06:37 +01:00
James Hawkins 2f1eacfcad msi: Don't treat carriage returns as spaces. 2009-03-02 12:06:30 +01:00
James Hawkins 7f3faffc3b msi: Don't allow nested quotes in SQL queries. 2009-03-02 12:06:24 +01:00
James Hawkins e821f9d724 msi: Add missing calls to MsiViewClose. 2009-03-02 12:06:18 +01:00
James Hawkins 046bcc918c msi: The PATH environment variable can be longer than MAX_PATH, so dynamically allocate strings to deal with that. 2009-03-02 12:05:57 +01:00
James Hawkins 37c5e04010 msi: The _Streams and _Storages table are special and always exist. 2009-03-02 12:05:45 +01:00
James Hawkins c9b3bc1165 msi: Column attributes for temporary string and int columns should be g and j respectively. 2009-03-02 12:05:28 +01:00
James Hawkins c07b554edc msi: Order primary keys to be first in the column list when creating a table. 2009-03-02 12:05:09 +01:00
James Hawkins b3c9875cf7 msi: Correctly order transposed column values in the INSERT query. 2009-03-02 12:04:57 +01:00
Hans Leidekker 148ef5f485 msi: Add reinstall tests.
Based on a patch by Aric Stewart.
2009-02-26 15:13:25 +01:00
James Hawkins b55c031032 msi: Fix a failing test on win9x. 2009-02-26 12:14:19 +01:00
James Hawkins a7d5adc91f msi: Trace the username to help debug test failures on certain machines. 2009-02-26 12:14:13 +01:00
James Hawkins 5735e2fafd msi: Fix a failing test on win9x. 2009-02-26 12:14:08 +01:00
James Hawkins ea28915133 msi: Don't create a temporary table that is not held. 2009-02-26 12:14:01 +01:00
James Hawkins 241933e13c msi: A non-temporary table cannot have a temporary primary key. 2009-02-26 12:13:57 +01:00
James Hawkins 74aa053485 msi: The _Tables and _Columns tables have no persistence attribute. 2009-02-26 12:13:52 +01:00
James Hawkins 2f8c2a8d41 msi: Make sure the view being updated is the same view the record was fetched from. 2009-02-26 12:13:49 +01:00
James Hawkins e872681af7 msi: Set field zero to the name of the table containing the primary keys. 2009-02-26 12:13:44 +01:00
James Hawkins 7d7f14c101 msi: Add tests for field zero of a record. 2009-02-26 12:13:10 +01:00
James Hawkins 60ad75eade msi: Make sure a constant string's quotes match up. 2009-02-26 12:13:02 +01:00
Alexandre Julliard b5ac29a73d msi/tests: Add some tests for MsiEnumPatchesW, fix a few failures on XP. 2009-02-25 16:06:21 +01:00
Alasdair Sinclair 0bd6da81c5 msi/tests: Fix missing void in empty parameter list. 2009-01-29 12:19:44 +01:00
Nikolay Sivov 9598a50916 msi: Fix NULL dereference in MsiQueryComponentStateW (Coverity). 2009-01-26 15:48:57 +01:00
Ge van Geldorp 78457300aa msi/tests: EstimatedSize is not set consistently between Windows Installer versions. 2009-01-20 14:02:43 +01:00
Ge van Geldorp 3355f3d66f msi/tests: Double nul-terminate REG_MULTI_SZ values. 2009-01-19 14:18:04 +01:00
Ge van Geldorp 349d8bd1a1 msi/tests: Windows Installer 3.0 often returns ERROR_INVALID_PARAMETER. 2009-01-19 14:17:57 +01:00
Andrew Nguyen 6d75522fb4 msi/tests: Fix a few handle leaks.
This was pointed out by Christoph von Wittich.
2009-01-19 13:36:27 +01:00
Michael Stefaniuc 9975dcd19e msi/tests: Remove superfluous pointer casts. 2009-01-15 12:42:57 +01:00
Michael Stefaniuc 602f42c25f include: Change to LONG/ULONG in fci.h for Win64 compatibility. 2009-01-14 12:21:13 +01:00
Ge van Geldorp f9f2e91198 msi/tests: Opening package with relative filename sometimes succeeds on Windows. 2009-01-12 14:34:51 +01:00