[4/7] msi/tests: Return an error code from helper_createpackage and package_from_db.
Hans Leidekker
hans at codeweavers.com
Thu Jul 22 04:48:10 CDT 2010
---
dlls/msi/tests/db.c | 24 +++++---
dlls/msi/tests/format.c | 65 ++++++++++-----------
dlls/msi/tests/package.c | 142 +++++++++++++++++++++++----------------------
3 files changed, 119 insertions(+), 112 deletions(-)
diff --git a/dlls/msi/tests/db.c b/dlls/msi/tests/db.c
index 5e8505a..7bbc669 100644
--- a/dlls/msi/tests/db.c
+++ b/dlls/msi/tests/db.c
@@ -2923,27 +2923,31 @@ static MSIHANDLE create_package_db(LPCSTR filename)
return hdb;
}
-static MSIHANDLE package_from_db(MSIHANDLE hdb)
+static UINT package_from_db(MSIHANDLE hdb, MSIHANDLE *handle)
{
UINT res;
- CHAR szPackage[10];
+ CHAR szPackage[12];
MSIHANDLE hPackage;
- sprintf(szPackage,"#%i",hdb);
- res = MsiOpenPackage(szPackage,&hPackage);
+ sprintf(szPackage, "#%u", hdb);
+ res = MsiOpenPackage(szPackage, &hPackage);
if (res != ERROR_SUCCESS)
- return 0;
+ return res;
res = MsiCloseHandle(hdb);
if (res != ERROR_SUCCESS)
- return 0;
+ {
+ MsiCloseHandle(hPackage);
+ return res;
+ }
- return hPackage;
+ *handle = hPackage;
+ return ERROR_SUCCESS;
}
static void test_try_transform(void)
{
- MSIHANDLE hdb, hview, hrec, hpkg;
+ MSIHANDLE hdb, hview, hrec, hpkg = 0;
LPCSTR query;
UINT r;
DWORD sz;
@@ -3117,8 +3121,8 @@ static void test_try_transform(void)
MsiCloseHandle(hview);
/* check that the property was added */
- hpkg = package_from_db(hdb);
- ok(hpkg != 0, "Expected non-NULL hpkg\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
sz = MAX_PATH;
r = MsiGetProperty(hpkg, "prop", buffer, &sz);
diff --git a/dlls/msi/tests/format.c b/dlls/msi/tests/format.c
index 3d4029c..84cc3d3 100644
--- a/dlls/msi/tests/format.c
+++ b/dlls/msi/tests/format.c
@@ -222,20 +222,26 @@ static MSIHANDLE create_package_db(void)
return hdb;
}
-static MSIHANDLE package_from_db(MSIHANDLE hdb)
+static UINT package_from_db(MSIHANDLE hdb, MSIHANDLE *handle)
{
UINT res;
- CHAR szPackage[10];
+ CHAR szPackage[12];
MSIHANDLE hPackage;
- sprintf(szPackage,"#%i",hdb);
- res = MsiOpenPackage(szPackage,&hPackage);
- ok( res == ERROR_SUCCESS , "Failed to open package\n" );
+ sprintf(szPackage, "#%u", hdb);
+ res = MsiOpenPackage(szPackage, &hPackage);
+ if (res != ERROR_SUCCESS)
+ return res;
res = MsiCloseHandle(hdb);
- ok( res == ERROR_SUCCESS , "Failed to close db handle\n" );
+ if (res != ERROR_SUCCESS)
+ {
+ MsiCloseHandle(hPackage);
+ return res;
+ }
- return hPackage;
+ *handle = hPackage;
+ return ERROR_SUCCESS;
}
static void create_test_file(const CHAR *name)
@@ -250,13 +256,10 @@ static void create_test_file(const CHAR *name)
CloseHandle(file);
}
-static MSIHANDLE helper_createpackage( const char *szName )
+static UINT helper_createpackage( const char *szName, MSIHANDLE *handle )
{
- MSIHANDLE hdb = 0;
+ MSIHANDLE hPackage, suminfo, hdb = 0;
UINT res;
- CHAR szPackage[10];
- MSIHANDLE hPackage;
- MSIHANDLE suminfo;
DeleteFile(szName);
@@ -303,14 +306,11 @@ static MSIHANDLE helper_createpackage( const char *szName )
res = MsiCloseHandle( suminfo);
ok( res == ERROR_SUCCESS , "Failed to close suminfo\n" );
- sprintf(szPackage,"#%i",hdb);
- res = MsiOpenPackage(szPackage,&hPackage);
- ok( res == ERROR_SUCCESS , "Failed to open package\n" );
+ res = package_from_db( hdb, &hPackage );
+ ok( res == ERROR_SUCCESS, "failed to create package %u\n", res );
- res = MsiCloseHandle( hdb );
- ok( res == ERROR_SUCCESS , "Failed to close database\n" );
-
- return hPackage;
+ *handle = hPackage;
+ return res;
}
static void test_createpackage(void)
@@ -318,11 +318,11 @@ static void test_createpackage(void)
MSIHANDLE hPackage = 0;
UINT res;
- hPackage = helper_createpackage( msifile );
- ok ( hPackage != 0, " Failed to create package\n");
+ res = helper_createpackage( msifile, &hPackage );
+ ok( res == ERROR_SUCCESS, "Failed to create package %u\n", res );
- res = MsiCloseHandle( hPackage);
- ok( res == ERROR_SUCCESS , "Failed to close package\n" );
+ res = MsiCloseHandle( hPackage );
+ ok( res == ERROR_SUCCESS , "Failed to close package %u\n", res );
DeleteFile( msifile );
}
@@ -1625,8 +1625,8 @@ static void test_formatrecord_package(void)
UINT r;
DWORD sz=100;
- package = helper_createpackage( msifile );
- ok(package!=0, "Unable to create package\n");
+ r = helper_createpackage( msifile, &package );
+ ok( r == ERROR_SUCCESS, "Unable to create package %u\n", r );
hrec = MsiCreateRecord(12);
ok( hrec, "failed to create record\n");
@@ -2120,7 +2120,7 @@ static void test_formatrecord_package(void)
static void test_formatrecord_tables(void)
{
- MSIHANDLE hdb, hpkg, hrec;
+ MSIHANDLE hdb, hrec, hpkg = 0;
CHAR buf[MAX_PATH];
CHAR curr_dir[MAX_PATH];
CHAR expected[MAX_PATH];
@@ -2197,8 +2197,8 @@ static void test_formatrecord_tables(void)
r = add_custom_action_entry( hdb, "'EscapeIt3', 51, 'prop', '[abcd\\xefgh]'" );
ok( r == ERROR_SUCCESS, "cannt add custom action: %d\n", r);
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle( hdb );
@@ -2381,12 +2381,11 @@ static void test_formatrecord_tables(void)
static void test_processmessage(void)
{
- MSIHANDLE hrec;
- MSIHANDLE package;
- int r;
+ MSIHANDLE hrec, package;
+ UINT r;
- package = helper_createpackage( msifile );
- ok(package!=0, "Unable to create package\n");
+ r = helper_createpackage( msifile, &package );
+ ok( r == ERROR_SUCCESS, "Unable to create package %u\n", r );
hrec = MsiCreateRecord(3);
ok( hrec, "failed to create record\n");
diff --git a/dlls/msi/tests/package.c b/dlls/msi/tests/package.c
index 00f1a3d..4fc80ac 100644
--- a/dlls/msi/tests/package.c
+++ b/dlls/msi/tests/package.c
@@ -701,22 +701,26 @@ static MSIHANDLE create_package_db(void)
return hdb;
}
-static MSIHANDLE package_from_db(MSIHANDLE hdb)
+static UINT package_from_db(MSIHANDLE hdb, MSIHANDLE *handle)
{
UINT res;
- CHAR szPackage[10];
+ CHAR szPackage[12];
MSIHANDLE hPackage;
- sprintf(szPackage,"#%i",hdb);
- res = MsiOpenPackage(szPackage,&hPackage);
+ sprintf(szPackage, "#%u", hdb);
+ res = MsiOpenPackage(szPackage, &hPackage);
if (res != ERROR_SUCCESS)
- return 0;
+ return res;
res = MsiCloseHandle(hdb);
if (res != ERROR_SUCCESS)
- return 0;
+ {
+ MsiCloseHandle(hPackage);
+ return res;
+ }
- return hPackage;
+ *handle = hPackage;
+ return ERROR_SUCCESS;
}
static void create_test_file(const CHAR *name)
@@ -820,8 +824,8 @@ static void test_createpackage(void)
MSIHANDLE hPackage = 0;
UINT res;
- hPackage = package_from_db(create_package_db());
- ok( hPackage != 0, " Failed to create package\n");
+ res = package_from_db(create_package_db(), &hPackage);
+ ok( res == ERROR_SUCCESS, " Failed to create package %u\n", res );
res = MsiCloseHandle( hPackage);
ok( res == ERROR_SUCCESS , "Failed to close package\n" );
@@ -836,8 +840,8 @@ static void test_doaction( void )
r = MsiDoAction( -1, NULL );
ok( r == ERROR_INVALID_PARAMETER, "wrong return val\n");
- hpkg = package_from_db(create_package_db());
- ok( hpkg, "failed to create package\n");
+ r = package_from_db(create_package_db(), &hpkg);
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r);
r = MsiDoAction(hpkg, NULL);
ok( r == ERROR_INVALID_PARAMETER, "wrong return val\n");
@@ -862,8 +866,8 @@ static void test_gettargetpath_bad(void)
DWORD sz;
UINT r;
- hpkg = package_from_db(create_package_db());
- ok( hpkg, "failed to create package\n");
+ r = package_from_db(create_package_db(), &hpkg);
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r);
r = MsiGetTargetPath( 0, NULL, NULL, NULL );
ok( r == ERROR_INVALID_PARAMETER, "wrong return val\n");
@@ -982,8 +986,8 @@ static void test_settargetpath(void)
r = add_file_entry( hdb, "'TestFile', 'TestComp', 'testfile.txt', 0, '', '1033', 8192, 1" );
ok( r == S_OK, "cannot add file to the File table: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r);
r = MsiDoAction( hpkg, "CostInitialize");
ok( r == ERROR_SUCCESS, "cost init failed\n");
@@ -1074,8 +1078,8 @@ static void test_condition(void)
MSICONDITION r;
MSIHANDLE hpkg;
- hpkg = package_from_db(create_package_db());
- ok( hpkg, "failed to create package\n");
+ r = package_from_db(create_package_db(), &hpkg);
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r);
r = MsiEvaluateCondition(0, NULL);
ok( r == MSICONDITION_ERROR, "wrong return val\n");
@@ -1821,8 +1825,8 @@ static void test_props(void)
"VALUES( 'MetadataCompName', 'Photoshop.dll' )");
ok( r == ERROR_SUCCESS , "Failed\n" );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r);
/* test invalid values */
r = MsiGetProperty( 0, NULL, NULL, NULL );
@@ -2025,8 +2029,8 @@ static void test_property_table(void)
hdb = create_package_db();
ok( hdb, "failed to create package\n");
- hpkg = package_from_db(hdb);
- ok( hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r);
MsiCloseHandle(hdb);
@@ -2079,8 +2083,8 @@ static void test_property_table(void)
r = add_property_entry(hdb, "'prop', 'val'");
ok(r == ERROR_SUCCESS, "cannot add property: %d\n", r);
- hpkg = package_from_db(hdb);
- ok(hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "failed to create package %u\n", r);
MsiCloseHandle(hdb);
@@ -2285,8 +2289,8 @@ static void test_formatrecord2(void)
DWORD sz;
UINT r;
- hpkg = package_from_db(create_package_db());
- ok( hpkg, "failed to create package\n");
+ r = package_from_db(create_package_db(), &hpkg);
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r);
r = MsiSetProperty(hpkg, "Manufacturer", " " );
ok( r == ERROR_SUCCESS, "set property failed\n");
@@ -2707,8 +2711,8 @@ static void test_states(void)
r = add_property_entry( hdb, "'REINSTALLMODE', 'omus'");
ok( r == ERROR_SUCCESS, "cannot add property: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle(hdb);
@@ -3615,8 +3619,8 @@ static void test_states(void)
r = add_property_entry( hdb, "'REINSTALL', 'eight,nine,ten'");
ok( r == ERROR_SUCCESS, "cannot add property: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle(hdb);
@@ -4507,8 +4511,8 @@ static void test_states(void)
r = add_property_entry( hdb, "'ADDLOCAL', 'one,two,three,four,five,six,seven,eight,nine,ten'");
ok( r == ERROR_SUCCESS, "cannot add property: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
state = 0xdeadbee;
action = 0xdeadbee;
@@ -5404,8 +5408,8 @@ static void test_states(void)
r = add_property_entry( hdb, "'ADDSOURCE', 'one,two,three,four,five,six,seven,eight,nine,ten'");
ok( r == ERROR_SUCCESS, "cannot add property: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
state = 0xdeadbee;
action = 0xdeadbee;
@@ -6297,8 +6301,8 @@ static void test_states(void)
r = add_property_entry( hdb, "'ADDSOURCE', 'one,two,three,four,five,six,seven,eight,nine,ten'");
ok( r == ERROR_SUCCESS, "cannot add property: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
state = 0xdeadbee;
action = 0xdeadbee;
@@ -7197,8 +7201,8 @@ static void test_getproperty(void)
DWORD size;
UINT r;
- hPackage = package_from_db(create_package_db());
- ok( hPackage != 0, " Failed to create package\n");
+ r = package_from_db(create_package_db(), &hPackage);
+ ok( r == ERROR_SUCCESS, "Failed to create package %u\n", r );
/* set the property */
r = MsiSetProperty(hPackage, "Name", "Value");
@@ -7318,8 +7322,8 @@ static void test_removefiles(void)
r = create_remove_file_table( hdb );
ok( r == ERROR_SUCCESS, "cannot create Remove File table: %d\n", r);
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle( hdb );
@@ -7406,8 +7410,8 @@ static void test_appsearch(void)
r = add_signature_entry( hdb, "'NewSignature1', 'FileName', '', '', '', '', '', '', ''" );
ok( r == ERROR_SUCCESS, "cannot create Signature table: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle( hdb );
@@ -7598,8 +7602,8 @@ static void test_appsearch_complocator(void)
r = add_signature_entry(hdb, "'NewSignature12', 'ignored', '1.1.1.1', '2.1.1.1', '', '', '', '', ''");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hpkg = package_from_db(hdb);
- ok(hpkg, "Expected a valid package handle\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "Expected a valid package handle %u\n", r);
r = MsiSetPropertyA(hpkg, "SIGPROP8", "october");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
@@ -8144,8 +8148,8 @@ static void test_appsearch_reglocator(void)
r = add_signature_entry(hdb, str);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hpkg = package_from_db(hdb);
- ok(hpkg, "Expected a valid package handle\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "Expected a valid package handle %u\n", r);
r = MsiDoAction(hpkg, "AppSearch");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
@@ -8565,8 +8569,8 @@ static void test_appsearch_inilocator(void)
r = add_signature_entry(hdb, "'NewSignature12', 'ignored', '1.1.1.1', '2.1.1.1', '', '', '', '', ''");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hpkg = package_from_db(hdb);
- ok(hpkg, "Expected a valid package handle\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "Expected a valid package handle %u\n", r);
r = MsiDoAction(hpkg, "AppSearch");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
@@ -8861,8 +8865,8 @@ static void test_appsearch_drlocator(void)
r = add_signature_entry(hdb, str);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hpkg = package_from_db(hdb);
- ok(hpkg, "Expected a valid package handle\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "Expected a valid package handle %u\n", r);
r = MsiDoAction(hpkg, "AppSearch");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
@@ -9123,8 +9127,8 @@ static void test_featureparents(void)
r = add_file_entry( hdb, "'hydrus_file', 'hydrus', 'hydrus.txt', 0, '', '1033', 8192, 1" );
ok( r == ERROR_SUCCESS, "cannot add file: %d\n", r);
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle( hdb );
@@ -9375,8 +9379,8 @@ static void test_installprops(void)
hdb = create_package_db();
ok( hdb, "failed to create database\n");
- hpkg = package_from_db(hdb);
- ok( hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle(hdb);
@@ -9496,8 +9500,8 @@ static void test_launchconditions(void)
r = add_launchcondition_entry( hdb, "'X != \"1\"', 'one'" );
ok( r == ERROR_SUCCESS, "cannot add launch condition: %d\n", r );
- hpkg = package_from_db( hdb );
- ok( hpkg, "failed to create package\n");
+ r = package_from_db( hdb, &hpkg );
+ ok( r == ERROR_SUCCESS, "failed to create package %u\n", r );
MsiCloseHandle( hdb );
@@ -9555,8 +9559,8 @@ static void test_ccpsearch(void)
r = create_signature_table(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hpkg = package_from_db(hdb);
- ok(hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "failed to create package %u\n", r);
MsiCloseHandle(hdb);
@@ -9711,8 +9715,8 @@ static void test_complocator(void)
r = add_signature_entry(hdb, "'labocania', 'labocania', '', '', '', '', '', '', ''");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hpkg = package_from_db(hdb);
- ok(hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "failed to create package %u\n", r);
MsiCloseHandle(hdb);
@@ -9942,8 +9946,8 @@ static void test_MsiGetSourcePath(void)
r = MsiDatabaseCommit(hdb);
ok(r == ERROR_SUCCESS , "Failed to commit database\n");
- hpkg = package_from_db(hdb);
- ok(hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "failed to create package %u\n", r);
MsiCloseHandle(hdb);
@@ -10298,8 +10302,8 @@ static void test_MsiGetSourcePath(void)
set_suminfo_prop(hdb, PID_WORDCOUNT, msidbSumInfoSourceTypeCompressed);
- hpkg = package_from_db(hdb);
- ok(hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "failed to create package %u\n", r);
/* try TARGETDIR */
size = MAX_PATH;
@@ -10632,8 +10636,8 @@ static void test_shortlongsource(void)
MsiDatabaseCommit(hdb);
- hpkg = package_from_db(hdb);
- ok(hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "failed to create package %u\n", r);
MsiCloseHandle(hdb);
@@ -10772,8 +10776,8 @@ static void test_shortlongsource(void)
set_suminfo_prop(hdb, PID_WORDCOUNT, msidbSumInfoSourceTypeSFN);
- hpkg = package_from_db(hdb);
- ok(hpkg, "failed to create package\n");
+ r = package_from_db(hdb, &hpkg);
+ ok(r == ERROR_SUCCESS, "failed to create package %u\n", r);
MsiCloseHandle(hdb);
@@ -11796,8 +11800,8 @@ static void test_MsiSetProperty(void)
DWORD size;
UINT r;
- hpkg = package_from_db(create_package_db());
- ok(hpkg != 0, "Expected a valid package\n");
+ r = package_from_db(create_package_db(), &hpkg);
+ ok(r == ERROR_SUCCESS, "Expected a valid package %u\n", r);
/* invalid hInstall */
r = MsiSetPropertyA(0, "Prop", "Val");
--
1.7.0.4
More information about the wine-patches
mailing list