From 824b89987a27837daf8ab005da0055ad71c526d9 Mon Sep 17 00:00:00 2001 From: Mike McCormack Date: Tue, 6 Feb 2007 18:07:52 +0900 Subject: [PATCH] msi: Add a test showing MsiGetProperty returns correct values. --- dlls/msi/tests/package.c | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/dlls/msi/tests/package.c b/dlls/msi/tests/package.c index a0a72f07792..233b4729287 100644 --- a/dlls/msi/tests/package.c +++ b/dlls/msi/tests/package.c @@ -1347,12 +1347,26 @@ static BOOL check_prop_empty( MSIHANDLE hpkg, const char * prop) static void test_props(void) { - MSIHANDLE hpkg; + MSIHANDLE hpkg, hdb; UINT r; DWORD sz; char buffer[0x100]; - hpkg = package_from_db(create_package_db()); + hdb = create_package_db(); + r = run_query( hdb, + "CREATE TABLE `Property` ( " + "`Property` CHAR(255) NOT NULL, " + "`Value` CHAR(255) " + "PRIMARY KEY `Property`)" ); + ok( r == ERROR_SUCCESS , "Failed\n" ); + + r = run_query(hdb, + "INSERT INTO `Property` " + "(`Property`, `Value`) " + "VALUES( 'MetadataCompName', 'Photoshop.dll' )"); + ok( r == ERROR_SUCCESS , "Failed\n" ); + + hpkg = package_from_db( hdb ); ok( hpkg, "failed to create package\n"); /* test invalid values */ @@ -1473,6 +1487,19 @@ static void test_props(void) ok( !strcmp(buffer,"foo"), "buffer wrong\n"); ok( sz == 3, "wrong size returned\n"); + r = MsiSetProperty(hpkg, "MetadataCompName", "Photoshop.dll"); + ok( r == ERROR_SUCCESS, "wrong return val\n"); + + sz = 0; + r = MsiGetProperty(hpkg, "MetadataCompName", NULL, &sz ); + ok( r == ERROR_SUCCESS, "return wrong\n"); + ok( sz == 13, "size wrong (%d)\n", sz); + + sz = 13; + r = MsiGetProperty(hpkg, "MetadataCompName", buffer, &sz ); + ok( r == ERROR_MORE_DATA, "return wrong\n"); + ok( !strcmp(buffer,"Photoshop.dl"), "buffer wrong\n"); + MsiCloseHandle( hpkg ); DeleteFile(msifile); }