summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2012-11-30 12:29:58 +0100
committerPaolo Bonzini <pbonzini@redhat.com>2012-12-06 20:30:31 +0100
commit4f02eb34cb85a498aebf0b148a9c1e36ebe081c9 (patch)
treec27d335d9c228fb05054efe4b376c0aa5380c787 /tests
parent1ece2a5f8a187d4493c96aff3a1ad64eeb497bcb (diff)
downloadmsitools-4f02eb34cb85a498aebf0b148a9c1e36ebe081c9.tar.gz
msitools-4f02eb34cb85a498aebf0b148a9c1e36ebe081c9.tar.xz
msitools-4f02eb34cb85a498aebf0b148a9c1e36ebe081c9.zip
abandon camelcase
Diffstat (limited to 'tests')
-rw-r--r--tests/testdatabase.c4196
-rw-r--r--tests/testrecord.c370
-rw-r--r--tests/testsuminfo.c258
3 files changed, 2412 insertions, 2412 deletions
diff --git a/tests/testdatabase.c b/tests/testdatabase.c
index ca03659..f0e546b 100644
--- a/tests/testdatabase.c
+++ b/tests/testdatabase.c
@@ -44,98 +44,98 @@ static void test_msidatabase(void)
DeleteFile(msifile);
- res = MsiOpenDatabase( msifile, msifile2, &hdb );
+ res = libmsi_database_open( msifile, msifile2, &hdb );
ok( res == ERROR_OPEN_FAILED, "expected failure\n");
- res = MsiOpenDatabase( msifile, (LPSTR) 0xff, &hdb );
+ res = libmsi_database_open( msifile, (LPSTR) 0xff, &hdb );
ok( res == ERROR_INVALID_PARAMETER, "expected failure\n");
- res = MsiCloseHandle( hdb );
+ res = libmsi_unref( hdb );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
/* create an empty database */
- res = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
+ res = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( res == ERROR_SUCCESS , "Failed to create database\n" );
- res = MsiDatabaseCommit( hdb );
+ res = libmsi_database_commit( hdb );
ok( res == ERROR_SUCCESS , "Failed to commit database\n" );
ok( INVALID_FILE_ATTRIBUTES != GetFileAttributes( msifile ), "database should exist\n");
- res = MsiCloseHandle( hdb );
+ res = libmsi_unref( hdb );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
- res = MsiOpenDatabase( msifile, msifile2, &hdb2 );
+ res = libmsi_database_open( msifile, msifile2, &hdb2 );
ok( res == ERROR_SUCCESS , "Failed to open database\n" );
ok( INVALID_FILE_ATTRIBUTES != GetFileAttributes( msifile2 ), "database should exist\n");
- res = MsiDatabaseCommit( hdb2 );
+ res = libmsi_database_commit( hdb2 );
ok( res == ERROR_SUCCESS , "Failed to commit database\n" );
- res = MsiCloseHandle( hdb2 );
+ res = libmsi_unref( hdb2 );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
- res = MsiOpenDatabase( msifile, msifile2, &hdb2 );
+ res = libmsi_database_open( msifile, msifile2, &hdb2 );
ok( res == ERROR_SUCCESS , "Failed to open database\n" );
- res = MsiCloseHandle( hdb2 );
+ res = libmsi_unref( hdb2 );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
ok( INVALID_FILE_ATTRIBUTES == GetFileAttributes( msifile2 ), "uncommitted database should not exist\n");
- res = MsiOpenDatabase( msifile, msifile2, &hdb2 );
+ res = libmsi_database_open( msifile, msifile2, &hdb2 );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
- res = MsiDatabaseCommit( hdb2 );
+ res = libmsi_database_commit( hdb2 );
ok( res == ERROR_SUCCESS , "Failed to commit database\n" );
- res = MsiCloseHandle( hdb2 );
+ res = libmsi_unref( hdb2 );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
ok( INVALID_FILE_ATTRIBUTES != GetFileAttributes( msifile2 ), "committed database should exist\n");
- res = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_READONLY, &hdb );
+ res = libmsi_database_open( msifile, LIBMSI_DB_OPEN_READONLY, &hdb );
ok( res == ERROR_SUCCESS , "Failed to open database\n" );
- res = MsiDatabaseCommit( hdb );
+ res = libmsi_database_commit( hdb );
ok( res == ERROR_SUCCESS , "Failed to commit database\n" );
- res = MsiCloseHandle( hdb );
+ res = libmsi_unref( hdb );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
- res = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_DIRECT, &hdb );
+ res = libmsi_database_open( msifile, LIBMSI_DB_OPEN_DIRECT, &hdb );
ok( res == ERROR_SUCCESS , "Failed to open database\n" );
- res = MsiCloseHandle( hdb );
+ res = libmsi_unref( hdb );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
- res = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
+ res = libmsi_database_open( msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
ok( res == ERROR_SUCCESS , "Failed to open database\n" );
- res = MsiCloseHandle( hdb );
+ res = libmsi_unref( hdb );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
ok( INVALID_FILE_ATTRIBUTES != GetFileAttributes( msifile ), "database should exist\n");
/* LIBMSI_DB_OPEN_CREATE deletes the database if MsiCommitDatabase isn't called */
- res = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
+ res = libmsi_database_open( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( res == ERROR_SUCCESS , "Failed to open database\n" );
ok( INVALID_FILE_ATTRIBUTES != GetFileAttributes( msifile ), "database should exist\n");
- res = MsiCloseHandle( hdb );
+ res = libmsi_unref( hdb );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
ok( INVALID_FILE_ATTRIBUTES == GetFileAttributes( msifile ), "database should exist\n");
- res = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
+ res = libmsi_database_open( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( res == ERROR_SUCCESS , "Failed to open database\n" );
- res = MsiDatabaseCommit( hdb );
+ res = libmsi_database_commit( hdb );
ok( res == ERROR_SUCCESS , "Failed to commit database\n" );
ok( INVALID_FILE_ATTRIBUTES != GetFileAttributes( msifile ), "database should exist\n");
- res = MsiCloseHandle( hdb );
+ res = libmsi_unref( hdb );
ok( res == ERROR_SUCCESS , "Failed to close database\n" );
res = DeleteFile( msifile2 );
@@ -154,17 +154,17 @@ static unsigned do_query(LibmsiDatabase *hdb, const char *sql, LibmsiRecord **ph
*phrec = 0;
/* open a select query */
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
if (r != ERROR_SUCCESS)
return r;
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
if (r != ERROR_SUCCESS)
return r;
- ret = MsiQueryFetch(hquery, phrec);
- r = MsiQueryClose(hquery);
+ ret = libmsi_query_fetch(hquery, phrec);
+ r = libmsi_query_close(hquery);
if (r != ERROR_SUCCESS)
return r;
- r = MsiCloseHandle(hquery);
+ r = libmsi_unref(hquery);
if (r != ERROR_SUCCESS)
return r;
return ret;
@@ -175,14 +175,14 @@ static unsigned run_query( LibmsiDatabase *hdb, LibmsiRecord *hrec, const char *
LibmsiQuery *hquery = 0;
unsigned r;
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
if( r != ERROR_SUCCESS )
return r;
- r = MsiQueryExecute(hquery, hrec);
+ r = libmsi_query_execute(hquery, hrec);
if( r == ERROR_SUCCESS )
- r = MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ r = libmsi_query_close(hquery);
+ libmsi_unref(hquery);
return r;
}
@@ -293,149 +293,149 @@ static void test_msiinsert(void)
DeleteFile(msifile);
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
/* create a table */
sql = "CREATE TABLE `phone` ( "
"`id` INT, `name` CHAR(32), `number` CHAR(32) "
"PRIMARY KEY `id`)";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM phone WHERE number = '8675309'";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery2);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery2, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery2, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch produced items\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery2);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery2, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery2, &hrec);
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch produced items\n");
/* insert a value into it */
sql = "INSERT INTO `phone` ( `id`, `name`, `number` )"
"VALUES('1', 'Abe', '8675309')";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
-
- r = MsiQueryFetch(hquery2, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch produced items\n");
- r = MsiQueryExecute(hquery2, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery2, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed: %u\n", r);
-
- r = MsiCloseHandle(hrec);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
- r = MsiQueryClose(hquery2);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery2);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
+
+ r = libmsi_query_fetch(hquery2, &hrec);
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch produced items\n");
+ r = libmsi_query_execute(hquery2, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery2, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed: %u\n", r);
+
+ r = libmsi_unref(hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
+ r = libmsi_query_close(hquery2);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery2);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `phone` WHERE `id` = 1";
r = do_query(hdb, sql, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
/* check the record contains what we put in it */
- r = MsiRecordGetFieldCount(hrec);
+ r = libmsi_record_get_field_count(hrec);
ok(r == 3, "record count wrong\n");
- r = MsiRecordIsNull(hrec, 0);
+ r = libmsi_record_is_null(hrec, 0);
ok(r == false, "field 0 not null\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "field 1 contents wrong\n");
sz = sizeof buf;
- r = MsiRecordGetString(hrec, 2, buf, &sz);
+ r = libmsi_record_get_string(hrec, 2, buf, &sz);
ok(r == ERROR_SUCCESS, "field 2 content fetch failed\n");
ok(!strcmp(buf,"Abe"), "field 2 content incorrect\n");
sz = sizeof buf;
- r = MsiRecordGetString(hrec, 3, buf, &sz);
+ r = libmsi_record_get_string(hrec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "field 3 content fetch failed\n");
ok(!strcmp(buf,"8675309"), "field 3 content incorrect\n");
- r = MsiCloseHandle(hrec);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* open a select query */
hrec = 100;
sql = "SELECT * FROM `phone` WHERE `id` >= 10";
r = do_query(hdb, sql, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch failed\n");
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch failed\n");
ok(hrec == 0, "hrec should be null\n");
- r = MsiCloseHandle(hrec);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `phone` WHERE `id` < 0";
r = do_query(hdb, sql, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch failed\n");
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch failed\n");
sql = "SELECT * FROM `phone` WHERE `id` <= 0";
r = do_query(hdb, sql, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch failed\n");
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch failed\n");
sql = "SELECT * FROM `phone` WHERE `id` <> 1";
r = do_query(hdb, sql, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch failed\n");
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch failed\n");
sql = "SELECT * FROM `phone` WHERE `id` > 10";
r = do_query(hdb, sql, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch failed\n");
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch failed\n");
/* now try a few bad INSERT xqueries */
sql = "INSERT INTO `phone` ( `id`, `name`, `number` )"
"VALUES(?, ?)";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_BAD_QUERY_SYNTAX, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_BAD_QUERY_SYNTAX, "libmsi_database_open_query failed\n");
/* construct a record to insert */
- hrec = MsiCreateRecord(4);
- r = MsiRecordSetInteger(hrec, 1, 2);
- ok(r == ERROR_SUCCESS, "MsiRecordSetInteger failed\n");
- r = MsiRecordSetString(hrec, 2, "Adam");
- ok(r == ERROR_SUCCESS, "MsiRecordSetString failed\n");
- r = MsiRecordSetString(hrec, 3, "96905305");
- ok(r == ERROR_SUCCESS, "MsiRecordSetString failed\n");
+ hrec = libmsi_record_create(4);
+ r = libmsi_record_set_int(hrec, 1, 2);
+ ok(r == ERROR_SUCCESS, "libmsi_record_set_int failed\n");
+ r = libmsi_record_set_string(hrec, 2, "Adam");
+ ok(r == ERROR_SUCCESS, "libmsi_record_set_string failed\n");
+ r = libmsi_record_set_string(hrec, 3, "96905305");
+ ok(r == ERROR_SUCCESS, "libmsi_record_set_string failed\n");
/* insert another value, using a record and wildcards */
sql = "INSERT INTO `phone` ( `id`, `name`, `number` )"
"VALUES(?, ?, ?)";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
if (r == ERROR_SUCCESS)
{
- r = MsiQueryExecute(hquery, hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_execute(hquery, hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
}
- r = MsiCloseHandle(hrec);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiQueryFetch(0, NULL);
- ok(r == ERROR_INVALID_PARAMETER, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(0, NULL);
+ ok(r == ERROR_INVALID_PARAMETER, "libmsi_query_fetch failed\n");
- r = MsiDatabaseCommit(hdb);
- ok(r == ERROR_SUCCESS, "MsiDatabaseCommit failed\n");
+ r = libmsi_database_commit(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_commit failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
r = DeleteFile(msifile);
ok(r == true, "file didn't exist after commit\n");
@@ -446,20 +446,20 @@ static unsigned try_query_param( LibmsiDatabase *hdb, const char *szQuery, Libms
LibmsiQuery *htab = 0;
unsigned res;
- res = MsiDatabaseOpenQuery( hdb, szQuery, &htab );
+ res = libmsi_database_open_query( hdb, szQuery, &htab );
if(res == ERROR_SUCCESS )
{
unsigned r;
- r = MsiQueryExecute( htab, hrec );
+ r = libmsi_query_execute( htab, hrec );
if(r != ERROR_SUCCESS )
res = r;
- r = MsiQueryClose( htab );
+ r = libmsi_query_close( htab );
if(r != ERROR_SUCCESS )
res = r;
- r = MsiCloseHandle( htab );
+ r = libmsi_unref( htab );
if(r != ERROR_SUCCESS )
res = r;
}
@@ -476,12 +476,12 @@ static unsigned try_insert_query( LibmsiDatabase *hdb, const char *szQuery )
LibmsiRecord *hrec = 0;
unsigned r;
- hrec = MsiCreateRecord( 1 );
- MsiRecordSetString( hrec, 1, "Hello");
+ hrec = libmsi_record_create( 1 );
+ libmsi_record_set_string( hrec, 1, "Hello");
r = try_query_param( hdb, szQuery, hrec );
- MsiCloseHandle( hrec );
+ libmsi_unref( hrec );
return r;
}
@@ -492,29 +492,29 @@ static void test_msibadqueries(void)
DeleteFile(msifile);
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
- r = MsiDatabaseCommit( hdb );
+ r = libmsi_database_commit( hdb );
ok(r == ERROR_SUCCESS , "Failed to commit database\n");
- r = MsiCloseHandle( hdb );
+ r = libmsi_unref( hdb );
ok(r == ERROR_SUCCESS , "Failed to close database\n");
/* open it readonly */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_READONLY, &hdb );
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_READONLY, &hdb );
ok(r == ERROR_SUCCESS , "Failed to open database r/o\n");
/* add a table to it */
r = try_query( hdb, "select * from _Tables");
ok(r == ERROR_SUCCESS , "query 1 failed\n");
- r = MsiCloseHandle( hdb );
+ r = libmsi_unref( hdb );
ok(r == ERROR_SUCCESS , "Failed to close database r/o\n");
/* open it read/write */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
ok(r == ERROR_SUCCESS , "Failed to open database r/w\n");
/* a bunch of test queries that fail with the native MSI */
@@ -580,7 +580,7 @@ static void test_msibadqueries(void)
"CHAR(72), `d` CHAR(255) NOT NULL LOCALIZABLE PRIMARY KEY `b`)");
ok(r == ERROR_SUCCESS , "query 4 failed\n");
- r = MsiDatabaseCommit( hdb );
+ r = libmsi_database_commit( hdb );
ok(r == ERROR_SUCCESS , "Failed to commit database after write\n");
r = try_query( hdb, "CREATE TABLE `blah` (`foo` CHAR(72) NOT NULL "
@@ -590,7 +590,7 @@ static void test_msibadqueries(void)
r = try_insert_query( hdb, "insert into a ( `b` ) VALUES ( ? )");
ok(r == ERROR_SUCCESS , "failed to insert record in db\n");
- r = MsiDatabaseCommit( hdb );
+ r = libmsi_database_commit( hdb );
ok(r == ERROR_SUCCESS , "Failed to commit database after write\n");
r = try_query( hdb, "CREATE TABLE `boo` (`foo` CHAR(72) NOT NULL "
@@ -697,7 +697,7 @@ static void test_msibadqueries(void)
r = try_query( hdb, "SELECT * FROM a-" );
ok( r == ERROR_SUCCESS , "query failed: %u\n", r );
- r = MsiCloseHandle( hdb );
+ r = libmsi_unref( hdb );
ok(r == ERROR_SUCCESS , "Failed to close database transact\n");
r = DeleteFile( msifile );
@@ -717,9 +717,9 @@ static void test_querymodify(void)
DeleteFile(msifile);
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
sql = "CREATE TABLE `phone` ( "
"`id` INT, `name` CHAR(32), `number` CHAR(32) "
@@ -743,317 +743,317 @@ static void test_querymodify(void)
/* check what the error function reports without doing anything */
sz = 0;
/* passing NULL as the 3rd param make function to crash on older platforms */
- err = MsiQueryGetError( 0, NULL, &sz );
- ok(err == LIBMSI_DB_ERROR_INVALIDARG, "MsiQueryGetError return\n");
+ err = libmsi_query_get_error( 0, NULL, &sz );
+ ok(err == LIBMSI_DB_ERROR_INVALIDARG, "libmsi_query_get_error return\n");
/* open a query */
sql = "SELECT * FROM `phone`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
/* see what happens with a good hquery and bad args */
- err = MsiQueryGetError( hquery, NULL, NULL );
+ err = libmsi_query_get_error( hquery, NULL, NULL );
ok(err == LIBMSI_DB_ERROR_INVALIDARG || err == LIBMSI_DB_ERROR_NOERROR,
- "MsiQueryGetError returns %u (expected -3)\n", err);
- err = MsiQueryGetError( hquery, buffer, NULL );
- ok(err == LIBMSI_DB_ERROR_INVALIDARG, "MsiQueryGetError return\n");
+ "libmsi_query_get_error returns %u (expected -3)\n", err);
+ err = libmsi_query_get_error( hquery, buffer, NULL );
+ ok(err == LIBMSI_DB_ERROR_INVALIDARG, "libmsi_query_get_error return\n");
/* see what happens with a zero length buffer */
sz = 0;
buffer[0] = 'x';
- err = MsiQueryGetError( hquery, buffer, &sz );
- ok(err == LIBMSI_DB_ERROR_MOREDATA, "MsiQueryGetError return\n");
+ err = libmsi_query_get_error( hquery, buffer, &sz );
+ ok(err == LIBMSI_DB_ERROR_MOREDATA, "libmsi_query_get_error return\n");
ok(buffer[0] == 'x', "buffer cleared\n");
ok(sz == 0, "size not zero\n");
/* ok this one is strange */
sz = 0;
- err = MsiQueryGetError( hquery, NULL, &sz );
- ok(err == LIBMSI_DB_ERROR_NOERROR, "MsiQueryGetError return\n");
+ err = libmsi_query_get_error( hquery, NULL, &sz );
+ ok(err == LIBMSI_DB_ERROR_NOERROR, "libmsi_query_get_error return\n");
ok(sz == 0, "size not zero\n");
/* see if it really has an error */
sz = sizeof buffer;
buffer[0] = 'x';
- err = MsiQueryGetError( hquery, buffer, &sz );
- ok(err == LIBMSI_DB_ERROR_NOERROR, "MsiQueryGetError return\n");
+ err = libmsi_query_get_error( hquery, buffer, &sz );
+ ok(err == LIBMSI_DB_ERROR_NOERROR, "libmsi_query_get_error return\n");
ok(buffer[0] == 0, "buffer not cleared\n");
ok(sz == 0, "size not zero\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
/* try some invalid records */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT, 0 );
- ok(r == ERROR_INVALID_HANDLE, "MsiQueryModify failed\n");
- r = MsiQueryModify(hquery, -1, 0 );
- ok(r == ERROR_INVALID_HANDLE, "MsiQueryModify failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT, 0 );
+ ok(r == ERROR_INVALID_HANDLE, "libmsi_query_modify failed\n");
+ r = libmsi_query_modify(hquery, -1, 0 );
+ ok(r == ERROR_INVALID_HANDLE, "libmsi_query_modify failed\n");
/* try an small record */
- hrec = MsiCreateRecord(1);
- r = MsiQueryModify(hquery, -1, hrec );
- ok(r == ERROR_INVALID_DATA, "MsiQueryModify failed\n");
+ hrec = libmsi_record_create(1);
+ r = libmsi_query_modify(hquery, -1, hrec );
+ ok(r == ERROR_INVALID_DATA, "libmsi_query_modify failed\n");
sz = sizeof buffer;
buffer[0] = 'x';
- err = MsiQueryGetError( hquery, buffer, &sz );
- ok(err == LIBMSI_DB_ERROR_NOERROR, "MsiQueryGetError return\n");
+ err = libmsi_query_get_error( hquery, buffer, &sz );
+ ok(err == LIBMSI_DB_ERROR_NOERROR, "libmsi_query_get_error return\n");
ok(buffer[0] == 0, "buffer not cleared\n");
ok(sz == 0, "size not zero\n");
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
/* insert a valid record */
- hrec = MsiCreateRecord(3);
+ hrec = libmsi_record_create(3);
- r = MsiRecordSetInteger(hrec, 1, 1);
+ r = libmsi_record_set_int(hrec, 1, 1);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetString(hrec, 2, "bob");
+ r = libmsi_record_set_string(hrec, 2, "bob");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiRecordSetString(hrec, 3, "7654321");
+ r = libmsi_record_set_string(hrec, 3, "7654321");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec );
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec );
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed\n");
/* validate it */
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_VALIDATE_NEW, hrec );
- ok(r == ERROR_INVALID_DATA, "MsiQueryModify failed %u\n", r);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_VALIDATE_NEW, hrec );
+ ok(r == ERROR_INVALID_DATA, "libmsi_query_modify failed %u\n", r);
sz = sizeof buffer;
buffer[0] = 'x';
- err = MsiQueryGetError( hquery, buffer, &sz );
- ok(err == LIBMSI_DB_ERROR_DUPLICATEKEY, "MsiQueryGetError returned %u\n", err);
+ err = libmsi_query_get_error( hquery, buffer, &sz );
+ ok(err == LIBMSI_DB_ERROR_DUPLICATEKEY, "libmsi_query_get_error returned %u\n", err);
ok(!strcmp(buffer, "id"), "expected \"id\" c, got \"%s\"\n", buffer);
ok(sz == 2, "size not 2\n");
/* insert the same thing again */
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
/* should fail ... */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec );
- ok(r == ERROR_FUNCTION_FAILED, "MsiQueryModify failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec );
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_query_modify failed\n");
/* try to merge the same record */
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_MERGE, hrec );
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_MERGE, hrec );
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed\n");
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
/* try merging a new record */
- hrec = MsiCreateRecord(3);
+ hrec = libmsi_record_create(3);
- r = MsiRecordSetInteger(hrec, 1, 10);
+ r = libmsi_record_set_int(hrec, 1, 10);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetString(hrec, 2, "pepe");
+ r = libmsi_record_set_string(hrec, 2, "pepe");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiRecordSetString(hrec, 3, "7654321");
+ r = libmsi_record_set_string(hrec, 3, "7654321");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_MERGE, hrec );
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_MERGE, hrec );
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `phone`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
- ok(r == ERROR_SUCCESS, "MsiRecordGetString failed\n");
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
+ ok(r == ERROR_SUCCESS, "libmsi_record_get_string failed\n");
ok(!strcmp(buffer, "bob"), "Expected bob, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
- ok(r == ERROR_SUCCESS, "MsiRecordGetString failed\n");
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
+ ok(r == ERROR_SUCCESS, "libmsi_record_get_string failed\n");
ok(!strcmp(buffer, "7654321"), "Expected 7654321, got %s\n", buffer);
/* update the query, non-primary key */
- r = MsiRecordSetString(hrec, 3, "3141592");
- ok(r == ERROR_SUCCESS, "MsiRecordSetString failed\n");
+ r = libmsi_record_set_string(hrec, 3, "3141592");
+ ok(r == ERROR_SUCCESS, "libmsi_record_set_string failed\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed\n");
/* do it again */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed: %d\n", r);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed: %d\n", r);
/* update the query, primary key */
- r = MsiRecordSetInteger(hrec, 1, 5);
- ok(r == ERROR_SUCCESS, "MsiRecordSetInteger failed\n");
+ r = libmsi_record_set_int(hrec, 1, 5);
+ ok(r == ERROR_SUCCESS, "libmsi_record_set_int failed\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_FUNCTION_FAILED, "MsiQueryModify failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_query_modify failed\n");
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `phone`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
- ok(r == ERROR_SUCCESS, "MsiRecordGetString failed\n");
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
+ ok(r == ERROR_SUCCESS, "libmsi_record_get_string failed\n");
ok(!strcmp(buffer, "bob"), "Expected bob, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
- ok(r == ERROR_SUCCESS, "MsiRecordGetString failed\n");
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
+ ok(r == ERROR_SUCCESS, "libmsi_record_get_string failed\n");
ok(!strcmp(buffer, "3141592"), "Expected 3141592, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
/* use a record that doesn't come from a query fetch */
- hrec = MsiCreateRecord(3);
- ok(hrec != 0, "MsiCreateRecord failed\n");
+ hrec = libmsi_record_create(3);
+ ok(hrec != 0, "libmsi_record_create failed\n");
- r = MsiRecordSetInteger(hrec, 1, 3);
+ r = libmsi_record_set_int(hrec, 1, 3);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetString(hrec, 2, "jane");
+ r = libmsi_record_set_string(hrec, 2, "jane");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiRecordSetString(hrec, 3, "112358");
+ r = libmsi_record_set_string(hrec, 3, "112358");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
ok(r == ERROR_FUNCTION_FAILED, "Expected ERROR_FUNCTION_FAILED, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
/* use a record that doesn't come from a query fetch, primary key matches */
- hrec = MsiCreateRecord(3);
- ok(hrec != 0, "MsiCreateRecord failed\n");
+ hrec = libmsi_record_create(3);
+ ok(hrec != 0, "libmsi_record_create failed\n");
- r = MsiRecordSetInteger(hrec, 1, 1);
+ r = libmsi_record_set_int(hrec, 1, 1);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetString(hrec, 2, "jane");
+ r = libmsi_record_set_string(hrec, 2, "jane");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiRecordSetString(hrec, 3, "112358");
+ r = libmsi_record_set_string(hrec, 3, "112358");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_FUNCTION_FAILED, "MsiQueryModify failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_query_modify failed\n");
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- hrec = MsiCreateRecord(3);
+ hrec = libmsi_record_create(3);
- r = MsiRecordSetInteger(hrec, 1, 2);
+ r = libmsi_record_set_int(hrec, 1, 2);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetString(hrec, 2, "nick");
+ r = libmsi_record_set_string(hrec, 2, "nick");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiRecordSetString(hrec, 3, "141421");
+ r = libmsi_record_set_string(hrec, 3, "141421");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec );
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec );
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed\n");
- r = MsiCloseHandle(hrec);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `phone` WHERE `id` = 1";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
/* change the id to match the second row */
- r = MsiRecordSetInteger(hrec, 1, 2);
+ r = libmsi_record_set_int(hrec, 1, 2);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetString(hrec, 2, "jerry");
+ r = libmsi_record_set_string(hrec, 2, "jerry");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_FUNCTION_FAILED, "MsiQueryModify failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_query_modify failed\n");
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* broader search */
sql = "SELECT * FROM `phone` ORDER BY `id`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
/* change the id to match the second row */
- r = MsiRecordSetInteger(hrec, 1, 2);
+ r = libmsi_record_set_int(hrec, 1, 2);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetString(hrec, 2, "jerry");
+ r = libmsi_record_set_string(hrec, 2, "jerry");
ok(r == ERROR_SUCCESS, "failed to set string\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_FUNCTION_FAILED, "MsiQueryModify failed\n");
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_query_modify failed\n");
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiCloseHandle( hdb );
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase close failed\n");
+ r = libmsi_unref( hdb );
+ ok(r == ERROR_SUCCESS, "libmsi_database_open close failed\n");
}
static LibmsiDatabase *create_db(void)
@@ -1064,12 +1064,12 @@ static LibmsiDatabase *create_db(void)
DeleteFile(msifile);
/* create an empty database */
- res = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
+ res = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( res == ERROR_SUCCESS , "Failed to create database\n" );
if( res != ERROR_SUCCESS )
return hdb;
- res = MsiDatabaseCommit( hdb );
+ res = libmsi_database_commit( hdb );
ok( res == ERROR_SUCCESS , "Failed to commit database\n" );
return hdb;
@@ -1089,51 +1089,51 @@ static void test_getcolinfo(void)
ok( hdb, "failed to create db\n");
/* tables should be present */
- r = MsiDatabaseOpenQuery(hdb, "select * from _Tables", &hquery);
+ r = libmsi_database_open_query(hdb, "select * from _Tables", &hquery);
ok( r == ERROR_SUCCESS, "failed to open query\n");
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query\n");
/* check that NAMES works */
rec = 0;
- r = MsiQueryGetColumnInfo( hquery, LIBMSI_COL_INFO_NAMES, &rec );
+ r = libmsi_query_get_column_info( hquery, LIBMSI_COL_INFO_NAMES, &rec );
ok( r == ERROR_SUCCESS, "failed to get names\n");
sz = sizeof buffer;
- r = MsiRecordGetString(rec, 1, buffer, &sz );
+ r = libmsi_record_get_string(rec, 1, buffer, &sz );
ok( r == ERROR_SUCCESS, "failed to get string\n");
ok( !strcmp(buffer,"Name"), "_Tables has wrong column name\n");
- r = MsiCloseHandle( rec );
+ r = libmsi_unref( rec );
ok( r == ERROR_SUCCESS, "failed to close record handle\n");
/* check that TYPES works */
rec = 0;
- r = MsiQueryGetColumnInfo( hquery, LIBMSI_COL_INFO_TYPES, &rec );
+ r = libmsi_query_get_column_info( hquery, LIBMSI_COL_INFO_TYPES, &rec );
ok( r == ERROR_SUCCESS, "failed to get names\n");
sz = sizeof buffer;
- r = MsiRecordGetString(rec, 1, buffer, &sz );
+ r = libmsi_record_get_string(rec, 1, buffer, &sz );
ok( r == ERROR_SUCCESS, "failed to get string\n");
ok( !strcmp(buffer,"s64"), "_Tables has wrong column type\n");
- r = MsiCloseHandle( rec );
+ r = libmsi_unref( rec );
ok( r == ERROR_SUCCESS, "failed to close record handle\n");
/* check that invalid values fail */
rec = 0;
- r = MsiQueryGetColumnInfo( hquery, 100, &rec );
+ r = libmsi_query_get_column_info( hquery, 100, &rec );
ok( r == ERROR_INVALID_PARAMETER, "wrong error code\n");
ok( rec == 0, "returned a record\n");
- r = MsiQueryGetColumnInfo( hquery, LIBMSI_COL_INFO_TYPES, NULL );
+ r = libmsi_query_get_column_info( hquery, LIBMSI_COL_INFO_TYPES, NULL );
ok( r == ERROR_INVALID_PARAMETER, "wrong error code\n");
- r = MsiQueryGetColumnInfo( 0, LIBMSI_COL_INFO_TYPES, &rec );
+ r = libmsi_query_get_column_info( 0, LIBMSI_COL_INFO_TYPES, &rec );
ok( r == ERROR_INVALID_HANDLE, "wrong error code\n");
- r = MsiQueryClose(hquery);
+ r = libmsi_query_close(hquery);
ok( r == ERROR_SUCCESS, "failed to close query\n");
- r = MsiCloseHandle(hquery);
+ r = libmsi_unref(hquery);
ok( r == ERROR_SUCCESS, "failed to close query handle\n");
- r = MsiCloseHandle(hdb);
+ r = libmsi_unref(hdb);
ok( r == ERROR_SUCCESS, "failed to close database\n");
}
@@ -1143,17 +1143,17 @@ static LibmsiRecord *get_column_info(LibmsiDatabase *hdb, const char *sql, Libms
LibmsiRecord *rec = 0;
unsigned r;
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
if( r != ERROR_SUCCESS )
return rec;
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
if( r == ERROR_SUCCESS )
{
- MsiQueryGetColumnInfo( hquery, type, &rec );
+ libmsi_query_get_column_info( hquery, type, &rec );
}
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
return rec;
}
@@ -1166,26 +1166,26 @@ static unsigned get_columns_table_type(LibmsiDatabase *hdb, const char *table, u
sprintf(sql, "select * from `_Columns` where `Table` = '%s'", table );
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
if( r != ERROR_SUCCESS )
return r;
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
if( r == ERROR_SUCCESS )
{
while (1)
{
- r = MsiQueryFetch( hquery, &rec );
+ r = libmsi_query_fetch( hquery, &rec );
if( r != ERROR_SUCCESS)
break;
- r = MsiRecordGetInteger( rec, 2 );
+ r = libmsi_record_get_integer( rec, 2 );
if (r == field)
- type = MsiRecordGetInteger( rec, 4 );
- MsiCloseHandle( rec );
+ type = libmsi_record_get_integer( rec, 4 );
+ libmsi_unref( rec );
}
}
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
return type;
}
@@ -1196,7 +1196,7 @@ static bool check_record( LibmsiRecord *rec, unsigned field, const char *val )
unsigned sz;
sz = sizeof buffer;
- r = MsiRecordGetString( rec, field, buffer, &sz );
+ r = libmsi_record_get_string( rec, field, buffer, &sz );
return (r == ERROR_SUCCESS ) && !strcmp(val, buffer);
}
@@ -1233,7 +1233,7 @@ static void test_querygetcolumninfo(void)
ok( check_record( rec, 6, "I4"), "wrong record type\n");
ok( check_record( rec, 7, "S0"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
/* check the type in _Columns */
ok( 0x3dff == get_columns_table_type(hdb, "Properties", 1 ), "_columns table wrong\n");
@@ -1256,7 +1256,7 @@ static void test_querygetcolumninfo(void)
ok( check_record( rec, 6, "Longvalue"), "wrong record type\n");
ok( check_record( rec, 7, "Longcharvalue"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
r = run_query( hdb, 0,
"CREATE TABLE `Binary` "
@@ -1270,7 +1270,7 @@ static void test_querygetcolumninfo(void)
ok( check_record( rec, 1, "S255"), "wrong record type\n");
ok( check_record( rec, 2, "V0"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
/* check the type in _Columns */
ok( 0x3dff == get_columns_table_type(hdb, "Binary", 1 ), "_columns table wrong\n");
@@ -1282,7 +1282,7 @@ static void test_querygetcolumninfo(void)
ok( check_record( rec, 1, "Name"), "wrong record type\n");
ok( check_record( rec, 2, "Data"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
r = run_query( hdb, 0,
"CREATE TABLE `UIText` "
@@ -1296,15 +1296,15 @@ static void test_querygetcolumninfo(void)
ok( rec, "failed to get column info record\n" );
ok( check_record( rec, 1, "Key"), "wrong record type\n");
ok( check_record( rec, 2, "Text"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
rec = get_column_info( hdb, "select * from `UIText`", LIBMSI_COL_INFO_TYPES );
ok( rec, "failed to get column info record\n" );
ok( check_record( rec, 1, "s72"), "wrong record type\n");
ok( check_record( rec, 2, "L255"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- MsiCloseHandle( hdb );
+ libmsi_unref( hdb );
}
static void test_msiexport(void)
@@ -1326,44 +1326,44 @@ static void test_msiexport(void)
DeleteFile(msifile);
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
/* create a table */
sql = "CREATE TABLE `phone` ( "
"`id` INT, `name` CHAR(32), `number` CHAR(32) "
"PRIMARY KEY `id`)";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* insert a value into it */
sql = "INSERT INTO `phone` ( `id`, `name`, `number` )"
"VALUES('1', 'Abe', '8675309')";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
fd = open(file, O_WRONLY | O_BINARY | O_CREAT, 0644);
ok(fd != -1, "open failed\n");
- r = MsiDatabaseExport(hdb, "phone", fd);
- ok(r == ERROR_SUCCESS, "MsiDatabaseExport failed\n");
+ r = libmsi_database_export(hdb, "phone", fd);
+ ok(r == ERROR_SUCCESS, "libmsi_database_export failed\n");
close(fd);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
/* check the data that was written */
length = 0;
@@ -1396,9 +1396,9 @@ static void test_longstrings(void)
const unsigned STRING_LENGTH = 0x10005;
DeleteFile(msifile);
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
/* create a table */
r = try_query( hdb,
@@ -1412,35 +1412,35 @@ static void test_longstrings(void)
memset(str+len, 'Z', STRING_LENGTH);
strcpy(str+len+STRING_LENGTH, insert_query+len+1);
r = try_query( hdb, str );
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
HeapFree(GetProcessHeap(), 0, str);
- r = MsiDatabaseCommit(hdb);
- ok(r == ERROR_SUCCESS, "MsiDatabaseCommit failed\n");
- MsiCloseHandle(hdb);
+ r = libmsi_database_commit(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_commit failed\n");
+ libmsi_unref(hdb);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
- r = MsiDatabaseOpenQuery(hdb, "select * from `strings` where `id` = 1", &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query(hdb, "select * from `strings` where `id` = 1", &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
- r = MsiRecordGetString(hrec, 2, NULL, &len);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_record_get_string(hrec, 2, NULL, &len);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
ok(len == STRING_LENGTH, "string length wrong\n");
- MsiCloseHandle(hrec);
- MsiCloseHandle(hdb);
+ libmsi_unref(hrec);
+ libmsi_unref(hdb);
DeleteFile(msifile);
}
@@ -1491,12 +1491,12 @@ static void test_streamtable(void)
"( `Value`, `Property` ) VALUES ( 'Prop', 'value' )" );
ok( r == ERROR_SUCCESS, "Failed to add to table\n" );
- r = MsiDatabaseCommit( hdb );
+ r = libmsi_database_commit( hdb );
ok( r == ERROR_SUCCESS , "Failed to commit database\n" );
- MsiCloseHandle( hdb );
+ libmsi_unref( hdb );
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
ok( r == ERROR_SUCCESS , "Failed to open database\n" );
/* check the column types */
@@ -1506,7 +1506,7 @@ static void test_streamtable(void)
ok( check_record( rec, 1, "s62"), "wrong record type\n");
ok( check_record( rec, 2, "V0"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
/* now try the names */
rec = get_column_info( hdb, "select * from `_Streams`", LIBMSI_COL_INFO_NAMES );
@@ -1515,195 +1515,195 @@ static void test_streamtable(void)
ok( check_record( rec, 1, "Name"), "wrong record type\n");
ok( check_record( rec, 2, "Data"), "wrong record type\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"SELECT * FROM `_Streams` WHERE `Name` = '\5SummaryInformation'", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %u\n", r );
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "Failed to execute query: %u\n", r );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_NO_MORE_ITEMS, "Unexpected result: %u\n", r );
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
/* create a summary information stream */
- r = MsiGetSummaryInformation( hdb, 1, &hsi );
+ r = libmsi_database_get_summary_info( hdb, 1, &hsi );
ok( r == ERROR_SUCCESS, "Failed to get summary information handle: %u\n", r );
- r = MsiSummaryInfoSetProperty( hsi, MSI_PID_SECURITY, VT_I4, 2, NULL, NULL );
+ r = libmsi_summary_info_set_property( hsi, MSI_PID_SECURITY, VT_I4, 2, NULL, NULL );
ok( r == ERROR_SUCCESS, "Failed to set property: %u\n", r );
- r = MsiSummaryInfoPersist( hsi );
+ r = libmsi_summary_info_persist( hsi );
ok( r == ERROR_SUCCESS, "Failed to save summary information: %u\n", r );
- MsiCloseHandle( hsi );
+ libmsi_unref( hsi );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"SELECT * FROM `_Streams` WHERE `Name` = '\5SummaryInformation'", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %u\n", r );
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "Failed to execute query: %u\n", r );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "Unexpected result: %u\n", r );
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
/* insert a file into the _Streams table */
create_file( "test.txt" );
- rec = MsiCreateRecord( 2 );
- MsiRecordSetString( rec, 1, "data" );
+ rec = libmsi_record_create( 2 );
+ libmsi_record_set_string( rec, 1, "data" );
- r = MsiRecordSetStream( rec, 2, "test.txt" );
+ r = libmsi_record_load_stream( rec, 2, "test.txt" );
ok( r == ERROR_SUCCESS, "Failed to add stream data to the record: %d\n", r);
DeleteFile("test.txt");
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"INSERT INTO `_Streams` ( `Name`, `Data` ) VALUES ( ?, ? )", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %d\n", r);
- r = MsiQueryExecute( query, rec );
+ r = libmsi_query_execute( query, rec );
ok( r == ERROR_SUCCESS, "Failed to execute query: %d\n", r);
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
/* insert another one */
create_file( "test1.txt" );
- rec = MsiCreateRecord( 2 );
- MsiRecordSetString( rec, 1, "data1" );
+ rec = libmsi_record_create( 2 );
+ libmsi_record_set_string( rec, 1, "data1" );
- r = MsiRecordSetStream( rec, 2, "test1.txt" );
+ r = libmsi_record_load_stream( rec, 2, "test1.txt" );
ok( r == ERROR_SUCCESS, "Failed to add stream data to the record: %d\n", r);
DeleteFile("test1.txt");
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"INSERT INTO `_Streams` ( `Name`, `Data` ) VALUES ( ?, ? )", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %d\n", r);
- r = MsiQueryExecute( query, rec );
+ r = libmsi_query_execute( query, rec );
ok( r == ERROR_SUCCESS, "Failed to execute query: %d\n", r);
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"SELECT `Name`, `Data` FROM `_Streams` WHERE `Name` = 'data'", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %d\n", r);
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "Failed to execute query: %d\n", r);
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "Failed to fetch record: %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString( rec, 1, file, &size );
+ r = libmsi_record_get_string( rec, 1, file, &size );
ok( r == ERROR_SUCCESS, "Failed to get string: %d\n", r);
ok( !strcmp(file, "data"), "Expected 'data', got %s\n", file);
size = MAX_PATH;
memset(buf, 0, MAX_PATH);
- r = MsiRecordReadStream( rec, 2, buf, &size );
+ r = libmsi_record_save_stream( rec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r);
ok( !strcmp(buf, "test.txt\n"), "Expected 'test.txt\\n', got %s\n", buf);
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"SELECT `Name`, `Data` FROM `_Streams` WHERE `Name` = 'data1'", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %d\n", r);
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "Failed to execute query: %d\n", r);
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString( rec, 1, file, &size );
+ r = libmsi_record_get_string( rec, 1, file, &size );
ok( r == ERROR_SUCCESS, "Failed to get string: %d\n", r);
ok( !strcmp(file, "data1"), "Expected 'data1', got %s\n", file);
size = MAX_PATH;
memset(buf, 0, MAX_PATH);
- r = MsiRecordReadStream( rec, 2, buf, &size );
+ r = libmsi_record_save_stream( rec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r);
ok( !strcmp(buf, "test1.txt\n"), "Expected 'test1.txt\\n', got %s\n", buf);
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
/* perform an update */
create_file( "test2.txt" );
- rec = MsiCreateRecord( 1 );
+ rec = libmsi_record_create( 1 );
- r = MsiRecordSetStream( rec, 1, "test2.txt" );
+ r = libmsi_record_load_stream( rec, 1, "test2.txt" );
ok( r == ERROR_SUCCESS, "Failed to add stream data to the record: %d\n", r);
DeleteFile("test2.txt");
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"UPDATE `_Streams` SET `Data` = ? WHERE `Name` = 'data1'", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %d\n", r);
- r = MsiQueryExecute( query, rec );
+ r = libmsi_query_execute( query, rec );
ok( r == ERROR_SUCCESS, "Failed to execute query: %d\n", r);
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb,
+ r = libmsi_database_open_query( hdb,
"SELECT `Name`, `Data` FROM `_Streams` WHERE `Name` = 'data1'", &query );
ok( r == ERROR_SUCCESS, "Failed to open database query: %d\n", r);
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "Failed to execute query: %d\n", r);
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "Failed to fetch record: %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString( rec, 1, file, &size );
+ r = libmsi_record_get_string( rec, 1, file, &size );
ok( r == ERROR_SUCCESS, "Failed to get string: %d\n", r);
ok( !strcmp(file, "data1"), "Expected 'data1', got %s\n", file);
size = MAX_PATH;
memset(buf, 0, MAX_PATH);
- r = MsiRecordReadStream( rec, 2, buf, &size );
+ r = libmsi_record_save_stream( rec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r);
todo_wine ok( !strcmp(buf, "test2.txt\n"), "Expected 'test2.txt\\n', got %s\n", buf);
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
- MsiCloseHandle( hdb );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
+ libmsi_unref( hdb );
DeleteFile(msifile);
}
@@ -1718,7 +1718,7 @@ static void test_binary(void)
unsigned r;
/* insert a file into the Binary table */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( r == ERROR_SUCCESS , "Failed to open database\n" );
sql = "CREATE TABLE `Binary` ( `Name` CHAR(72) NOT NULL, `ID` INT NOT NULL, `Data` OBJECT PRIMARY KEY `Name`, `ID`)";
@@ -1726,8 +1726,8 @@ static void test_binary(void)
ok( r == ERROR_SUCCESS, "Cannot create Binary table: %d\n", r );
create_file( "test.txt" );
- rec = MsiCreateRecord( 1 );
- r = MsiRecordSetStream( rec, 1, "test.txt" );
+ rec = libmsi_record_create( 1 );
+ r = libmsi_record_load_stream( rec, 1, "test.txt" );
ok( r == ERROR_SUCCESS, "Failed to add stream data to the record: %d\n", r);
DeleteFile( "test.txt" );
@@ -1735,17 +1735,17 @@ static void test_binary(void)
r = run_query( hdb, rec, sql );
ok( r == ERROR_SUCCESS, "Insert into Binary table failed: %d\n", r );
- r = MsiCloseHandle( rec );
+ r = libmsi_unref( rec );
ok( r == ERROR_SUCCESS , "Failed to close record handle\n" );
- r = MsiDatabaseCommit( hdb );
+ r = libmsi_database_commit( hdb );
ok( r == ERROR_SUCCESS , "Failed to commit database\n" );
- r = MsiCloseHandle( hdb );
+ r = libmsi_unref( hdb );
ok( r == ERROR_SUCCESS , "Failed to close database\n" );
/* read file from the Stream table */
- r = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_READONLY, &hdb );
+ r = libmsi_database_open( msifile, LIBMSI_DB_OPEN_READONLY, &hdb );
ok( r == ERROR_SUCCESS , "Failed to open database\n" );
sql = "SELECT * FROM `_Streams`";
@@ -1753,17 +1753,17 @@ static void test_binary(void)
ok( r == ERROR_SUCCESS, "SELECT query failed: %d\n", r );
size = MAX_PATH;
- r = MsiRecordGetString( rec, 1, file, &size );
+ r = libmsi_record_get_string( rec, 1, file, &size );
ok( r == ERROR_SUCCESS, "Failed to get string: %d\n", r );
ok( !strcmp(file, "Binary.filename1.1"), "Expected 'Binary.filename1.1', got %s\n", file );
size = MAX_PATH;
memset( buf, 0, MAX_PATH );
- r = MsiRecordReadStream( rec, 2, buf, &size );
+ r = libmsi_record_save_stream( rec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r );
ok( !strcmp(buf, "test.txt\n"), "Expected 'test.txt\\n', got %s\n", buf );
- r = MsiCloseHandle( rec );
+ r = libmsi_unref( rec );
ok( r == ERROR_SUCCESS , "Failed to close record handle\n" );
/* read file from the Binary table */
@@ -1772,20 +1772,20 @@ static void test_binary(void)
ok( r == ERROR_SUCCESS, "SELECT query failed: %d\n", r );
size = MAX_PATH;
- r = MsiRecordGetString( rec, 1, file, &size );
+ r = libmsi_record_get_string( rec, 1, file, &size );
ok( r == ERROR_SUCCESS, "Failed to get string: %d\n", r );
ok( !strcmp(file, "filename1"), "Expected 'filename1', got %s\n", file );
size = MAX_PATH;
memset( buf, 0, MAX_PATH );
- r = MsiRecordReadStream( rec, 3, buf, &size );
+ r = libmsi_record_save_stream( rec, 3, buf, &size );
ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r );
ok( !strcmp(buf, "test.txt\n"), "Expected 'test.txt\\n', got %s\n", buf );
- r = MsiCloseHandle( rec );
+ r = libmsi_unref( rec );
ok( r == ERROR_SUCCESS , "Failed to close record handle\n" );
- r = MsiCloseHandle( hdb );
+ r = libmsi_unref( hdb );
ok( r == ERROR_SUCCESS , "Failed to close database\n" );
DeleteFile( msifile );
@@ -1863,28 +1863,28 @@ static void test_where_not_in_selected(void)
query = NULL;
sql = "Select IESTable.Condition from CATable, IESTable where "
"CATable.Action = IESTable.Action and CATable.Type = 32";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok( r == ERROR_SUCCESS, "failed to fetch query: %d\n", r );
ok( check_record( rec, 1, "cond2"), "wrong condition\n");
- MsiCloseHandle( rec );
- r = MsiQueryFetch(query, &rec);
+ libmsi_unref( rec );
+ r = libmsi_query_fetch(query, &rec);
ok( r == ERROR_SUCCESS, "failed to fetch query: %d\n", r );
ok( check_record( rec, 1, "cond3"), "wrong condition\n");
- MsiCloseHandle( rec );
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_unref( rec );
+ libmsi_query_close(query);
+ libmsi_unref(query);
- MsiCloseHandle( hdb );
+ libmsi_unref( hdb );
DeleteFile(msifile);
}
@@ -1932,111 +1932,111 @@ static void test_where(void)
sql = "SELECT * FROM `Media`";
r = do_query(hdb, sql, &rec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed: %d\n", r);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed: %d\n", r);
ok( check_record( rec, 4, "zero.cab"), "wrong cabinet\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
sql = "SELECT * FROM `Media` WHERE `LastSequence` >= 1";
r = do_query(hdb, sql, &rec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed: %d\n", r);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed: %d\n", r);
ok( check_record( rec, 4, "one.cab"), "wrong cabinet\n");
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok( 2 == r, "field wrong\n");
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok( 1 == r, "field wrong\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
sql = "SELECT `DiskId` FROM `Media` WHERE `LastSequence` >= 1 AND DiskId >= 0";
query = NULL;
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok( r == ERROR_SUCCESS, "failed to fetch query: %d\n", r );
- count = MsiRecordGetFieldCount( rec );
+ count = libmsi_record_get_field_count( rec );
ok( count == 1, "Expected 1 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( rec, 1, buf, &size );
+ r = libmsi_record_get_string( rec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
ok( !strcmp( buf, "2" ),
"For (row %d, column 1) expected '%d', got %s\n", 0, 2, buf );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok( r == ERROR_SUCCESS, "failed to fetch query: %d\n", r );
size = MAX_PATH;
- r = MsiRecordGetString( rec, 1, buf, &size );
+ r = libmsi_record_get_string( rec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
ok( !strcmp( buf, "3" ),
"For (row %d, column 1) expected '%d', got %s\n", 1, 3, buf );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
rec = 0;
sql = "SELECT * FROM `Media` WHERE `DiskPrompt` IS NULL";
r = do_query(hdb, sql, &rec);
ok( r == ERROR_SUCCESS, "query failed: %d\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
rec = 0;
sql = "SELECT * FROM `Media` WHERE `DiskPrompt` < 'Cabinet'";
r = do_query(hdb, sql, &rec);
ok( r == ERROR_BAD_QUERY_SYNTAX, "query failed: %d\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
rec = 0;
sql = "SELECT * FROM `Media` WHERE `DiskPrompt` > 'Cabinet'";
r = do_query(hdb, sql, &rec);
ok( r == ERROR_BAD_QUERY_SYNTAX, "query failed: %d\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
rec = 0;
sql = "SELECT * FROM `Media` WHERE `DiskPrompt` <> 'Cabinet'";
r = do_query(hdb, sql, &rec);
ok( r == ERROR_SUCCESS, "query failed: %d\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
rec = 0;
sql = "SELECT * FROM `Media` WHERE `DiskPrompt` = 'Cabinet'";
r = do_query(hdb, sql, &rec);
ok( r == ERROR_NO_MORE_ITEMS, "query failed: %d\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- rec = MsiCreateRecord(1);
- MsiRecordSetString(rec, 1, "");
+ rec = libmsi_record_create(1);
+ libmsi_record_set_string(rec, 1, "");
sql = "SELECT * FROM `Media` WHERE `DiskPrompt` = ?";
query = NULL;
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, rec);
+ r = libmsi_query_execute(query, rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_unref(rec);
+ libmsi_query_close(query);
+ libmsi_unref(query);
- MsiCloseHandle( hdb );
+ libmsi_unref( hdb );
DeleteFile(msifile);
}
@@ -2099,7 +2099,7 @@ static unsigned add_table_to_db(LibmsiDatabase *hdb, const char *table_data)
unsigned r;
write_file("temp_file", table_data, (strlen(table_data) - 1) * sizeof(char));
- r = MsiDatabaseImport(hdb, CURR_DIR, "temp_file");
+ r = libmsi_database_import(hdb, CURR_DIR, "temp_file");
DeleteFileA("temp_file");
return r;
@@ -2118,7 +2118,7 @@ static void test_suminfo_import(void)
GetCurrentDirectoryA(MAX_PATH, CURR_DIR);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
r = add_table_to_db(hdb, suminfo);
@@ -2128,26 +2128,26 @@ static void test_suminfo_import(void)
query = NULL;
sql = "SELECT * FROM `_SummaryInformation`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %u\n", r);
- MsiCloseHandle(query);
+ libmsi_unref(query);
/* ...its data is added to the special summary information stream */
- r = MsiGetSummaryInformation(hdb, 0, &hsi);
+ r = libmsi_database_get_summary_info(hdb, 0, &hsi);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
- r = MsiSummaryInfoGetPropertyCount(hsi, &count);
+ r = libmsi_summary_info_get_property_count(hsi, &count);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(count == 14, "Expected 14, got %u\n", count);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_CODEPAGE, &type, &int_value, NULL, NULL, NULL);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_CODEPAGE, &type, &int_value, NULL, NULL, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_I2, "Expected VT_I2, got %u\n", type);
ok(int_value == 1252, "Expected 1252, got %d\n", int_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_TITLE, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_TITLE, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(size == 18, "Expected 18, got %u\n", size);
@@ -2155,78 +2155,78 @@ static void test_suminfo_import(void)
"Expected \"Installer Database\", got %s\n", str_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_SUBJECT, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_SUBJECT, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(!strcmp(str_value, "Installer description"),
"Expected \"Installer description\", got %s\n", str_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_AUTHOR, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_AUTHOR, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(!strcmp(str_value, "WineHQ"),
"Expected \"WineHQ\", got %s\n", str_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_KEYWORDS, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_KEYWORDS, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(!strcmp(str_value, "Installer"),
"Expected \"Installer\", got %s\n", str_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_COMMENTS, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_COMMENTS, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(!strcmp(str_value, "Installer comments"),
"Expected \"Installer comments\", got %s\n", str_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_TEMPLATE, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_TEMPLATE, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(!strcmp(str_value, "Intel;1033,2057"),
"Expected \"Intel;1033,2057\", got %s\n", str_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_REVNUMBER, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_REVNUMBER, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(!strcmp(str_value, "{12345678-1234-1234-1234-123456789012}"),
"Expected \"{12345678-1234-1234-1234-123456789012}\", got %s\n", str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_CREATE_DTM, &type, NULL, &ft_value, NULL, NULL);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_CREATE_DTM, &type, NULL, &ft_value, NULL, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_FILETIME, "Expected VT_FILETIME, got %u\n", type);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_LASTSAVE_DTM, &type, NULL, &ft_value, NULL, NULL);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_LASTSAVE_DTM, &type, NULL, &ft_value, NULL, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_FILETIME, "Expected VT_FILETIME, got %u\n", type);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_PAGECOUNT, &type, &int_value, NULL, NULL, NULL);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_PAGECOUNT, &type, &int_value, NULL, NULL, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_I4, "Expected VT_I4, got %u\n", type);
ok(int_value == 200, "Expected 200, got %d\n", int_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_WORDCOUNT, &type, &int_value, NULL, NULL, NULL);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_WORDCOUNT, &type, &int_value, NULL, NULL, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_I4, "Expected VT_I4, got %u\n", type);
ok(int_value == 2, "Expected 2, got %d\n", int_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_SECURITY, &type, &int_value, NULL, NULL, NULL);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_SECURITY, &type, &int_value, NULL, NULL, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_I4, "Expected VT_I4, got %u\n", type);
ok(int_value == 2, "Expected 2, got %d\n", int_value);
size = sizeof(str_value);
- r = MsiSummaryInfoGetProperty(hsi, MSI_PID_APPNAME, &type, NULL, NULL, str_value, &size);
+ r = libmsi_summary_info_get_property(hsi, MSI_PID_APPNAME, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(!strcmp(str_value, "Vim"), "Expected \"Vim\", got %s\n", str_value);
- MsiCloseHandle(hsi);
- MsiCloseHandle(hdb);
+ libmsi_unref(hsi);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -2241,7 +2241,7 @@ static void test_msiimport(void)
GetCurrentDirectoryA(MAX_PATH, CURR_DIR);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
r = add_table_to_db(hdb, test_data);
@@ -2258,13 +2258,13 @@ static void test_msiimport(void)
query = NULL;
sql = "SELECT * FROM `TestTable`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_NAMES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_NAMES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 9, "Expected 9, got %d\n", count);
ok(check_record(rec, 1, "FirstPrimaryColumn"), "Expected FirstPrimaryColumn\n");
ok(check_record(rec, 2, "SecondPrimaryColumn"), "Expected SecondPrimaryColumn\n");
@@ -2275,12 +2275,12 @@ static void test_msiimport(void)
ok(check_record(rec, 7, "String"), "Expected String\n");
ok(check_record(rec, 8, "LocalizableString"), "Expected LocalizableString\n");
ok(check_record(rec, 9, "LocalizableStringNullable"), "Expected LocalizableStringNullable\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_TYPES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_TYPES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 9, "Expected 9, got %d\n", count);
ok(check_record(rec, 1, "s255"), "Expected s255\n");
ok(check_record(rec, 2, "i2"), "Expected i2\n");
@@ -2291,7 +2291,7 @@ static void test_msiimport(void)
ok(check_record(rec, 7, "S255"), "Expected S255\n");
ok(check_record(rec, 8, "S0"), "Expected S0\n");
ok(check_record(rec, 9, "s0"), "Expected s0\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
sql = "SELECT * FROM `TestTable`";
r = do_query(hdb, sql, &rec);
@@ -2301,86 +2301,86 @@ static void test_msiimport(void)
ok(check_record(rec, 8, "localizable"), "Expected 'localizable'\n");
ok(check_record(rec, 9, "duh"), "Expected 'duh'\n");
- i = MsiRecordGetInteger(rec, 2);
+ i = libmsi_record_get_integer(rec, 2);
ok(i == 5, "Expected 5, got %d\n", i);
- i = MsiRecordGetInteger(rec, 3);
+ i = libmsi_record_get_integer(rec, 3);
ok(i == 2, "Expected 2, got %d\n", i);
- i = MsiRecordGetInteger(rec, 4);
+ i = libmsi_record_get_integer(rec, 4);
ok(i == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", i);
- i = MsiRecordGetInteger(rec, 5);
+ i = libmsi_record_get_integer(rec, 5);
ok(i == 2147483640, "Expected 2147483640, got %d\n", i);
- i = MsiRecordGetInteger(rec, 6);
+ i = libmsi_record_get_integer(rec, 6);
ok(i == -2147483640, "Expected -2147483640, got %d\n", i);
- MsiCloseHandle(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_unref(rec);
+ libmsi_query_close(query);
+ libmsi_unref(query);
query = NULL;
sql = "SELECT * FROM `TwoPrimary`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_NAMES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_NAMES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 2, "Expected 2, got %d\n", count);
ok(check_record(rec, 1, "PrimaryOne"), "Expected PrimaryOne\n");
ok(check_record(rec, 2, "PrimaryTwo"), "Expected PrimaryTwo\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_TYPES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_TYPES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 2, "Expected 2, got %d\n", count);
ok(check_record(rec, 1, "s255"), "Expected s255\n");
ok(check_record(rec, 2, "s255"), "Expected s255\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(check_record(rec, 1, "papaya"), "Expected 'papaya'\n");
ok(check_record(rec, 2, "leaf"), "Expected 'leaf'\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(check_record(rec, 1, "papaya"), "Expected 'papaya'\n");
ok(check_record(rec, 2, "flower"), "Expected 'flower'\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS,
"Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(query);
+ r = libmsi_query_close(query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(query);
+ libmsi_unref(query);
query = NULL;
sql = "SELECT * FROM `Table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_NAMES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_NAMES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 6, "Expected 6, got %d\n", count);
ok(check_record(rec, 1, "A"), "Expected A\n");
ok(check_record(rec, 2, "B"), "Expected B\n");
@@ -2388,12 +2388,12 @@ static void test_msiimport(void)
ok(check_record(rec, 4, "D"), "Expected D\n");
ok(check_record(rec, 5, "E"), "Expected E\n");
ok(check_record(rec, 6, "F"), "Expected F\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_TYPES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_TYPES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 6, "Expected 6, got %d\n", count);
ok(check_record(rec, 1, "s72"), "Expected s72\n");
ok(check_record(rec, 2, "s72"), "Expected s72\n");
@@ -2401,20 +2401,20 @@ static void test_msiimport(void)
ok(check_record(rec, 4, "s72"), "Expected s72\n");
ok(check_record(rec, 5, "s72"), "Expected s72\n");
ok(check_record(rec, 6, "s72"), "Expected s72\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
query = NULL;
sql = "SELECT * FROM `Table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(check_record(rec, 1, "a"), "Expected 'a'\n");
ok(check_record(rec, 2, "b"), "Expected 'b'\n");
@@ -2423,9 +2423,9 @@ static void test_msiimport(void)
ok(check_record(rec, 5, "e"), "Expected 'e'\n");
ok(check_record(rec, 6, "f"), "Expected 'f'\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(check_record(rec, 1, "g"), "Expected 'g'\n");
ok(check_record(rec, 2, "h"), "Expected 'h'\n");
@@ -2434,15 +2434,15 @@ static void test_msiimport(void)
ok(check_record(rec, 5, "k"), "Expected 'k'\n");
ok(check_record(rec, 6, "l"), "Expected 'l'\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS,
"Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
- MsiCloseHandle(hdb);
+ libmsi_query_close(query);
+ libmsi_unref(query);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -2469,11 +2469,11 @@ static void test_binary_import(void)
create_file_data("bin_import/filename1.ibd", "just some words", 15);
/* import files into database */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok( r == ERROR_SUCCESS , "Failed to open database\n");
GetCurrentDirectory(MAX_PATH, path);
- r = MsiDatabaseImport(hdb, path, "bin_import.idt");
+ r = libmsi_database_import(hdb, path, "bin_import.idt");
ok(r == ERROR_SUCCESS , "Failed to import Binary table\n");
/* read file from the Binary table */
@@ -2482,21 +2482,21 @@ static void test_binary_import(void)
ok(r == ERROR_SUCCESS, "SELECT query failed: %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, file, &size);
+ r = libmsi_record_get_string(rec, 1, file, &size);
ok(r == ERROR_SUCCESS, "Failed to get string: %d\n", r);
ok(!strcmp(file, "filename1"), "Expected 'filename1', got %s\n", file);
size = MAX_PATH;
memset(buf, 0, MAX_PATH);
- r = MsiRecordReadStream(rec, 2, buf, &size);
+ r = libmsi_record_save_stream(rec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Failed to get stream: %d\n", r);
ok(!strcmp(buf, "just some words"),
"Expected 'just some words', got %s\n", buf);
- r = MsiCloseHandle(rec);
+ r = libmsi_unref(rec);
ok(r == ERROR_SUCCESS , "Failed to close record handle\n");
- r = MsiCloseHandle(hdb);
+ r = libmsi_unref(hdb);
ok(r == ERROR_SUCCESS , "Failed to close database\n");
DeleteFile("bin_import/filename1.ibd");
@@ -2514,20 +2514,20 @@ static void test_markers(void)
hdb = create_db();
ok( hdb, "failed to create db\n");
- rec = MsiCreateRecord(3);
- MsiRecordSetString(rec, 1, "Table");
- MsiRecordSetString(rec, 2, "Apples");
- MsiRecordSetString(rec, 3, "Oranges");
+ rec = libmsi_record_create(3);
+ libmsi_record_set_string(rec, 1, "Table");
+ libmsi_record_set_string(rec, 2, "Apples");
+ libmsi_record_set_string(rec, 3, "Oranges");
/* try a legit create */
sql = "CREATE TABLE `Table` ( `One` SHORT NOT NULL, `Two` CHAR(255) PRIMARY KEY `One`)";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try table name as marker */
- rec = MsiCreateRecord(1);
- MsiRecordSetString(rec, 1, "Fable");
+ rec = libmsi_record_create(1);
+ libmsi_record_set_string(rec, 1, "Fable");
sql = "CREATE TABLE `?` ( `One` SHORT NOT NULL, `Two` CHAR(255) PRIMARY KEY `One`)";
r = run_query(hdb, rec, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
@@ -2540,32 +2540,32 @@ static void test_markers(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* try table name as marker without backticks */
- MsiRecordSetString(rec, 1, "Mable");
+ libmsi_record_set_string(rec, 1, "Mable");
sql = "CREATE TABLE ? ( `One` SHORT NOT NULL, `Two` CHAR(255) PRIMARY KEY `One`)";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
/* try one column name as marker */
- MsiRecordSetString(rec, 1, "One");
+ libmsi_record_set_string(rec, 1, "One");
sql = "CREATE TABLE `Mable` ( `?` SHORT NOT NULL, `Two` CHAR(255) PRIMARY KEY `One`)";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try column names as markers */
- rec = MsiCreateRecord(2);
- MsiRecordSetString(rec, 1, "One");
- MsiRecordSetString(rec, 2, "Two");
+ rec = libmsi_record_create(2);
+ libmsi_record_set_string(rec, 1, "One");
+ libmsi_record_set_string(rec, 2, "Two");
sql = "CREATE TABLE `Mable` ( `?` SHORT NOT NULL, `?` CHAR(255) PRIMARY KEY `One`)";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try names with backticks */
- rec = MsiCreateRecord(3);
- MsiRecordSetString(rec, 1, "One");
- MsiRecordSetString(rec, 2, "Two");
- MsiRecordSetString(rec, 3, "One");
+ rec = libmsi_record_create(3);
+ libmsi_record_set_string(rec, 1, "One");
+ libmsi_record_set_string(rec, 2, "Two");
+ libmsi_record_set_string(rec, 3, "One");
sql = "CREATE TABLE `Mable` ( `?` SHORT NOT NULL, `?` CHAR(255) PRIMARY KEY `?`)";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
@@ -2579,26 +2579,26 @@ static void test_markers(void)
sql = "CREATE TABLE `Mable` ( ? SHORT NOT NULL, ? CHAR(255) PRIMARY KEY ?)";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try one long marker */
- rec = MsiCreateRecord(1);
- MsiRecordSetString(rec, 1, "`One` SHORT NOT NULL, `Two` CHAR(255) PRIMARY KEY `One`");
+ rec = libmsi_record_create(1);
+ libmsi_record_set_string(rec, 1, "`One` SHORT NOT NULL, `Two` CHAR(255) PRIMARY KEY `One`");
sql = "CREATE TABLE `Mable` ( ? )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try all names as markers */
- rec = MsiCreateRecord(4);
- MsiRecordSetString(rec, 1, "Mable");
- MsiRecordSetString(rec, 2, "One");
- MsiRecordSetString(rec, 3, "Two");
- MsiRecordSetString(rec, 4, "One");
+ rec = libmsi_record_create(4);
+ libmsi_record_set_string(rec, 1, "Mable");
+ libmsi_record_set_string(rec, 2, "One");
+ libmsi_record_set_string(rec, 3, "Two");
+ libmsi_record_set_string(rec, 4, "One");
sql = "CREATE TABLE `?` ( `?` SHORT NOT NULL, `?` CHAR(255) PRIMARY KEY `?`)";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try a legit insert */
sql = "INSERT INTO `Table` ( `One`, `Two` ) VALUES ( 5, 'hello' )";
@@ -2609,83 +2609,83 @@ static void test_markers(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* try values as markers */
- rec = MsiCreateRecord(2);
- MsiRecordSetInteger(rec, 1, 4);
- MsiRecordSetString(rec, 2, "hi");
+ rec = libmsi_record_create(2);
+ libmsi_record_set_int(rec, 1, 4);
+ libmsi_record_set_string(rec, 2, "hi");
sql = "INSERT INTO `Table` ( `One`, `Two` ) VALUES ( ?, '?' )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try column names and values as markers */
- rec = MsiCreateRecord(4);
- MsiRecordSetString(rec, 1, "One");
- MsiRecordSetString(rec, 2, "Two");
- MsiRecordSetInteger(rec, 3, 5);
- MsiRecordSetString(rec, 4, "hi");
+ rec = libmsi_record_create(4);
+ libmsi_record_set_string(rec, 1, "One");
+ libmsi_record_set_string(rec, 2, "Two");
+ libmsi_record_set_int(rec, 3, 5);
+ libmsi_record_set_string(rec, 4, "hi");
sql = "INSERT INTO `Table` ( `?`, `?` ) VALUES ( ?, '?' )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try column names as markers */
- rec = MsiCreateRecord(2);
- MsiRecordSetString(rec, 1, "One");
- MsiRecordSetString(rec, 2, "Two");
+ rec = libmsi_record_create(2);
+ libmsi_record_set_string(rec, 1, "One");
+ libmsi_record_set_string(rec, 2, "Two");
sql = "INSERT INTO `Table` ( `?`, `?` ) VALUES ( 3, 'yellow' )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try table name as a marker */
- rec = MsiCreateRecord(1);
- MsiRecordSetString(rec, 1, "Table");
+ rec = libmsi_record_create(1);
+ libmsi_record_set_string(rec, 1, "Table");
sql = "INSERT INTO `?` ( `One`, `Two` ) VALUES ( 2, 'green' )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try table name and values as markers */
- rec = MsiCreateRecord(3);
- MsiRecordSetString(rec, 1, "Table");
- MsiRecordSetInteger(rec, 2, 10);
- MsiRecordSetString(rec, 3, "haha");
+ rec = libmsi_record_create(3);
+ libmsi_record_set_string(rec, 1, "Table");
+ libmsi_record_set_int(rec, 2, 10);
+ libmsi_record_set_string(rec, 3, "haha");
sql = "INSERT INTO `?` ( `One`, `Two` ) VALUES ( ?, '?' )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_FUNCTION_FAILED, "Expected ERROR_FUNCTION_FAILED, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* try all markers */
- rec = MsiCreateRecord(5);
- MsiRecordSetString(rec, 1, "Table");
- MsiRecordSetString(rec, 1, "One");
- MsiRecordSetString(rec, 1, "Two");
- MsiRecordSetInteger(rec, 2, 10);
- MsiRecordSetString(rec, 3, "haha");
+ rec = libmsi_record_create(5);
+ libmsi_record_set_string(rec, 1, "Table");
+ libmsi_record_set_string(rec, 1, "One");
+ libmsi_record_set_string(rec, 1, "Two");
+ libmsi_record_set_int(rec, 2, 10);
+ libmsi_record_set_string(rec, 3, "haha");
sql = "INSERT INTO `?` ( `?`, `?` ) VALUES ( ?, '?' )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* insert an integer as a string */
- rec = MsiCreateRecord(2);
- MsiRecordSetString(rec, 1, "11");
- MsiRecordSetString(rec, 2, "hi");
+ rec = libmsi_record_create(2);
+ libmsi_record_set_string(rec, 1, "11");
+ libmsi_record_set_string(rec, 2, "hi");
sql = "INSERT INTO `Table` ( `One`, `Two` ) VALUES ( ?, '?' )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* leave off the '' for the string */
- rec = MsiCreateRecord(2);
- MsiRecordSetInteger(rec, 1, 12);
- MsiRecordSetString(rec, 2, "hi");
+ rec = libmsi_record_create(2);
+ libmsi_record_set_int(rec, 1, 12);
+ libmsi_record_set_string(rec, 2, "hi");
sql = "INSERT INTO `Table` ( `One`, `Two` ) VALUES ( ?, ? )";
r = run_query(hdb, rec, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -2706,7 +2706,7 @@ static void test_handle_limit(void)
for (i=0; i<MY_NQUERIES; i++) {
static char szQueryBuf[256] = "SELECT * from `_Tables`";
hqueries[i] = 0xdeadbeeb;
- r = MsiDatabaseOpenQuery(hdb, szQueryBuf, &hqueries[i]);
+ r = libmsi_database_open_query(hdb, szQueryBuf, &hqueries[i]);
if( r != ERROR_SUCCESS || hqueries[i] == 0xdeadbeeb ||
hqueries[i] == 0 || (i && (hqueries[i] == hqueries[i-1])))
break;
@@ -2716,8 +2716,8 @@ static void test_handle_limit(void)
for (i=0; i<MY_NQUERIES; i++) {
if (hqueries[i] != 0 && hqueries[i] != 0xdeadbeeb) {
- MsiQueryClose(hqueries[i]);
- r = MsiCloseHandle(hqueries[i]);
+ libmsi_query_close(hqueries[i]);
+ r = libmsi_unref(hqueries[i]);
if (r != ERROR_SUCCESS)
break;
}
@@ -2725,7 +2725,7 @@ static void test_handle_limit(void)
ok( i == MY_NQUERIES, "problem closing queries\n");
- r = MsiCloseHandle(hdb);
+ r = libmsi_unref(hdb);
ok( r == ERROR_SUCCESS, "failed to close database\n");
}
@@ -2861,39 +2861,39 @@ static unsigned set_summary_info(LibmsiDatabase *hdb)
LibmsiSummaryInfo *suminfo;
/* build summary info */
- res = MsiGetSummaryInformation(hdb, 7, &suminfo);
+ res = libmsi_database_get_summary_info(hdb, 7, &suminfo);
ok( res == ERROR_SUCCESS , "Failed to open summaryinfo\n" );
- res = MsiSummaryInfoSetProperty(suminfo,2, VT_LPSTR, 0,NULL,
+ res = libmsi_summary_info_set_property(suminfo,2, VT_LPSTR, 0,NULL,
"Installation Database");
ok( res == ERROR_SUCCESS , "Failed to set summary info\n" );
- res = MsiSummaryInfoSetProperty(suminfo,3, VT_LPSTR, 0,NULL,
+ res = libmsi_summary_info_set_property(suminfo,3, VT_LPSTR, 0,NULL,
"Installation Database");
ok( res == ERROR_SUCCESS , "Failed to set summary info\n" );
- res = MsiSummaryInfoSetProperty(suminfo,4, VT_LPSTR, 0,NULL,
+ res = libmsi_summary_info_set_property(suminfo,4, VT_LPSTR, 0,NULL,
"Wine Hackers");
ok( res == ERROR_SUCCESS , "Failed to set summary info\n" );
- res = MsiSummaryInfoSetProperty(suminfo,7, VT_LPSTR, 0,NULL,
+ res = libmsi_summary_info_set_property(suminfo,7, VT_LPSTR, 0,NULL,
";1033,2057");
ok( res == ERROR_SUCCESS , "Failed to set summary info\n" );
- res = MsiSummaryInfoSetProperty(suminfo,9, VT_LPSTR, 0,NULL,
+ res = libmsi_summary_info_set_property(suminfo,9, VT_LPSTR, 0,NULL,
"{913B8D18-FBB6-4CAC-A239-C74C11E3FA74}");
ok( res == ERROR_SUCCESS , "Failed to set summary info\n" );
- res = MsiSummaryInfoSetProperty(suminfo, 14, VT_I4, 100, NULL, NULL);
+ res = libmsi_summary_info_set_property(suminfo, 14, VT_I4, 100, NULL, NULL);
ok( res == ERROR_SUCCESS , "Failed to set summary info\n" );
- res = MsiSummaryInfoSetProperty(suminfo, 15, VT_I4, 0, NULL, NULL);
+ res = libmsi_summary_info_set_property(suminfo, 15, VT_I4, 0, NULL, NULL);
ok( res == ERROR_SUCCESS , "Failed to set summary info\n" );
- res = MsiSummaryInfoPersist(suminfo);
+ res = libmsi_summary_info_persist(suminfo);
ok( res == ERROR_SUCCESS , "Failed to make summary info persist\n" );
- res = MsiCloseHandle( suminfo);
+ res = libmsi_unref( suminfo);
ok( res == ERROR_SUCCESS , "Failed to close suminfo\n" );
return res;
@@ -2907,12 +2907,12 @@ static LibmsiDatabase *create_package_db(const char *filename)
DeleteFile(msifile);
/* create an empty database */
- res = MsiOpenDatabase(filename, LIBMSI_DB_OPEN_CREATE, &hdb );
+ res = libmsi_database_open(filename, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( res == ERROR_SUCCESS , "Failed to create database\n" );
if( res != ERROR_SUCCESS )
return hdb;
- res = MsiDatabaseCommit( hdb );
+ res = libmsi_database_commit( hdb );
ok( res == ERROR_SUCCESS , "Failed to commit database\n" );
res = set_summary_info(hdb);
@@ -2961,69 +2961,69 @@ static void test_try_transform(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "failed to add table\n");
- hrec = MsiCreateRecord(2);
- r = MsiRecordSetInteger(hrec, 1, 2);
+ hrec = libmsi_record_create(2);
+ r = libmsi_record_set_int(hrec, 1, 2);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
write_file("testdata.bin", "lamyon", 6);
- r = MsiRecordSetStream(hrec, 2, "testdata.bin");
+ r = libmsi_record_load_stream(hrec, 2, "testdata.bin");
ok(r == ERROR_SUCCESS, "failed to set stream\n");
sql = "INSERT INTO `BINARY` ( `ID`, `BLOB` ) VALUES ( ?, ? )";
r = run_query(hdb, hrec, sql);
ok(r == ERROR_SUCCESS, "failed to add row with blob\n");
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiDatabaseCommit( hdb );
+ r = libmsi_database_commit( hdb );
ok( r == ERROR_SUCCESS , "Failed to commit database\n" );
- MsiCloseHandle( hdb );
+ libmsi_unref( hdb );
DeleteFileA("testdata.bin");
generate_transform_manual();
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_DIRECT, &hdb );
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_DIRECT, &hdb );
ok( r == ERROR_SUCCESS , "Failed to create database\n" );
- r = MsiDatabaseApplyTransform( hdb, mstfile, 0 );
+ r = libmsi_database_apply_transform( hdb, mstfile, 0 );
ok( r == ERROR_SUCCESS, "return code %d, should be ERROR_SUCCESS\n", r );
- MsiDatabaseCommit( hdb );
+ libmsi_database_commit( hdb );
/* check new values */
hrec = 0;
sql = "select `BAR`,`CAR` from `AAR` where `BAR` = 1 AND `CAR` = 'vw'";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "select query failed\n");
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
sql = "select `BAR`,`CAR` from `AAR` where `BAR` = 2 AND `CAR` = 'bmw'";
hrec = 0;
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "select query failed\n");
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* check updated values */
hrec = 0;
sql = "select `NOO`,`OOO` from `MOO` where `NOO` = 1 AND `OOO` = 'c'";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "select query failed\n");
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* check unchanged value */
hrec = 0;
sql = "select `NOO`,`OOO` from `MOO` where `NOO` = 2 AND `OOO` = 'b'";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "select query failed\n");
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* check deleted value */
hrec = 0;
sql = "select * from `MOO` where `NOO` = 3";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "select query failed\n");
- if (hrec) MsiCloseHandle(hrec);
+ if (hrec) libmsi_unref(hrec);
/* check added stream */
hrec = 0;
@@ -3033,65 +3033,65 @@ static void test_try_transform(void)
/* check the contents of the stream */
sz = sizeof buffer;
- r = MsiRecordReadStream( hrec, 1, buffer, &sz );
+ r = libmsi_record_save_stream( hrec, 1, buffer, &sz );
ok(r == ERROR_SUCCESS, "read stream failed\n");
ok(!memcmp(buffer, "naengmyon", 9), "stream data was wrong\n");
ok(sz == 9, "stream data was wrong size\n");
- if (hrec) MsiCloseHandle(hrec);
+ if (hrec) libmsi_unref(hrec);
/* check the validity of the table with a deleted row */
hrec = 0;
sql = "select * from `MOO`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "open query failed\n");
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "query execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "query fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
sz = sizeof buffer;
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "record get string failed\n");
ok(!strcmp(buffer, "c"), "Expected c, got %s\n", buffer);
- r = MsiRecordGetInteger(hrec, 3);
+ r = libmsi_record_get_integer(hrec, 3);
ok(r == 0x80000000, "Expected 0x80000000, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 4);
+ r = libmsi_record_get_integer(hrec, 4);
ok(r == 5, "Expected 5, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "query fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 2, "Expected 2, got %d\n", r);
sz = sizeof buffer;
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "record get string failed\n");
ok(!strcmp(buffer, "b"), "Expected b, got %s\n", buffer);
- r = MsiRecordGetInteger(hrec, 3);
+ r = libmsi_record_get_integer(hrec, 3);
ok(r == 0x80000000, "Expected 0x80000000, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 4);
+ r = libmsi_record_get_integer(hrec, 4);
ok(r == 0x80000000, "Expected 0x80000000, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "query fetch succeeded\n");
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
#if 0
LibmsiObject *hpkg = 0;
@@ -3110,11 +3110,11 @@ static void test_try_transform(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "val"), "Expected val, got %s\n", buffer);
- MsiCloseHandle(hpkg);
+ libmsi_unref(hpkg);
#endif
error:
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
DeleteFile(msifile);
DeleteFile(mstfile);
}
@@ -3338,90 +3338,90 @@ static void test_join(void)
"FROM `Component`, `FeatureComponents` "
"WHERE `Component`.`Component` = `FeatureComponents`.`Component_` "
"ORDER BY `Feature_`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
ok( !strcmp( buf, join_res_first[i].one ),
"For (row %d, column 1) expected '%s', got %s\n", i, join_res_first[i].one, buf );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
ok( !strcmp( buf, join_res_first[i].two ),
"For (row %d, column 2) expected '%s', got %s\n", i, join_res_first[i].two, buf );
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( i == 5, "Expected 5 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
/* try a join without a WHERE condition */
sql = "SELECT `Component`.`ComponentId`, `FeatureComponents`.`Feature_` "
"FROM `Component`, `FeatureComponents` ";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( i == 24, "Expected 24 rows, got %d\n", i );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT DISTINCT Component, ComponentId FROM FeatureComponents, Component "
"WHERE FeatureComponents.Component_=Component.Component "
"AND (Feature_='nasalis') ORDER BY Feature_";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_second[i].one ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_second[i].two ))
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
@@ -3429,40 +3429,40 @@ static void test_join(void)
ok( i == 2, "Expected 2 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `StdDlls`.`File`, `Binary`.`Data` "
"FROM `StdDlls`, `Binary` "
"WHERE `StdDlls`.`Binary_` = `Binary`.`Name` "
"ORDER BY `File`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_third[i].one ) )
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_third[i].two ) )
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
@@ -3470,322 +3470,322 @@ static void test_join(void)
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `StdDlls`.`Binary_`, `Binary`.`Name` "
"FROM `StdDlls`, `Binary` "
"WHERE `StdDlls`.`File` = `Binary`.`Data` "
"ORDER BY `Name`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_fourth[i].one ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_fourth[i].two ))
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
ok( i == 1, "Expected 1 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `Component`.`ComponentId`, `FeatureComponents`.`Feature_` "
"FROM `Component`, `FeatureComponents` "
"WHERE `Component`.`Component` = 'zygomatic' "
"AND `FeatureComponents`.`Component_` = 'maxilla' "
"ORDER BY `Feature_`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_fifth[i].one ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_fifth[i].two ))
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
ok( i == 1, "Expected 1 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `Component`.`ComponentId`, `FeatureComponents`.`Feature_` "
"FROM `Component`, `FeatureComponents` "
"WHERE `Component` = 'zygomatic' "
"ORDER BY `Feature_`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_sixth[i].one ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_sixth[i].two ))
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
ok( i == 6, "Expected 6 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `Component`.`ComponentId`, `FeatureComponents`.`Feature_` "
"FROM `Component`, `FeatureComponents` "
"WHERE `Component` = 'zygomatic' "
"AND `Feature_` = 'nasalis' "
"ORDER BY `Feature_`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_seventh[i].one ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_seventh[i].two ))
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
ok( i == 3, "Expected 3 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `StdDlls`.`File`, `Binary`.`Data` "
"FROM `StdDlls`, `Binary` ";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 2, "Expected 2 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_eighth[i].one ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_eighth[i].four ))
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
ok( i == 6, "Expected 6 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `StdDlls`, `Binary` ";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 4, "Expected 4 record fields, got %d\n", count );
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_eighth[i].one ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 2, buf, &size );
+ r = libmsi_record_get_string( hrec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_eighth[i].two ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 3, buf, &size );
+ r = libmsi_record_get_string( hrec, 3, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_eighth[i].three ))
data_correct = false;
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 4, buf, &size );
+ r = libmsi_record_get_string( hrec, 4, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
if( strcmp( buf, join_res_eighth[i].four ))
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
ok( i == 6, "Expected 6 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `One`, `Two`, `Three` ";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
i = 0;
data_correct = true;
- while ((r = MsiQueryFetch(hquery, &hrec)) == ERROR_SUCCESS)
+ while ((r = libmsi_query_fetch(hquery, &hrec)) == ERROR_SUCCESS)
{
- count = MsiRecordGetFieldCount( hrec );
+ count = libmsi_record_get_field_count( hrec );
ok( count == 6, "Expected 6 record fields, got %d\n", count );
- r = MsiRecordGetInteger( hrec, 1 );
+ r = libmsi_record_get_integer( hrec, 1 );
if( r != join_res_ninth[i].one )
data_correct = false;
- r = MsiRecordGetInteger( hrec, 2 );
+ r = libmsi_record_get_integer( hrec, 2 );
if( r != join_res_ninth[i].two )
data_correct = false;
- r = MsiRecordGetInteger( hrec, 3 );
+ r = libmsi_record_get_integer( hrec, 3 );
if( r != join_res_ninth[i].three )
data_correct = false;
- r = MsiRecordGetInteger( hrec, 4 );
+ r = libmsi_record_get_integer( hrec, 4 );
if( r != join_res_ninth[i].four )
data_correct = false;
- r = MsiRecordGetInteger( hrec, 5 );
+ r = libmsi_record_get_integer( hrec, 5 );
if( r != join_res_ninth[i].five )
data_correct = false;
- r = MsiRecordGetInteger( hrec, 6);
+ r = libmsi_record_get_integer( hrec, 6);
if( r != join_res_ninth[i].six )
data_correct = false;
i++;
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
}
ok( data_correct, "data returned in the wrong order\n");
ok( i == 6, "Expected 6 rows, got %d\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Four`, `Five`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Nonexistent`, `One`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_BAD_QUERY_SYNTAX,
"Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r );
@@ -3794,59 +3794,59 @@ static void test_join(void)
"FROM `Component`, `FeatureComponents` "
"WHERE `Component`.`Component` = `FeatureComponents`.`Component_` "
"ORDER BY `Feature_`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok( r == ERROR_SUCCESS, "failed to open query: %d\n", r );
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok( r == ERROR_SUCCESS, "failed to execute query: %d\n", r );
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok( r == ERROR_SUCCESS, "failed to fetch query: %d\n", r );
- r = MsiRecordSetString( hrec, 1, "epicranius" );
+ r = libmsi_record_set_string( hrec, 1, "epicranius" );
ok( r == ERROR_SUCCESS, "failed to set string: %d\n", r );
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
ok( r == ERROR_SUCCESS, "failed to update row: %d\n", r );
/* try another valid operation for joins */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
todo_wine ok( r == ERROR_SUCCESS, "failed to refresh row: %d\n", r );
/* try an invalid operation for joins */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_DELETE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_DELETE, hrec);
ok( r == ERROR_FUNCTION_FAILED, "unexpected result: %d\n", r );
- r = MsiRecordSetString( hrec, 2, "epicranius" );
+ r = libmsi_record_set_string( hrec, 2, "epicranius" );
ok( r == ERROR_SUCCESS, "failed to set string: %d\n", r );
/* primary key cannot be updated */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
ok( r == ERROR_FUNCTION_FAILED, "failed to update row: %d\n", r );
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
size = MAX_PATH;
- r = MsiRecordGetString( hrec, 1, buf, &size );
+ r = libmsi_record_get_string( hrec, 1, buf, &size );
ok( r == ERROR_SUCCESS, "failed to get record string: %d\n", r );
ok( !strcmp( buf, "epicranius" ), "expected 'epicranius', got %s\n", buf );
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
DeleteFile(msifile);
}
@@ -3861,46 +3861,46 @@ static void test_temporary_table(void)
char buf[0x10];
unsigned sz;
- cond = MsiDatabaseIsTablePersistent(0, NULL);
+ cond = libmsi_database_is_table_persistent(0, NULL);
ok( cond == LIBMSI_CONDITION_ERROR, "wrong return condition\n");
hdb = create_db();
ok( hdb, "failed to create db\n");
- cond = MsiDatabaseIsTablePersistent(hdb, NULL);
+ cond = libmsi_database_is_table_persistent(hdb, NULL);
ok( cond == LIBMSI_CONDITION_ERROR, "wrong return condition\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "_Tables");
+ cond = libmsi_database_is_table_persistent(hdb, "_Tables");
ok( cond == LIBMSI_CONDITION_NONE, "wrong return condition\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "_Columns");
+ cond = libmsi_database_is_table_persistent(hdb, "_Columns");
ok( cond == LIBMSI_CONDITION_NONE, "wrong return condition\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "_Storages");
+ cond = libmsi_database_is_table_persistent(hdb, "_Storages");
ok( cond == LIBMSI_CONDITION_NONE, "wrong return condition\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "_Streams");
+ cond = libmsi_database_is_table_persistent(hdb, "_Streams");
ok( cond == LIBMSI_CONDITION_NONE, "wrong return condition\n");
sql = "CREATE TABLE `P` ( `B` SHORT NOT NULL, `C` CHAR(255) PRIMARY KEY `C`)";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "failed to add table\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "P");
+ cond = libmsi_database_is_table_persistent(hdb, "P");
ok( cond == LIBMSI_CONDITION_TRUE, "wrong return condition\n");
sql = "CREATE TABLE `P2` ( `B` SHORT NOT NULL, `C` CHAR(255) PRIMARY KEY `C`) HOLD";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "failed to add table\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "P2");
+ cond = libmsi_database_is_table_persistent(hdb, "P2");
ok( cond == LIBMSI_CONDITION_TRUE, "wrong return condition\n");
sql = "CREATE TABLE `T` ( `B` SHORT NOT NULL TEMPORARY, `C` CHAR(255) TEMPORARY PRIMARY KEY `C`) HOLD";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "failed to add table\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "T");
+ cond = libmsi_database_is_table_persistent(hdb, "T");
ok( cond == LIBMSI_CONDITION_FALSE, "wrong return condition\n");
sql = "CREATE TABLE `T2` ( `B` SHORT NOT NULL TEMPORARY, `C` CHAR(255) TEMPORARY PRIMARY KEY `C`)";
@@ -3909,25 +3909,25 @@ static void test_temporary_table(void)
query = NULL;
sql = "SELECT * FROM `T2`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_BAD_QUERY_SYNTAX,
"Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- cond = MsiDatabaseIsTablePersistent(hdb, "T2");
+ cond = libmsi_database_is_table_persistent(hdb, "T2");
ok( cond == LIBMSI_CONDITION_NONE, "wrong return condition\n");
sql = "CREATE TABLE `T3` ( `B` SHORT NOT NULL TEMPORARY, `C` CHAR(255) PRIMARY KEY `C`)";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "failed to add table\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "T3");
+ cond = libmsi_database_is_table_persistent(hdb, "T3");
ok( cond == LIBMSI_CONDITION_TRUE, "wrong return condition\n");
sql = "CREATE TABLE `T4` ( `B` SHORT NOT NULL, `C` CHAR(255) TEMPORARY PRIMARY KEY `C`)";
r = run_query(hdb, 0, sql);
ok(r == ERROR_FUNCTION_FAILED, "failed to add table\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "T4");
+ cond = libmsi_database_is_table_persistent(hdb, "T4");
ok( cond == LIBMSI_CONDITION_NONE, "wrong return condition\n");
sql = "CREATE TABLE `T5` ( `B` SHORT NOT NULL TEMP, `C` CHAR(255) TEMP PRIMARY KEY `C`) HOLD";
@@ -3936,44 +3936,44 @@ static void test_temporary_table(void)
query = NULL;
sql = "select * from `T`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "failed to query table\n");
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_TYPES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_TYPES, &rec);
ok(r == ERROR_SUCCESS, "failed to get column info\n");
sz = sizeof buf;
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to get string\n");
ok( 0 == strcmp("G255", buf), "wrong column type\n");
sz = sizeof buf;
- r = MsiRecordGetString(rec, 2, buf, &sz);
+ r = libmsi_record_get_string(rec, 2, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to get string\n");
ok( 0 == strcmp("j2", buf), "wrong column type\n");
- MsiCloseHandle( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_unref( rec );
+ libmsi_query_close( query );
+ libmsi_unref( query );
/* query the table data */
rec = 0;
r = do_query(hdb, "select * from `_Tables` where `Name` = 'T'", &rec);
ok( r == ERROR_SUCCESS, "temporary table exists in _Tables\n");
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
/* query the column data */
rec = 0;
r = do_query(hdb, "select * from `_Columns` where `Table` = 'T' AND `Name` = 'B'", &rec);
ok( r == ERROR_NO_MORE_ITEMS, "temporary table exists in _Columns\n");
- if (rec) MsiCloseHandle( rec );
+ if (rec) libmsi_unref( rec );
r = do_query(hdb, "select * from `_Columns` where `Table` = 'T' AND `Name` = 'C'", &rec);
ok( r == ERROR_NO_MORE_ITEMS, "temporary table exists in _Columns\n");
- if (rec) MsiCloseHandle( rec );
+ if (rec) libmsi_unref( rec );
- MsiCloseHandle( hdb );
+ libmsi_unref( hdb );
DeleteFile(msifile);
}
@@ -3992,7 +3992,7 @@ static void test_alter(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "failed to add table\n");
- cond = MsiDatabaseIsTablePersistent(hdb, "T");
+ cond = libmsi_database_is_table_persistent(hdb, "T");
ok( cond == LIBMSI_CONDITION_FALSE, "wrong return condition\n");
sql = "ALTER TABLE `T` HOLD";
@@ -4151,7 +4151,7 @@ static void test_alter(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle( hdb );
+ libmsi_unref( hdb );
DeleteFile(msifile);
}
@@ -4164,9 +4164,9 @@ static void test_integers(void)
const char *sql;
unsigned r;
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
/* create a table */
sql = "CREATE TABLE `integers` ( "
@@ -4174,23 +4174,23 @@ static void test_integers(void)
"`five` SHORT NOT NULL, `six` INT NOT NULL, "
"`seven` INTEGER NOT NULL, `eight` LONG NOT NULL "
"PRIMARY KEY `one`)";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(query, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_open_query(hdb, sql, &query);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(query, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `integers`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_NAMES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_NAMES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 8, "Expected 8, got %d\n", count);
ok(check_record(rec, 1, "one"), "Expected one\n");
ok(check_record(rec, 2, "two"), "Expected two\n");
@@ -4200,12 +4200,12 @@ static void test_integers(void)
ok(check_record(rec, 6, "six"), "Expected six\n");
ok(check_record(rec, 7, "seven"), "Expected seven\n");
ok(check_record(rec, 8, "eight"), "Expected eight\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_TYPES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_TYPES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- count = MsiRecordGetFieldCount(rec);
+ count = libmsi_record_get_field_count(rec);
ok(count == 8, "Expected 8, got %d\n", count);
ok(check_record(rec, 1, "I2"), "Expected I2\n");
ok(check_record(rec, 2, "I2"), "Expected I2\n");
@@ -4215,74 +4215,74 @@ static void test_integers(void)
ok(check_record(rec, 6, "i2"), "Expected i2\n");
ok(check_record(rec, 7, "i2"), "Expected i2\n");
ok(check_record(rec, 8, "i4"), "Expected i4\n");
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
/* insert values into it, NULL where NOT NULL is specified */
query = NULL;
sql = "INSERT INTO `integers` ( `one`, `two`, `three`, `four`, `five`, `six`, `seven`, `eight` )"
"VALUES('', '', '', '', '', '', '', '')";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_FUNCTION_FAILED, "Expected ERROR_FUNCTION_FAILED, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
sql = "SELECT * FROM `integers`";
r = do_query(hdb, sql, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiRecordGetFieldCount(rec);
+ r = libmsi_record_get_field_count(rec);
ok(r == -1, "record count wrong: %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
/* insert legitimate values into it */
query = NULL;
sql = "INSERT INTO `integers` ( `one`, `two`, `three`, `four`, `five`, `six`, `seven`, `eight` )"
"VALUES('', '2', '', '4', '5', '6', '7', '8')";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `integers`";
r = do_query(hdb, sql, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetFieldCount(rec);
+ r = libmsi_record_get_field_count(rec);
ok(r == 8, "record count wrong: %d\n", r);
- i = MsiRecordGetInteger(rec, 1);
+ i = libmsi_record_get_integer(rec, 1);
ok(i == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", i);
- i = MsiRecordGetInteger(rec, 3);
+ i = libmsi_record_get_integer(rec, 3);
ok(i == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", i);
- i = MsiRecordGetInteger(rec, 2);
+ i = libmsi_record_get_integer(rec, 2);
ok(i == 2, "Expected 2, got %d\n", i);
- i = MsiRecordGetInteger(rec, 4);
+ i = libmsi_record_get_integer(rec, 4);
ok(i == 4, "Expected 4, got %d\n", i);
- i = MsiRecordGetInteger(rec, 5);
+ i = libmsi_record_get_integer(rec, 5);
ok(i == 5, "Expected 5, got %d\n", i);
- i = MsiRecordGetInteger(rec, 6);
+ i = libmsi_record_get_integer(rec, 6);
ok(i == 6, "Expected 6, got %d\n", i);
- i = MsiRecordGetInteger(rec, 7);
+ i = libmsi_record_get_integer(rec, 7);
ok(i == 7, "Expected 7, got %d\n", i);
- i = MsiRecordGetInteger(rec, 8);
+ i = libmsi_record_get_integer(rec, 8);
ok(i == 8, "Expected 8, got %d\n", i);
- MsiCloseHandle(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_unref(rec);
+ libmsi_query_close(query);
+ libmsi_unref(query);
- r = MsiDatabaseCommit(hdb);
- ok(r == ERROR_SUCCESS, "MsiDatabaseCommit failed\n");
+ r = libmsi_database_commit(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_commit failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
r = DeleteFile(msifile);
ok(r == true, "file didn't exist after commit\n");
@@ -4298,9 +4298,9 @@ static void test_update(void)
unsigned size;
unsigned r;
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
/* create the Control table */
sql = "CREATE TABLE `Control` ( "
@@ -4308,14 +4308,14 @@ static void test_update(void)
"`X` SHORT NOT NULL, `Y` SHORT NOT NULL, `Width` SHORT NOT NULL, `Height` SHORT NOT NULL,"
"`Attributes` LONG, `Property` CHAR(50), `Text` CHAR(0) LOCALIZABLE, "
"`Control_Next` CHAR(50), `Help` CHAR(50) LOCALIZABLE PRIMARY KEY `Dialog_`, `Control`)";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(query, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_open_query(hdb, sql, &query);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(query, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* add a control */
query = NULL;
@@ -4323,14 +4323,14 @@ static void test_update(void)
"`Dialog_`, `Control`, `Type`, `X`, `Y`, `Width`, `Height`, "
"`Property`, `Text`, `Control_Next`, `Help` )"
"VALUES('ErrorDialog', 'ErrorText', '1', '5', '5', '5', '5', '', '', '', '')";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* add a second control */
query = NULL;
@@ -4338,14 +4338,14 @@ static void test_update(void)
"`Dialog_`, `Control`, `Type`, `X`, `Y`, `Width`, `Height`, "
"`Property`, `Text`, `Control_Next`, `Help` )"
"VALUES('ErrorDialog', 'Button', '1', '5', '5', '5', '5', '', '', '', '')";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* add a third control */
query = NULL;
@@ -4353,186 +4353,186 @@ static void test_update(void)
"`Dialog_`, `Control`, `Type`, `X`, `Y`, `Width`, `Height`, "
"`Property`, `Text`, `Control_Next`, `Help` )"
"VALUES('AnotherDialog', 'ErrorText', '1', '5', '5', '5', '5', '', '', '', '')";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* bad table */
query = NULL;
sql = "UPDATE `NotATable` SET `Text` = 'this is text' WHERE `Dialog_` = 'ErrorDialog'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
/* bad set column */
query = NULL;
sql = "UPDATE `Control` SET `NotAColumn` = 'this is text' WHERE `Dialog_` = 'ErrorDialog'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
/* bad where condition */
query = NULL;
sql = "UPDATE `Control` SET `Text` = 'this is text' WHERE `NotAColumn` = 'ErrorDialog'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
/* just the dialog_ specified */
query = NULL;
sql = "UPDATE `Control` SET `Text` = 'this is text' WHERE `Dialog_` = 'ErrorDialog'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* check the modified text */
query = NULL;
sql = "SELECT `Text` FROM `Control` WHERE `Control` = 'ErrorText'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, result, &size);
+ r = libmsi_record_get_string(rec, 1, result, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(result, "this is text"), "Expected `this is text`, got %s\n", result);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, result, &size);
+ r = libmsi_record_get_string(rec, 1, result, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strlen(result), "Expected an empty string, got %s\n", result);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* dialog_ and control specified */
query = NULL;
sql = "UPDATE `Control` SET `Text` = 'this is text' WHERE `Dialog_` = 'ErrorDialog' AND `Control` = 'ErrorText'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* check the modified text */
query = NULL;
sql = "SELECT `Text` FROM `Control` WHERE `Control` = 'ErrorText'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, result, &size);
+ r = libmsi_record_get_string(rec, 1, result, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(result, "this is text"), "Expected `this is text`, got %s\n", result);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, result, &size);
+ r = libmsi_record_get_string(rec, 1, result, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strlen(result), "Expected an empty string, got %s\n", result);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* no where condition */
query = NULL;
sql = "UPDATE `Control` SET `Text` = 'this is text'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* check the modified text */
query = NULL;
sql = "SELECT `Text` FROM `Control`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, result, &size);
+ r = libmsi_record_get_string(rec, 1, result, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(result, "this is text"), "Expected `this is text`, got %s\n", result);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, result, &size);
+ r = libmsi_record_get_string(rec, 1, result, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(result, "this is text"), "Expected `this is text`, got %s\n", result);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(rec, 1, result, &size);
+ r = libmsi_record_get_string(rec, 1, result, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(result, "this is text"), "Expected `this is text`, got %s\n", result);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(query);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(query);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(query);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(query);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "CREATE TABLE `Apple` ( `Banana` CHAR(72) NOT NULL, "
"`Orange` CHAR(72), `Pear` INT PRIMARY KEY `Banana`)";
@@ -4554,57 +4554,57 @@ static void test_update(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- rec = MsiCreateRecord(2);
- MsiRecordSetInteger(rec, 1, 8);
- MsiRecordSetString(rec, 2, "two");
+ rec = libmsi_record_create(2);
+ libmsi_record_set_int(rec, 1, 8);
+ libmsi_record_set_string(rec, 2, "two");
sql = "UPDATE `Apple` SET `Pear` = ? WHERE `Orange` = ?";
r = run_query(hdb, rec, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
query = NULL;
sql = "SELECT `Pear` FROM `Apple` ORDER BY `Orange`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == 8, "Expected 8, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == 8, "Expected 8, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == 5, "Expected 5, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expectd ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
- r = MsiDatabaseCommit(hdb);
- ok(r == ERROR_SUCCESS, "MsiDatabaseCommit failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_commit(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_commit failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
DeleteFile(msifile);
}
@@ -4615,8 +4615,8 @@ static void test_special_tables(void)
LibmsiDatabase *hdb = 0;
unsigned r;
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
sql = "CREATE TABLE `_Properties` ( "
"`foo` INT NOT NULL, `bar` INT LOCALIZABLE PRIMARY KEY `foo`)";
@@ -4643,8 +4643,8 @@ static void test_special_tables(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "created _Columns table\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
}
static void test_tables_order(void)
@@ -4657,8 +4657,8 @@ static void test_tables_order(void)
char buffer[100];
unsigned sz;
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
sql = "CREATE TABLE `foo` ( "
"`baz` INT NOT NULL PRIMARY KEY `baz`)";
@@ -4681,124 +4681,124 @@ static void test_tables_order(void)
be in the same order as these names are created in
the strings table. */
sql = "SELECT * FROM `_Tables`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "foo"), "Expected foo, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "baz"), "Expected baz, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "bar"), "Expected bar, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* The names of the tables in the _Columns table must
be in the same order as these names are created in
the strings table. */
sql = "SELECT * FROM `_Columns`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "foo"), "Expected foo, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "baz"), "Expected baz, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "baz"), "Expected baz, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "bar"), "Expected bar, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "baz"), "Expected baz, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "baz"), "Expected baz, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "baz"), "Expected baz, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "foo"), "Expected foo, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "bar"), "Expected bar, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "foo"), "Expected foo, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
DeleteFile(msifile);
}
@@ -4813,8 +4813,8 @@ static void test_rows_order(void)
char buffer[100];
unsigned sz;
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
sql = "CREATE TABLE `foo` ( "
"`bar` LONGCHAR NOT NULL PRIMARY KEY `bar`)";
@@ -4873,70 +4873,70 @@ static void test_rows_order(void)
in the string table. */
sql = "SELECT * FROM `bar`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "A"), "Expected A, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "B"), "Expected B, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "C"), "Expected E, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "E"), "Expected E, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "D"), "Expected D, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "E"), "Expected E, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "F"), "Expected F, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "A"), "Expected A, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
DeleteFile(msifile);
}
@@ -4965,8 +4965,8 @@ static void test_collation(void)
char buffer[100];
unsigned sz;
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
sql = "CREATE TABLE `bar` ( "
"`foo` LONGCHAR NOT NULL, "
@@ -5002,94 +5002,94 @@ static void test_collation(void)
ok(r == ERROR_SUCCESS, "cannot create table %u\n", r);
sql = "SELECT * FROM `bar`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "\2"), "Expected \\2, got '%s'\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "A"), "Expected A, got '%s'\n", buffer);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "\1"), "Expected \\1, got '%s'\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "B"), "Expected B, got '%s'\n", buffer);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!memcmp(buffer, letter_a_ring, sizeof(letter_a_ring)),
"Expected %s, got %s\n", letter_a_ring, buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "C"), "Expected C, got %s\n", buffer);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!memcmp(buffer, letter_a_with_ring, sizeof(letter_a_with_ring)),
"Expected %s, got %s\n", letter_a_with_ring, buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "D"), "Expected D, got %s\n", buffer);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiDatabaseOpenQuery(hdb, sql6, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql6, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!memcmp(buffer, letter_a_with_ring, sizeof(letter_a_with_ring)),
"Expected %s, got %s\n", letter_a_with_ring, buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "D"), "Expected D, got %s\n", buffer);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_NO_MORE_ITEMS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_NO_MORE_ITEMS, "libmsi_query_fetch failed\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
DeleteFile(msifile);
}
@@ -5128,115 +5128,115 @@ static void test_select_markers(void)
"( `One`, `Two`, `Three` ) VALUES ( 'banana', 'three', 3 )");
ok(r == S_OK, "cannot add file to the Media table: %d\n", r);
- rec = MsiCreateRecord(2);
- MsiRecordSetString(rec, 1, "apple");
- MsiRecordSetString(rec, 2, "two");
+ rec = libmsi_record_create(2);
+ libmsi_record_set_string(rec, 1, "apple");
+ libmsi_record_set_string(rec, 2, "two");
query = NULL;
sql = "SELECT * FROM `Table` WHERE `One`=? AND `Two`=? ORDER BY `Three`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, rec);
+ r = libmsi_query_execute(query, rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &res);
+ r = libmsi_query_fetch(query, &res);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(res, 1, buf, &size);
+ r = libmsi_record_get_string(res, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "apple"), "Expected apple, got %s\n", buf);
size = MAX_PATH;
- r = MsiRecordGetString(res, 2, buf, &size);
+ r = libmsi_record_get_string(res, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "two"), "Expected two, got %s\n", buf);
- r = MsiRecordGetInteger(res, 3);
+ r = libmsi_record_get_integer(res, 3);
ok(r == 1, "Expected 1, got %d\n", r);
- MsiCloseHandle(res);
+ libmsi_unref(res);
- r = MsiQueryFetch(query, &res);
+ r = libmsi_query_fetch(query, &res);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(res, 1, buf, &size);
+ r = libmsi_record_get_string(res, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "apple"), "Expected apple, got %s\n", buf);
size = MAX_PATH;
- r = MsiRecordGetString(res, 2, buf, &size);
+ r = libmsi_record_get_string(res, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "two"), "Expected two, got %s\n", buf);
- r = MsiRecordGetInteger(res, 3);
+ r = libmsi_record_get_integer(res, 3);
ok(r == 2, "Expected 2, got %d\n", r);
- MsiCloseHandle(res);
+ libmsi_unref(res);
- r = MsiQueryFetch(query, &res);
+ r = libmsi_query_fetch(query, &res);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiCloseHandle(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_unref(rec);
+ libmsi_query_close(query);
+ libmsi_unref(query);
- rec = MsiCreateRecord(2);
- MsiRecordSetString(rec, 1, "one");
- MsiRecordSetInteger(rec, 2, 1);
+ rec = libmsi_record_create(2);
+ libmsi_record_set_string(rec, 1, "one");
+ libmsi_record_set_int(rec, 2, 1);
query = NULL;
sql = "SELECT * FROM `Table` WHERE `Two`<>? AND `Three`>? ORDER BY `Three`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, rec);
+ r = libmsi_query_execute(query, rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &res);
+ r = libmsi_query_fetch(query, &res);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(res, 1, buf, &size);
+ r = libmsi_record_get_string(res, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "apple"), "Expected apple, got %s\n", buf);
size = MAX_PATH;
- r = MsiRecordGetString(res, 2, buf, &size);
+ r = libmsi_record_get_string(res, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "two"), "Expected two, got %s\n", buf);
- r = MsiRecordGetInteger(res, 3);
+ r = libmsi_record_get_integer(res, 3);
ok(r == 2, "Expected 2, got %d\n", r);
- MsiCloseHandle(res);
+ libmsi_unref(res);
- r = MsiQueryFetch(query, &res);
+ r = libmsi_query_fetch(query, &res);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(res, 1, buf, &size);
+ r = libmsi_record_get_string(res, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "banana"), "Expected banana, got %s\n", buf);
size = MAX_PATH;
- r = MsiRecordGetString(res, 2, buf, &size);
+ r = libmsi_record_get_string(res, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "three"), "Expected three, got %s\n", buf);
- r = MsiRecordGetInteger(res, 3);
+ r = libmsi_record_get_integer(res, 3);
ok(r == 3, "Expected 3, got %d\n", r);
- MsiCloseHandle(res);
+ libmsi_unref(res);
- r = MsiQueryFetch(query, &res);
+ r = libmsi_query_fetch(query, &res);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiCloseHandle(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
- MsiCloseHandle(hdb);
+ libmsi_unref(rec);
+ libmsi_query_close(query);
+ libmsi_unref(query);
+ libmsi_unref(hdb);
DeleteFile(msifile);
}
@@ -5251,8 +5251,8 @@ static void test_querymodify_update(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
sql = "CREATE TABLE `table` (`A` INT, `B` INT PRIMARY KEY `A`)";
r = run_query( hdb, 0, sql );
@@ -5271,233 +5271,233 @@ static void test_querymodify_update(void)
ok(r == ERROR_SUCCESS, "query failed\n");
sql = "SELECT `B` FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
-
- r = MsiRecordSetInteger(hrec, 1, 0);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
+
+ r = libmsi_record_set_int(hrec, 1, 0);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed: %d\n", r);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed: %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
-
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
+
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 0, "Expected 0, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 3, "Expected 3, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 4, "Expected 4, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 5, "Expected 5, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 6, "Expected 6, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* loop through all elements */
sql = "SELECT `B` FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
while (true)
{
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
if (r != ERROR_SUCCESS)
break;
- r = MsiRecordSetInteger(hrec, 1, 0);
+ r = libmsi_record_set_int(hrec, 1, 0);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed: %d\n", r);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed: %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
}
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
-
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
+
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 0, "Expected 0, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 3, "Expected 3, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 0, "Expected 0, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 5, "Expected 5, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 0, "Expected 0, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "CREATE TABLE `table2` (`A` INT, `B` INT PRIMARY KEY `A`)";
r = run_query( hdb, 0, sql );
ok(r == ERROR_SUCCESS, "query failed\n");
sql = "INSERT INTO `table2` (`A`, `B`) VALUES (?, ?)";
- r = MsiDatabaseOpenQuery( hdb, sql, &hquery );
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
+ r = libmsi_database_open_query( hdb, sql, &hquery );
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
test_max = 100;
offset = 1234;
for(i = 0; i < test_max; i++)
{
- hrec = MsiCreateRecord( 2 );
- MsiRecordSetInteger( hrec, 1, test_max - i );
- MsiRecordSetInteger( hrec, 2, i );
+ hrec = libmsi_record_create( 2 );
+ libmsi_record_set_int( hrec, 1, test_max - i );
+ libmsi_record_set_int( hrec, 2, i );
- r = MsiQueryExecute( hquery, hrec );
+ r = libmsi_query_execute( hquery, hrec );
ok(r == ERROR_SUCCESS, "Got %d\n", r);
- r = MsiCloseHandle( hrec );
+ r = libmsi_unref( hrec );
ok(r == ERROR_SUCCESS, "Got %d\n", r);
}
- r = MsiQueryClose( hquery );
+ r = libmsi_query_close( hquery );
ok(r == ERROR_SUCCESS, "Got %d\n", r);
- r = MsiCloseHandle( hquery );
+ r = libmsi_unref( hquery );
ok(r == ERROR_SUCCESS, "Got %d\n", r);
/* Update. */
sql = "SELECT * FROM `table2` ORDER BY `B`";
- r = MsiDatabaseOpenQuery( hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute( hquery, 0 );
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query( hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute( hquery, 0 );
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
count = 0;
- while (MsiQueryFetch( hquery, &hrec ) == ERROR_SUCCESS)
+ while (libmsi_query_fetch( hquery, &hrec ) == ERROR_SUCCESS)
{
- unsigned b = MsiRecordGetInteger( hrec, 2 );
+ unsigned b = libmsi_record_get_integer( hrec, 2 );
- r = MsiRecordSetInteger( hrec, 2, b + offset);
+ r = libmsi_record_set_int( hrec, 2, b + offset);
ok(r == ERROR_SUCCESS, "Got %d\n", r);
- r = MsiQueryModify( hquery, LIBMSI_MODIFY_UPDATE, hrec );
+ r = libmsi_query_modify( hquery, LIBMSI_MODIFY_UPDATE, hrec );
ok(r == ERROR_SUCCESS, "Got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
count++;
}
ok(count == test_max, "Got count %d\n", count);
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* Recheck. */
sql = "SELECT * FROM `table2` ORDER BY `B`";
- r = MsiDatabaseOpenQuery( hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute( hquery, 0 );
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query( hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute( hquery, 0 );
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
count = 0;
- while (MsiQueryFetch( hquery, &hrec ) == ERROR_SUCCESS)
+ while (libmsi_query_fetch( hquery, &hrec ) == ERROR_SUCCESS)
{
- unsigned a = MsiRecordGetInteger( hrec, 1 );
- unsigned b = MsiRecordGetInteger( hrec, 2 );
+ unsigned a = libmsi_record_get_integer( hrec, 1 );
+ unsigned b = libmsi_record_get_integer( hrec, 2 );
ok( ( test_max - a + offset) == b, "Got (%d, %d), expected (%d, %d)\n",
a, b, test_max - a + offset, b);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
count++;
}
ok(count == test_max, "Got count %d\n", count);
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiCloseHandle( hdb );
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase close failed\n");
+ r = libmsi_unref( hdb );
+ ok(r == ERROR_SUCCESS, "libmsi_database_open close failed\n");
}
static void test_querymodify_assign(void)
@@ -5511,8 +5511,8 @@ static void test_querymodify_assign(void)
/* setup database */
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
sql = "CREATE TABLE `table` (`A` INT, `B` INT PRIMARY KEY `A`)";
r = run_query( hdb, 0, sql );
@@ -5520,107 +5520,107 @@ static void test_querymodify_assign(void)
/* assign to query, new primary key */
sql = "SELECT * FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- hrec = MsiCreateRecord(2);
- ok(hrec != 0, "MsiCreateRecord failed\n");
+ hrec = libmsi_record_create(2);
+ ok(hrec != 0, "libmsi_record_create failed\n");
- r = MsiRecordSetInteger(hrec, 1, 1);
+ r = libmsi_record_set_int(hrec, 1, 1);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetInteger(hrec, 2, 2);
+ r = libmsi_record_set_int(hrec, 2, 2);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_ASSIGN, hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed: %d\n", r);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_ASSIGN, hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed: %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
-
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
+
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* assign to query, primary key matches */
sql = "SELECT * FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
- hrec = MsiCreateRecord(2);
- ok(hrec != 0, "MsiCreateRecord failed\n");
+ hrec = libmsi_record_create(2);
+ ok(hrec != 0, "libmsi_record_create failed\n");
- r = MsiRecordSetInteger(hrec, 1, 1);
+ r = libmsi_record_set_int(hrec, 1, 1);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiRecordSetInteger(hrec, 2, 4);
+ r = libmsi_record_set_int(hrec, 2, 4);
ok(r == ERROR_SUCCESS, "failed to set integer\n");
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_ASSIGN, hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryModify failed: %d\n", r);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_ASSIGN, hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_modify failed: %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
sql = "SELECT * FROM `table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hquery, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryFetch(hquery, &hrec);
- ok(r == ERROR_SUCCESS, "MsiQueryFetch failed\n");
-
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hquery, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_fetch(hquery, &hrec);
+ ok(r == ERROR_SUCCESS, "libmsi_query_fetch failed\n");
+
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 4, "Expected 4, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n");
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(hquery);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hquery);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hquery);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* close database */
- r = MsiCloseHandle( hdb );
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase close failed\n");
+ r = libmsi_unref( hdb );
+ ok(r == ERROR_SUCCESS, "libmsi_database_open close failed\n");
}
static const WCHAR data10[] = { /* MOO */
@@ -5675,7 +5675,7 @@ static void test_stringtable(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `MOO` (`A` INT, `B` CHAR(72) PRIMARY KEY `A`)";
@@ -5698,27 +5698,27 @@ static void test_stringtable(void)
/* open a query */
sql = "SELECT * FROM `MOO`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hrec = MsiCreateRecord(2);
+ hrec = libmsi_record_create(2);
- r = MsiRecordSetInteger(hrec, 1, 3);
+ r = libmsi_record_set_int(hrec, 1, 3);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordSetString(hrec, 2, "three");
+ r = libmsi_record_set_string(hrec, 2, "three");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* insert a nonpersistent row */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(hquery);
+ r = libmsi_query_close(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hquery);
+ r = libmsi_unref(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* insert persistent row */
@@ -5731,100 +5731,100 @@ static void test_stringtable(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiDatabaseCommit(hdb);
+ r = libmsi_database_commit(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hdb);
+ r = libmsi_unref(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `MOO`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetFieldCount(hrec);
+ r = libmsi_record_get_field_count(hrec);
ok(r == 2, "Expected 2, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "one"), "Expected one, got '%s'\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(hquery);
+ r = libmsi_query_close(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hquery);
+ r = libmsi_unref(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `AAR`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetFieldCount(hrec);
+ r = libmsi_record_get_field_count(hrec);
ok(r == 2, "Expected 2, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 2, "Expected 2, got %d\n", r);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "two"), "Expected two, got '%s'\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetFieldCount(hrec);
+ r = libmsi_record_get_field_count(hrec);
ok(r == 2, "Expected 2, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 5, "Expected 5, got %d\n", r);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "five"), "Expected five, got '%s'\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(hquery);
+ r = libmsi_query_close(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hquery);
+ r = libmsi_unref(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hdb);
+ r = libmsi_unref(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
MultiByteToWideChar(CP_ACP, 0, msifile, -1, name, 0x20);
@@ -5904,8 +5904,8 @@ static void test_querymodify_delete(void)
DeleteFile(msifile);
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `phone` ( "
@@ -5930,65 +5930,65 @@ static void test_querymodify_delete(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `phone` WHERE `id` <= 2";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* delete 1 */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_DELETE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_DELETE, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* delete 2 */
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_DELETE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_DELETE, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(hquery);
+ r = libmsi_query_close(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hquery);
+ r = libmsi_unref(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `phone`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 3, "Expected 3, got %d\n", r);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 2, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 2, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "Cindy"), "Expected Cindy, got %s\n", buffer);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 3, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 3, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "2937550"), "Expected 2937550, got %s\n", buffer);
- r = MsiCloseHandle(hrec);
+ r = libmsi_unref(hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- r = MsiQueryClose(hquery);
+ r = libmsi_query_close(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hquery);
+ r = libmsi_unref(hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiCloseHandle(hdb);
+ r = libmsi_unref(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
}
@@ -6079,13 +6079,13 @@ static void test_defaultdatabase(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiDatabaseCommit(hdb);
+ r = libmsi_database_commit(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
hr = StgOpenStorage(msifileW, NULL, STGM_READ | STGM_SHARE_DENY_WRITE, NULL, 0, &stg);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr);
@@ -6147,172 +6147,172 @@ static void test_order(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT `A`, `B` FROM `Mesa` ORDER BY `C`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 3, "Expected 3, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 4, "Expected 3, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 5, "Expected 5, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 6, "Expected 6, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 1, "Expected 1, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 2, "Expected 2, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `A`, `D` FROM `Mesa`, `Sideboard` ORDER BY `F`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 1, "Expected 1, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 12, "Expected 12, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 3, "Expected 3, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 12, "Expected 12, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 5, "Expected 5, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 12, "Expected 12, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 1, "Expected 1, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 14, "Expected 14, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 3, "Expected 3, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 14, "Expected 14, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 5, "Expected 5, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 14, "Expected 14, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 1, "Expected 1, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 10, "Expected 10, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 3, "Expected 3, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 10, "Expected 10, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(hrec, 1);
+ val = libmsi_record_get_integer(hrec, 1);
ok(val == 5, "Expected 5, got %d\n", val);
- val = MsiRecordGetInteger(hrec, 2);
+ val = libmsi_record_get_integer(hrec, 2);
ok(val == 10, "Expected 10, got %d\n", val);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Empty` ORDER BY `A`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "CREATE TABLE `Buffet` ( `One` CHAR(72), `Two` SHORT PRIMARY KEY `One`)";
r = run_query(hdb, 0, sql);
@@ -6331,30 +6331,30 @@ static void test_order(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `Buffet` WHERE `One` = 'dos' ORDER BY `Two`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = sizeof(buffer);
- r = MsiRecordGetString(hrec, 1, buffer, &sz);
+ r = libmsi_record_get_string(hrec, 1, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "dos"), "Expected \"dos\", got \"%s\"\n", buffer);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 3, "Expected 3, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
- MsiCloseHandle(hdb);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
+ libmsi_unref(hdb);
}
static void test_querymodify_delete_temporary(void)
@@ -6367,7 +6367,7 @@ static void test_querymodify_delete_temporary(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `Table` ( `A` SHORT PRIMARY KEY `A` )";
@@ -6375,103 +6375,103 @@ static void test_querymodify_delete_temporary(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `Table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hrec = MsiCreateRecord(1);
- MsiRecordSetInteger(hrec, 1, 1);
+ hrec = libmsi_record_create(1);
+ libmsi_record_set_int(hrec, 1, 1);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- hrec = MsiCreateRecord(1);
- MsiRecordSetInteger(hrec, 1, 2);
+ hrec = libmsi_record_create(1);
+ libmsi_record_set_int(hrec, 1, 2);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- hrec = MsiCreateRecord(1);
- MsiRecordSetInteger(hrec, 1, 3);
+ hrec = libmsi_record_create(1);
+ libmsi_record_set_int(hrec, 1, 3);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- hrec = MsiCreateRecord(1);
- MsiRecordSetInteger(hrec, 1, 4);
+ hrec = libmsi_record_create(1);
+ libmsi_record_set_int(hrec, 1, 4);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Table` WHERE `A` = 2";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_DELETE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_DELETE, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Table` WHERE `A` = 3";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_DELETE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_DELETE, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Table` ORDER BY `A`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 4, "Expected 4, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
- MsiCloseHandle(hdb);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -6487,7 +6487,7 @@ static void test_deleterow(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `Table` ( `A` CHAR(72) NOT NULL PRIMARY KEY `A` )";
@@ -6506,36 +6506,36 @@ static void test_deleterow(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiDatabaseCommit(hdb);
+ r = libmsi_database_commit(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `Table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "two"), "Expected two, got %s\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
- MsiCloseHandle(hdb);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -6556,7 +6556,7 @@ static void test_quotes(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `Table` ( `A` CHAR(72) NOT NULL PRIMARY KEY `A` )";
@@ -6595,60 +6595,60 @@ static void test_quotes(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `Table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "This is a \"string\" ok"),
"Expected \"This is a \"string\" ok\", got %s\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
write_file("import.idt", import_dat, (sizeof(import_dat) - 1) * sizeof(char));
- r = MsiDatabaseImport(hdb, CURR_DIR, "import.idt");
+ r = libmsi_database_import(hdb, CURR_DIR, "import.idt");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
DeleteFileA("import.idt");
sql = "SELECT * FROM `Table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "This is a new 'string' ok"),
"Expected \"This is a new 'string' ok\", got %s\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
- MsiCloseHandle(hdb);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -6664,7 +6664,7 @@ static void test_carriagereturn(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `Table`\r ( `A` CHAR(72) NOT NULL PRIMARY KEY `A` )";
@@ -6795,48 +6795,48 @@ static void test_carriagereturn(void)
"Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
sql = "SELECT * FROM `_Tables`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "\rOne"), "Expected \"\\rOne\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Tw\ro"), "Expected \"Tw\\ro\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Three\r"), "Expected \"Three\r\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -6852,7 +6852,7 @@ static void test_noquotes(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE Table ( `A` CHAR(72) NOT NULL PRIMARY KEY `A` )";
@@ -6872,112 +6872,112 @@ static void test_noquotes(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `_Tables`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Table"), "Expected \"Table\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Table2"), "Expected \"Table2\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Table3"), "Expected \"Table3\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `_Columns`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Table"), "Expected \"Table\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 3, buf, &size);
+ r = libmsi_record_get_string(hrec, 3, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "A"), "Expected \"A\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Table2"), "Expected \"Table2\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 3, buf, &size);
+ r = libmsi_record_get_string(hrec, 3, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "A"), "Expected \"A\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Table3"), "Expected \"Table3\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 3, buf, &size);
+ r = libmsi_record_get_string(hrec, 3, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "A"), "Expected \"A\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "INSERT INTO Table ( `A` ) VALUES ( 'hi' )";
r = run_query(hdb, 0, sql);
@@ -7005,39 +7005,39 @@ static void test_noquotes(void)
hquery = NULL;
sql = "SELECT * FROM Table2";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Table` WHERE A = 'hi'";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "hi"), "Expected \"hi\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
- MsiCloseHandle(hdb);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -7063,7 +7063,7 @@ static void test_forcecodepage(void)
DeleteFile(msifile);
GetCurrentDirectoryA(MAX_PATH, CURR_DIR);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `_ForceCodepage`";
@@ -7078,16 +7078,16 @@ static void test_forcecodepage(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- r = MsiDatabaseCommit(hdb);
+ r = libmsi_database_commit(hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `_ForceCodepage`";
r = run_query(hdb, 0, sql);
ok(r == ERROR_BAD_QUERY_SYNTAX, "Expected ERROR_BAD_QUERY_SYNTAX, got %d\n", r);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_DIRECT, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_DIRECT, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `_ForceCodepage`";
@@ -7097,7 +7097,7 @@ static void test_forcecodepage(void)
fd = open("forcecodepage.idt", O_WRONLY | O_BINARY | O_CREAT, 0644);
ok(fd != -1, "cannot open file\n");
- r = MsiDatabaseExport(hdb, "_ForceCodepage", fd);
+ r = libmsi_database_export(hdb, "_ForceCodepage", fd);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
close(fd);
@@ -7107,13 +7107,13 @@ static void test_forcecodepage(void)
create_file_data("forcecodepage.idt", "\r\n\r\n850\t_ForceCodepage\r\n", 0);
- r = MsiDatabaseImport(hdb, CURR_DIR, "forcecodepage.idt");
+ r = libmsi_database_import(hdb, CURR_DIR, "forcecodepage.idt");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
fd = open("forcecodepage.idt", O_WRONLY | O_BINARY | O_CREAT, 0644);
ok(fd != -1, "cannot open file\n");
- r = MsiDatabaseExport(hdb, "_ForceCodepage", fd);
+ r = libmsi_database_export(hdb, "_ForceCodepage", fd);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
close(fd);
@@ -7123,10 +7123,10 @@ static void test_forcecodepage(void)
create_file_data("forcecodepage.idt", "\r\n\r\n9999\t_ForceCodepage\r\n", 0);
- r = MsiDatabaseImport(hdb, CURR_DIR, "forcecodepage.idt");
+ r = libmsi_database_import(hdb, CURR_DIR, "forcecodepage.idt");
ok(r == ERROR_FUNCTION_FAILED, "Expected ERROR_FUNCTION_FAILED, got %d\n", r);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
DeleteFileA("forcecodepage.idt");
}
@@ -7143,7 +7143,7 @@ static void test_querymodify_refresh(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `Table` ( `A` CHAR(72) NOT NULL, `B` INT PRIMARY KEY `A` )";
@@ -7155,45 +7155,45 @@ static void test_querymodify_refresh(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `Table`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "UPDATE `Table` SET `B` = 2 WHERE `A` = 'hi'";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buffer, &size);
+ r = libmsi_record_get_string(hrec, 1, buffer, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "hi"), "Expected \"hi\", got \"%s\"\n", buffer);
ok(size == 2, "Expected 2, got %d\n", size);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "INSERT INTO `Table` ( `A`, `B` ) VALUES ( 'hello', 3 )";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `Table` WHERE `B` = 3";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "UPDATE `Table` SET `B` = 2 WHERE `A` = 'hello'";
@@ -7204,22 +7204,22 @@ static void test_querymodify_refresh(void)
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buffer, &size);
+ r = libmsi_record_get_string(hrec, 1, buffer, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buffer, "hello"), "Expected \"hello\", got \"%s\"\n", buffer);
ok(size == 5, "Expected 5, got %d\n", size);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
- MsiCloseHandle(hdb);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -7233,7 +7233,7 @@ static void test_where_querymodify(void)
DeleteFile(msifile);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `Table` ( `A` INT, `B` INT PRIMARY KEY `A` )";
@@ -7254,76 +7254,76 @@ static void test_where_querymodify(void)
/* `B` = 3 doesn't match, but the query shouldn't be executed */
sql = "SELECT * FROM `Table` WHERE `B` = 3";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- hrec = MsiCreateRecord(2);
- MsiRecordSetInteger(hrec, 1, 7);
- MsiRecordSetInteger(hrec, 2, 8);
+ hrec = libmsi_record_create(2);
+ libmsi_record_set_int(hrec, 1, 7);
+ libmsi_record_set_int(hrec, 2, 8);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_INSERT_TEMPORARY, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Table` WHERE `A` = 7";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 7, "Expected 7, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 8, "Expected 8, got %d\n", r);
- MsiRecordSetInteger(hrec, 2, 9);
+ libmsi_record_set_int(hrec, 2, 9);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_UPDATE, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `Table` WHERE `A` = 7";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 7, "Expected 7, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 9, "Expected 9, got %d\n", r);
sql = "UPDATE `Table` SET `B` = 10 WHERE `A` = 7";
r = run_query(hdb, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryModify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
+ r = libmsi_query_modify(hquery, LIBMSI_MODIFY_REFRESH, hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 7, "Expected 7, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 10, "Expected 10, got %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
- MsiCloseHandle(hdb);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
+ libmsi_unref(hdb);
}
static bool create_storage(const char *name)
@@ -7375,12 +7375,12 @@ static void test_storages_table(void)
hdb = create_db();
ok(hdb, "failed to create db\n");
- r = MsiDatabaseCommit(hdb);
+ r = libmsi_database_commit(hdb);
ok(r == ERROR_SUCCESS , "Failed to commit database\n");
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb);
ok(r == ERROR_SUCCESS , "Failed to open database\n");
/* check the column types */
@@ -7389,7 +7389,7 @@ static void test_storages_table(void)
ok(check_record(hrec, 1, "s62"), "wrong hrecord type\n");
ok(check_record(hrec, 2, "V0"), "wrong hrecord type\n");
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* now try the names */
hrec = get_column_info(hdb, "SELECT * FROM `_Storages`", LIBMSI_COL_INFO_NAMES);
@@ -7397,61 +7397,61 @@ static void test_storages_table(void)
ok(check_record(hrec, 1, "Name"), "wrong hrecord type\n");
ok(check_record(hrec, 2, "Data"), "wrong hrecord type\n");
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
create_storage("storage.bin");
- hrec = MsiCreateRecord(2);
- MsiRecordSetString(hrec, 1, "stgname");
+ hrec = libmsi_record_create(2);
+ libmsi_record_set_string(hrec, 1, "stgname");
- r = MsiRecordSetStream(hrec, 2, "storage.bin");
+ r = libmsi_record_load_stream(hrec, 2, "storage.bin");
ok(r == ERROR_SUCCESS, "Failed to add stream data to the hrecord: %d\n", r);
DeleteFileA("storage.bin");
sql = "INSERT INTO `_Storages` (`Name`, `Data`) VALUES (?, ?)";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Failed to open database hquery: %d\n", r);
- r = MsiQueryExecute(hquery, hrec);
+ r = libmsi_query_execute(hquery, hrec);
ok(r == ERROR_SUCCESS, "Failed to execute hquery: %d\n", r);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT `Name`, `Data` FROM `_Storages`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Failed to open database hquery: %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Failed to execute hquery: %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Failed to fetch hrecord: %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, file, &size);
+ r = libmsi_record_get_string(hrec, 1, file, &size);
ok(r == ERROR_SUCCESS, "Failed to get string: %d\n", r);
ok(!strcmp(file, "stgname"), "Expected \"stgname\", got \"%s\"\n", file);
size = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordReadStream(hrec, 2, buf, &size);
+ r = libmsi_record_save_stream(hrec, 2, buf, &size);
ok(r == ERROR_INVALID_DATA, "Expected ERROR_INVALID_DATA, got %d\n", r);
ok(!strcmp(buf, "apple"), "Expected buf to be unchanged, got %s\n", buf);
ok(size == 0, "Expected 0, got %d\n", size);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
- MsiDatabaseCommit(hdb);
- MsiCloseHandle(hdb);
+ libmsi_database_commit(hdb);
+ libmsi_unref(hdb);
MultiByteToWideChar(CP_ACP, 0, msifile, -1, name, MAX_PATH);
hr = StgOpenStorage(name, NULL, STGM_DIRECT | STGM_READ |
@@ -7492,7 +7492,7 @@ static void test_droptable(void)
unsigned size;
unsigned r;
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `One` ( `A` INT PRIMARY KEY `A` )";
@@ -7504,53 +7504,53 @@ static void test_droptable(void)
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
sql = "SELECT * FROM `_Tables` WHERE `Name` = 'One'";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "One"), "Expected \"One\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `_Columns` WHERE `Table` = 'One'";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "One"), "Expected \"One\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 3, buf, &size);
+ r = libmsi_record_get_string(hrec, 3, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "A"), "Expected \"A\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS,
"Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "DROP `One`";
r = run_query(hdb, 0, sql);
@@ -7564,17 +7564,17 @@ static void test_droptable(void)
sql = "DROP TABLE `One`";
hquery = 0;
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_FUNCTION_FAILED,
"Expected ERROR_FUNCTION_FAILED, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `IDontExist`";
r = do_query(hdb, sql, &hrec);
@@ -7616,71 +7616,71 @@ static void test_droptable(void)
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
sql = "SELECT * FROM `_Tables` WHERE `Name` = 'One'";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "One"), "Expected \"One\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "SELECT * FROM `_Columns` WHERE `Table` = 'One'";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "One"), "Expected \"One\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 3, buf, &size);
+ r = libmsi_record_get_string(hrec, 3, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "B"), "Expected \"B\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "One"), "Expected \"One\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 3, buf, &size);
+ r = libmsi_record_get_string(hrec, 3, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "C"), "Expected \"C\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS,
"Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "DROP TABLE One";
r = run_query(hdb, 0, sql);
@@ -7699,7 +7699,7 @@ static void test_droptable(void)
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -7714,32 +7714,32 @@ static void test_dbmerge(void)
unsigned size;
unsigned r;
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiOpenDatabase("refdb.msi", LIBMSI_DB_OPEN_CREATE, &href);
+ r = libmsi_database_open("refdb.msi", LIBMSI_DB_OPEN_CREATE, &href);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* hDatabase is invalid */
- r = MsiDatabaseMerge(0, href, "MergeErrors");
+ r = libmsi_database_merge(0, href, "MergeErrors");
ok(r == ERROR_INVALID_HANDLE,
"Expected ERROR_INVALID_HANDLE, got %d\n", r);
/* hDatabaseMerge is invalid */
- r = MsiDatabaseMerge(hdb, 0, "MergeErrors");
+ r = libmsi_database_merge(hdb, 0, "MergeErrors");
ok(r == ERROR_INVALID_HANDLE,
"Expected ERROR_INVALID_HANDLE, got %d\n", r);
/* szTableName is NULL */
- r = MsiDatabaseMerge(hdb, href, NULL);
+ r = libmsi_database_merge(hdb, href, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* szTableName is empty */
- r = MsiDatabaseMerge(hdb, href, "");
+ r = libmsi_database_merge(hdb, href, "");
ok(r == ERROR_INVALID_TABLE, "Expected ERROR_INVALID_TABLE, got %d\n", r);
/* both DBs empty, szTableName is valid */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "CREATE TABLE `One` ( `A` INT PRIMARY KEY `A` )";
@@ -7751,7 +7751,7 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* column types don't match */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_DATATYPE_MISMATCH,
"Expected ERROR_DATATYPE_MISMATCH, got %d\n", r);
@@ -7796,7 +7796,7 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* column sting types don't match exactly */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS,
"Expected ERROR_SUCCESS, got %d\n", r);
@@ -7823,7 +7823,7 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* column names don't match */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_DATATYPE_MISMATCH,
"Expected ERROR_DATATYPE_MISMATCH, got %d\n", r);
@@ -7850,7 +7850,7 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* primary keys don't match */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_DATATYPE_MISMATCH,
"Expected ERROR_DATATYPE_MISMATCH, got %d\n", r);
@@ -7877,7 +7877,7 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* number of primary keys doesn't match */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_DATATYPE_MISMATCH,
"Expected ERROR_DATATYPE_MISMATCH, got %d\n", r);
@@ -7908,23 +7908,23 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* number of columns doesn't match */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `One`";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 3);
+ r = libmsi_record_get_integer(hrec, 3);
ok(r == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* nothing in MergeErrors */
sql = "SELECT * FROM `MergeErrors`";
@@ -7953,23 +7953,23 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* number of columns doesn't match */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `One`";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 3);
+ r = libmsi_record_get_integer(hrec, 3);
ok(r == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* nothing in MergeErrors */
sql = "SELECT * FROM `MergeErrors`";
@@ -8010,7 +8010,7 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* primary keys match, rows do not */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_FUNCTION_FAILED,
"Expected ERROR_FUNCTION_FAILED, got %d\n", r);
@@ -8020,52 +8020,52 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "One"), "Expected \"One\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiDatabaseOpenQuery(hdb, "SELECT * FROM `MergeErrors`", &hquery);
+ r = libmsi_database_open_query(hdb, "SELECT * FROM `MergeErrors`", &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
hrec = NULL;
- r = MsiQueryGetColumnInfo(hquery, LIBMSI_COL_INFO_NAMES, &hrec);
+ r = libmsi_query_get_column_info(hquery, LIBMSI_COL_INFO_NAMES, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "Table"), "Expected \"Table\", got \"%s\"\n", buf);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 2, buf, &size);
+ r = libmsi_record_get_string(hrec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "NumRowMergeConflicts"),
"Expected \"NumRowMergeConflicts\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
hrec = NULL;
- r = MsiQueryGetColumnInfo(hquery, LIBMSI_COL_INFO_TYPES, &hrec);
+ r = libmsi_query_get_column_info(hquery, LIBMSI_COL_INFO_TYPES, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "s255"), "Expected \"s255\", got \"%s\"\n", buf);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 2, buf, &size);
+ r = libmsi_record_get_string(hrec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "i2"), "Expected \"i2\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_unref(hrec);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
sql = "DROP TABLE `MergeErrors`";
r = run_query(hdb, 0, sql);
@@ -8088,22 +8088,22 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* table from merged database is not in target database */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `One`";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 2, buf, &size);
+ r = libmsi_record_get_string(hrec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "hi"), "Expected \"hi\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* nothing in MergeErrors */
sql = "SELECT * FROM `MergeErrors`";
@@ -8134,7 +8134,7 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* primary key is string */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `One`";
@@ -8142,14 +8142,14 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 1, buf, &size);
+ r = libmsi_record_get_string(hrec, 1, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "hi"), "Expected \"hi\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(hrec, 2);
+ r = libmsi_record_get_integer(hrec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* nothing in MergeErrors */
sql = "SELECT * FROM `MergeErrors`";
@@ -8160,7 +8160,7 @@ static void test_dbmerge(void)
create_file_data("codepage.idt", "\r\n\r\n850\t_ForceCodepage\r\n", 0);
GetCurrentDirectoryA(MAX_PATH, buf);
- r = MsiDatabaseImport(hdb, buf, "codepage.idt");
+ r = libmsi_database_import(hdb, buf, "codepage.idt");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "DROP TABLE `One`";
@@ -8186,22 +8186,22 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
/* code page does not match */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `One`";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 2, buf, &size);
+ r = libmsi_record_get_string(hrec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "hi"), "Expected \"hi\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* nothing in MergeErrors */
sql = "SELECT * FROM `MergeErrors`";
@@ -8226,34 +8226,34 @@ static void test_dbmerge(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
create_file("binary.dat");
- hrec = MsiCreateRecord(1);
- MsiRecordSetStream(hrec, 1, "binary.dat");
+ hrec = libmsi_record_create(1);
+ libmsi_record_load_stream(hrec, 1, "binary.dat");
sql = "INSERT INTO `One` ( `A`, `B` ) VALUES ( 1, ? )";
r = run_query(href, hrec, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* binary data to merge */
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `One`";
r = do_query(hdb, sql, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
ZeroMemory(buf, MAX_PATH);
- r = MsiRecordReadStream(hrec, 2, buf, &size);
+ r = libmsi_record_save_stream(hrec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "binary.dat\n"),
"Expected \"binary.dat\\n\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
/* nothing in MergeErrors */
sql = "SELECT * FROM `MergeErrors`";
@@ -8283,50 +8283,50 @@ static void test_dbmerge(void)
r = run_query(href, 0, sql);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiDatabaseMerge(hdb, href, "MergeErrors");
+ r = libmsi_database_merge(hdb, href, "MergeErrors");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sql = "SELECT * FROM `One`";
- r = MsiDatabaseOpenQuery(hdb, sql, &hquery);
+ r = libmsi_database_open_query(hdb, sql, &hquery);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hquery, 0);
+ r = libmsi_query_execute(hquery, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 1, "Expected 1, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 2, buf, &size);
+ r = libmsi_record_get_string(hrec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "foo"), "Expected \"foo\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(hrec, 1);
+ r = libmsi_record_get_integer(hrec, 1);
ok(r == 2, "Expected 2, got %d\n", r);
size = MAX_PATH;
- r = MsiRecordGetString(hrec, 2, buf, &size);
+ r = libmsi_record_get_string(hrec, 2, buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "bar"), "Expected \"bar\", got \"%s\"\n", buf);
- MsiCloseHandle(hrec);
+ libmsi_unref(hrec);
- r = MsiQueryFetch(hquery, &hrec);
+ r = libmsi_query_fetch(hquery, &hrec);
ok(r == ERROR_NO_MORE_ITEMS,
"Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(hquery);
- MsiCloseHandle(hquery);
+ libmsi_query_close(hquery);
+ libmsi_unref(hquery);
- MsiCloseHandle(hdb);
- MsiCloseHandle(href);
+ libmsi_unref(hdb);
+ libmsi_unref(href);
DeleteFileA(msifile);
DeleteFileA("refdb.msi");
DeleteFileA("codepage.idt");
@@ -8382,31 +8382,31 @@ static void test_select_with_tablenames(void)
query = NULL;
sql = "SELECT T1.A, T2.B FROM T1,T2";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
for (i = 0; i < 4; i++)
{
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == vals[i][0], "Expected %d, got %d\n", vals[i][0], r);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == vals[i][1], "Expected %d, got %d\n", vals[i][1], r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
}
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
- MsiCloseHandle(hdb);
+ libmsi_query_close(query);
+ libmsi_unref(query);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -8491,33 +8491,33 @@ static void test_insertorder(void)
query = NULL;
sql = "SELECT * FROM `T`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
for (i = 0; i < 6; i++)
{
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == ordervals[i][0], "Expected %d, got %d\n", ordervals[i][0], r);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == ordervals[i][1], "Expected %d, got %d\n", ordervals[i][1], r);
- r = MsiRecordGetInteger(rec, 3);
+ r = libmsi_record_get_integer(rec, 3);
ok(r == ordervals[i][2], "Expected %d, got %d\n", ordervals[i][2], r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
}
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
sql = "DELETE FROM `T` WHERE `A` IS NULL";
r = run_query(hdb, 0, sql);
@@ -8529,34 +8529,34 @@ static void test_insertorder(void)
query = NULL;
sql = "SELECT * FROM `T`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
for (i = 0; i < 6; i++)
{
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == ordervals[i][0], "Expected %d, got %d\n", ordervals[i][0], r);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == ordervals[i][1], "Expected %d, got %d\n", ordervals[i][1], r);
- r = MsiRecordGetInteger(rec, 3);
+ r = libmsi_record_get_integer(rec, 3);
ok(r == ordervals[i][2], "Expected %d, got %d\n", ordervals[i][2], r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
}
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
- MsiCloseHandle(hdb);
+ libmsi_query_close(query);
+ libmsi_unref(query);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -8601,82 +8601,82 @@ static void test_columnorder(void)
query = NULL;
sql = "SELECT * FROM `T`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_TYPES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_TYPES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("s255", buf), "Expected \"s255\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 2, buf, &sz);
+ r = libmsi_record_get_string(rec, 2, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("I2", buf), "Expected \"I2\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("S255", buf), "Expected \"S255\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 4, buf, &sz);
+ r = libmsi_record_get_string(rec, 4, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("i2", buf), "Expected \"i2\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 5, buf, &sz);
+ r = libmsi_record_get_string(rec, 5, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("i2", buf), "Expected \"i2\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_NAMES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_NAMES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("D", buf), "Expected \"D\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 2, buf, &sz);
+ r = libmsi_record_get_string(rec, 2, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("E", buf), "Expected \"E\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("A", buf), "Expected \"A\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 4, buf, &sz);
+ r = libmsi_record_get_string(rec, 4, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("C", buf), "Expected \"C\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 5, buf, &sz);
+ r = libmsi_record_get_string(rec, 5, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("B", buf), "Expected \"B\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_unref(rec);
+ libmsi_query_close(query);
+ libmsi_unref(query);
sql = "INSERT INTO `T` ( `B`, `C`, `A`, `E`, `D` ) "
"VALUES ( 1, 2, 'a', 3, 'bc' )";
@@ -8689,139 +8689,139 @@ static void test_columnorder(void)
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("bc", buf), "Expected \"bc\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 3, "Expected 3, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("a", buf), "Expected \"a\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 4);
+ r = libmsi_record_get_integer(rec, 4);
ok(r == 2, "Expected 2, got %d\n", r);
- r = MsiRecordGetInteger(rec, 5);
+ r = libmsi_record_get_integer(rec, 5);
ok(r == 1, "Expected 1, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
query = NULL;
sql = "SELECT * FROM `_Columns` WHERE `Table` = 'T'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("D", buf), "Expected \"D\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("E", buf), "Expected \"E\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 3, "Expected 3, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("A", buf), "Expected \"A\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 4, "Expected 4, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("C", buf), "Expected \"C\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 5, "Expected 5, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("B", buf), "Expected \"B\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
sql = "CREATE TABLE `Z` ( `B` SHORT NOT NULL, `C` SHORT NOT NULL, "
"`A` CHAR(255), `E` INT, `D` CHAR(255) NOT NULL "
@@ -8831,82 +8831,82 @@ static void test_columnorder(void)
query = NULL;
sql = "SELECT * FROM `Z`";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_TYPES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_TYPES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("i2", buf), "Expected \"i2\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 2, buf, &sz);
+ r = libmsi_record_get_string(rec, 2, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("S255", buf), "Expected \"S255\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("s255", buf), "Expected \"s255\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 4, buf, &sz);
+ r = libmsi_record_get_string(rec, 4, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("I2", buf), "Expected \"I2\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 5, buf, &sz);
+ r = libmsi_record_get_string(rec, 5, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("i2", buf), "Expected \"i2\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
rec = NULL;
- r = MsiQueryGetColumnInfo(query, LIBMSI_COL_INFO_NAMES, &rec);
+ r = libmsi_query_get_column_info(query, LIBMSI_COL_INFO_NAMES, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("C", buf), "Expected \"C\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 2, buf, &sz);
+ r = libmsi_record_get_string(rec, 2, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("A", buf), "Expected \"A\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("D", buf), "Expected \"D\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 4, buf, &sz);
+ r = libmsi_record_get_string(rec, 4, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("E", buf), "Expected \"E\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 5, buf, &sz);
+ r = libmsi_record_get_string(rec, 5, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("B", buf), "Expected \"B\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_unref(rec);
+ libmsi_query_close(query);
+ libmsi_unref(query);
sql = "INSERT INTO `Z` ( `B`, `C`, `A`, `E`, `D` ) "
"VALUES ( 1, 2, 'a', 3, 'bc' )";
@@ -8917,143 +8917,143 @@ static void test_columnorder(void)
r = do_query(hdb, sql, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == 2, "Expected 2, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 2, buf, &sz);
+ r = libmsi_record_get_string(rec, 2, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("a", buf), "Expected \"a\", got \"%s\"\n", buf);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("bc", buf), "Expected \"bc\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 4);
+ r = libmsi_record_get_integer(rec, 4);
ok(r == 3, "Expected 3, got %d\n", r);
- r = MsiRecordGetInteger(rec, 5);
+ r = libmsi_record_get_integer(rec, 5);
ok(r == 1, "Expected 1, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
query = NULL;
sql = "SELECT * FROM `_Columns` WHERE `Table` = 'T'";
- r = MsiDatabaseOpenQuery(hdb, sql, &query);
+ r = libmsi_database_open_query(hdb, sql, &query);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(query, 0);
+ r = libmsi_query_execute(query, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 1, "Expected 1, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("D", buf), "Expected \"D\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 2, "Expected 2, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("E", buf), "Expected \"E\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 3, "Expected 3, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("A", buf), "Expected \"A\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 4, "Expected 4, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("C", buf), "Expected \"C\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("T", buf), "Expected \"T\", got \"%s\"\n", buf);
- r = MsiRecordGetInteger(rec, 2);
+ r = libmsi_record_get_integer(rec, 2);
ok(r == 5, "Expected 5, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "kiwi");
- r = MsiRecordGetString(rec, 3, buf, &sz);
+ r = libmsi_record_get_string(rec, 3, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp("B", buf), "Expected \"B\", got \"%s\"\n", buf);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiQueryFetch(query, &rec);
+ r = libmsi_query_fetch(query, &rec);
ok(r == ERROR_NO_MORE_ITEMS, "Expected ERROR_NO_MORE_ITEMS, got %d\n", r);
- MsiQueryClose(query);
- MsiCloseHandle(query);
+ libmsi_query_close(query);
+ libmsi_unref(query);
- MsiCloseHandle(hdb);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
@@ -9071,101 +9071,101 @@ static void test_createtable(void)
ok(hdb, "failed to create db\n");
sql = "CREATE TABLE `blah` (`foo` CHAR(72) NOT NULL PRIMARY KEY `foo`)";
- res = MsiDatabaseOpenQuery( hdb, sql, &htab );
+ res = libmsi_database_open_query( hdb, sql, &htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
if(res == ERROR_SUCCESS )
{
- res = MsiQueryExecute( htab, hrec );
+ res = libmsi_query_execute( htab, hrec );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
hrec = NULL;
- res = MsiQueryGetColumnInfo( htab, LIBMSI_COL_INFO_NAMES, &hrec );
+ res = libmsi_query_get_column_info( htab, LIBMSI_COL_INFO_NAMES, &hrec );
todo_wine ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
size = sizeof(buffer);
- res = MsiRecordGetString(hrec, 1, buffer, &size );
+ res = libmsi_record_get_string(hrec, 1, buffer, &size );
todo_wine ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- MsiCloseHandle( hrec );
+ libmsi_unref( hrec );
- res = MsiQueryClose( htab );
+ res = libmsi_query_close( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiCloseHandle( htab );
+ res = libmsi_unref( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
}
sql = "CREATE TABLE `a` (`b` INT PRIMARY KEY `b`)";
- res = MsiDatabaseOpenQuery( hdb, sql, &htab );
+ res = libmsi_database_open_query( hdb, sql, &htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
if(res == ERROR_SUCCESS )
{
- res = MsiQueryExecute( htab, 0 );
+ res = libmsi_query_execute( htab, 0 );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiQueryClose( htab );
+ res = libmsi_query_close( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiCloseHandle( htab );
+ res = libmsi_unref( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
sql = "SELECT * FROM `a`";
- res = MsiDatabaseOpenQuery( hdb, sql, &htab );
+ res = libmsi_database_open_query( hdb, sql, &htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
hrec = NULL;
- res = MsiQueryGetColumnInfo( htab, LIBMSI_COL_INFO_NAMES, &hrec );
+ res = libmsi_query_get_column_info( htab, LIBMSI_COL_INFO_NAMES, &hrec );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
buffer[0] = 0;
size = sizeof(buffer);
- res = MsiRecordGetString(hrec, 1, buffer, &size );
+ res = libmsi_record_get_string(hrec, 1, buffer, &size );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
ok(!strcmp(buffer,"b"), "b != %s\n", buffer);
- MsiCloseHandle( hrec );
+ libmsi_unref( hrec );
- res = MsiQueryClose( htab );
+ res = libmsi_query_close( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiCloseHandle( htab );
+ res = libmsi_unref( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiDatabaseCommit(hdb);
+ res = libmsi_database_commit(hdb);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiCloseHandle(hdb);
+ res = libmsi_unref(hdb);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
+ res = libmsi_database_open(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
sql = "SELECT * FROM `a`";
- res = MsiDatabaseOpenQuery( hdb, sql, &htab );
+ res = libmsi_database_open_query( hdb, sql, &htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
hrec = NULL;
- res = MsiQueryGetColumnInfo( htab, LIBMSI_COL_INFO_NAMES, &hrec );
+ res = libmsi_query_get_column_info( htab, LIBMSI_COL_INFO_NAMES, &hrec );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
buffer[0] = 0;
size = sizeof(buffer);
- res = MsiRecordGetString(hrec, 1, buffer, &size );
+ res = libmsi_record_get_string(hrec, 1, buffer, &size );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
ok(!strcmp(buffer,"b"), "b != %s\n", buffer);
- res = MsiCloseHandle( hrec );
+ res = libmsi_unref( hrec );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiQueryClose( htab );
+ res = libmsi_query_close( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiCloseHandle( htab );
+ res = libmsi_unref( htab );
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
}
- res = MsiDatabaseCommit(hdb);
+ res = libmsi_database_commit(hdb);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
- res = MsiCloseHandle(hdb);
+ res = libmsi_unref(hdb);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
DeleteFileA(msifile);
@@ -9183,12 +9183,12 @@ static void test_embedded_nulls(void)
LibmsiRecord *hrec;
char buffer[32];
- r = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
+ r = libmsi_database_open( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( r == ERROR_SUCCESS, "failed to open database %u\n", r );
GetCurrentDirectoryA( MAX_PATH, CURR_DIR );
write_file( "temp_file", control_table, sizeof(control_table) );
- r = MsiDatabaseImport( hdb, CURR_DIR, "temp_file" );
+ r = libmsi_database_import( hdb, CURR_DIR, "temp_file" );
ok( r == ERROR_SUCCESS, "failed to import table %u\n", r );
DeleteFileA( "temp_file" );
@@ -9197,12 +9197,12 @@ static void test_embedded_nulls(void)
buffer[0] = 0;
sz = sizeof(buffer);
- r = MsiRecordGetString( hrec, 1, buffer, &sz );
+ r = libmsi_record_get_string( hrec, 1, buffer, &sz );
ok( r == ERROR_SUCCESS, "failed to get string %u\n", r );
ok( !memcmp( "text\r\ntext\ntext", buffer, sizeof("text\r\ntext\ntext") - 1 ), "wrong buffer contents \"%s\"\n", buffer );
- MsiCloseHandle( hrec );
- MsiCloseHandle( hdb );
+ libmsi_unref( hrec );
+ libmsi_unref( hdb );
DeleteFileA( msifile );
}
@@ -9217,7 +9217,7 @@ static void test_select_column_names(void)
DeleteFile(msifile);
- r = MsiOpenDatabase( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
+ r = libmsi_database_open( msifile, LIBMSI_DB_OPEN_CREATE, &hdb );
ok( r == ERROR_SUCCESS , "failed to open database: %u\n", r );
r = try_query( hdb, "CREATE TABLE `t` (`a` CHAR NOT NULL, `b` CHAR PRIMARY KEY `a`)");
@@ -9257,195 +9257,195 @@ static void test_select_column_names(void)
ok( r == ERROR_SUCCESS , "query failed: %u\n", r );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb, "SELECT '' FROM `t`", &query );
+ r = libmsi_database_open_query( hdb, "SELECT '' FROM `t`", &query );
ok( r == ERROR_SUCCESS, "failed to open database query: %u\n", r );
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "failed to execute query: %u\n", r );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
- r = MsiRecordGetFieldCount( rec );
+ r = libmsi_record_get_field_count( rec );
ok( r == 1, "got %u\n", r );
rec2 = NULL;
- r = MsiQueryGetColumnInfo( query, LIBMSI_COL_INFO_NAMES, &rec2 );
+ r = libmsi_query_get_column_info( query, LIBMSI_COL_INFO_NAMES, &rec2 );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
- r = MsiRecordGetFieldCount( rec2 );
+ r = libmsi_record_get_field_count( rec2 );
ok( r == 1, "got %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec2, 1, buffer, &size );
+ r = libmsi_record_get_string( rec2, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
- MsiCloseHandle( rec2 );
+ libmsi_unref( rec2 );
rec2 = NULL;
- r = MsiQueryGetColumnInfo( query, LIBMSI_COL_INFO_TYPES, &rec2 );
+ r = libmsi_query_get_column_info( query, LIBMSI_COL_INFO_TYPES, &rec2 );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
- r = MsiRecordGetFieldCount( rec2 );
+ r = libmsi_record_get_field_count( rec2 );
ok( r == 1, "got %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec2, 1, buffer, &size );
+ r = libmsi_record_get_string( rec2, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "f0" ), "got \"%s\"\n", buffer );
- MsiCloseHandle( rec2 );
+ libmsi_unref( rec2 );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 1, buffer, &size );
+ r = libmsi_record_get_string( rec, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 1, buffer, &size );
+ r = libmsi_record_get_string( rec, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_NO_MORE_ITEMS, "unexpected result: %u\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_query_close( query );
+ libmsi_unref( query );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb, "SELECT `a`, '' FROM `t`", &query );
+ r = libmsi_database_open_query( hdb, "SELECT `a`, '' FROM `t`", &query );
ok( r == ERROR_SUCCESS, "failed to open database query: %u\n", r );
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "failed to execute query: %u\n", r );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
- r = MsiRecordGetFieldCount( rec );
+ r = libmsi_record_get_field_count( rec );
ok( r == 2, "got %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 1, buffer, &size );
+ r = libmsi_record_get_string( rec, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "1" ), "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 2, buffer, &size );
+ r = libmsi_record_get_string( rec, 2, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_NO_MORE_ITEMS, "unexpected result: %u\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_query_close( query );
+ libmsi_unref( query );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb, "SELECT '', `a` FROM `t`", &query );
+ r = libmsi_database_open_query( hdb, "SELECT '', `a` FROM `t`", &query );
ok( r == ERROR_SUCCESS, "failed to open database query: %u\n", r );
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "failed to execute query: %u\n", r );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
- r = MsiRecordGetFieldCount( rec );
+ r = libmsi_record_get_field_count( rec );
ok( r == 2, "got %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 1, buffer, &size );
+ r = libmsi_record_get_string( rec, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 2, buffer, &size );
+ r = libmsi_record_get_string( rec, 2, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "1" ), "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 1, buffer, &size );
+ r = libmsi_record_get_string( rec, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 2, buffer, &size );
+ r = libmsi_record_get_string( rec, 2, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "3" ), "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_NO_MORE_ITEMS, "unexpected result: %u\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_query_close( query );
+ libmsi_unref( query );
query = NULL;
- r = MsiDatabaseOpenQuery( hdb, "SELECT `a`, '', `b` FROM `t`", &query );
+ r = libmsi_database_open_query( hdb, "SELECT `a`, '', `b` FROM `t`", &query );
ok( r == ERROR_SUCCESS, "failed to open database query: %u\n", r );
- r = MsiQueryExecute( query, 0 );
+ r = libmsi_query_execute( query, 0 );
ok( r == ERROR_SUCCESS, "failed to execute query: %u\n", r );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
- r = MsiRecordGetFieldCount( rec );
+ r = libmsi_record_get_field_count( rec );
ok( r == 3, "got %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 1, buffer, &size );
+ r = libmsi_record_get_string( rec, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "1" ), "got \"%s\"\n", buffer );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 2, buffer, &size );
+ r = libmsi_record_get_string( rec, 2, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 3, buffer, &size );
+ r = libmsi_record_get_string( rec, 3, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "2" ), "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 1, buffer, &size );
+ r = libmsi_record_get_string( rec, 1, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "3" ), "got \"%s\"\n", buffer );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 2, buffer, &size );
+ r = libmsi_record_get_string( rec, 2, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !buffer[0], "got \"%s\"\n", buffer );
size = sizeof(buffer);
memset( buffer, 0x55, sizeof(buffer) );
- r = MsiRecordGetString( rec, 3, buffer, &size );
+ r = libmsi_record_get_string( rec, 3, buffer, &size );
ok( r == ERROR_SUCCESS, "unexpected result: %u\n", r );
ok( !strcmp( buffer, "4" ), "got \"%s\"\n", buffer );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- r = MsiQueryFetch( query, &rec );
+ r = libmsi_query_fetch( query, &rec );
ok( r == ERROR_NO_MORE_ITEMS, "unexpected result: %u\n", r );
- MsiCloseHandle( rec );
+ libmsi_unref( rec );
- MsiQueryClose( query );
- MsiCloseHandle( query );
+ libmsi_query_close( query );
+ libmsi_unref( query );
r = try_query( hdb, "SELECT '' FROM `t` WHERE `t`.`b` = 'x'" );
ok( r == ERROR_SUCCESS , "query failed: %u\n", r );
@@ -9462,7 +9462,7 @@ static void test_select_column_names(void)
r = try_query( hdb, "SELECT `t`.`b`, `` FROM `t` WHERE `t`.`b` = 'x'" );
todo_wine ok( r == ERROR_BAD_QUERY_SYNTAX, "query failed: %u\n", r );
- r = MsiCloseHandle( hdb );
+ r = libmsi_unref( hdb );
ok(r == ERROR_SUCCESS , "failed to close database: %u\n", r);
}
diff --git a/tests/testrecord.c b/tests/testrecord.c
index fcd9f35..42ae3eb 100644
--- a/tests/testrecord.c
+++ b/tests/testrecord.c
@@ -56,239 +56,239 @@ static void test_msirecord(void)
char filename[MAX_PATH];
/* check behaviour with an invalid record */
- r = MsiRecordGetFieldCount(0);
+ r = libmsi_record_get_field_count(0);
ok(r==-1, "field count for invalid record not -1\n");
SetLastError(0);
- r = MsiRecordIsNull(0, 0);
+ r = libmsi_record_is_null(0, 0);
ok(r==0, "invalid handle not considered to be non-null...\n");
- ok(GetLastError()==0, "MsiRecordIsNull set LastError\n");
- r = MsiRecordGetInteger(0,0);
+ ok(GetLastError()==0, "libmsi_record_is_null set LastError\n");
+ r = libmsi_record_get_integer(0,0);
ok(r == MSI_NULL_INTEGER, "got integer from invalid record\n");
- r = MsiRecordSetInteger(0,0,0);
- ok(r == ERROR_INVALID_HANDLE, "MsiRecordSetInteger returned wrong error\n");
- r = MsiRecordSetInteger(0,-1,0);
- ok(r == ERROR_INVALID_HANDLE, "MsiRecordSetInteger returned wrong error\n");
+ r = libmsi_record_set_int(0,0,0);
+ ok(r == ERROR_INVALID_HANDLE, "libmsi_record_set_int returned wrong error\n");
+ r = libmsi_record_set_int(0,-1,0);
+ ok(r == ERROR_INVALID_HANDLE, "libmsi_record_set_int returned wrong error\n");
SetLastError(0);
- h = MsiCreateRecord(-1);
+ h = libmsi_record_create(-1);
ok(h==0, "created record with -1 elements\n");
- h = MsiCreateRecord(0x10000);
+ h = libmsi_record_create(0x10000);
ok(h==0, "created record with 0x10000 elements\n");
/* doesn't set LastError */
- ok(GetLastError()==0, "MsiCreateRecord set last error\n");
- r = MsiRecordClearData(0);
- ok(r == ERROR_INVALID_HANDLE, "MsiRecordClearData returned wrong error\n");
- r = MsiRecordDataSize(0,0);
- ok(r == 0, "MsiRecordDataSize returned wrong error\n");
+ ok(GetLastError()==0, "libmsi_record_create set last error\n");
+ r = libmsi_record_clear_data(0);
+ ok(r == ERROR_INVALID_HANDLE, "libmsi_record_clear_data returned wrong error\n");
+ r = libmsi_record_get_field_size(0,0);
+ ok(r == 0, "libmsi_record_get_field_size returned wrong error\n");
/* check behaviour of a record with 0 elements */
- h = MsiCreateRecord(0);
+ h = libmsi_record_create(0);
ok(h!=0, "couldn't create record with zero elements\n");
- r = MsiRecordGetFieldCount(h);
+ r = libmsi_record_get_field_count(h);
ok(r==0, "field count should be zero\n");
- r = MsiRecordIsNull(h,0);
+ r = libmsi_record_is_null(h,0);
ok(r, "new record wasn't null\n");
- r = MsiRecordIsNull(h,1);
+ r = libmsi_record_is_null(h,1);
ok(r, "out of range record wasn't null\n");
- r = MsiRecordIsNull(h,-1);
+ r = libmsi_record_is_null(h,-1);
ok(r, "out of range record wasn't null\n");
- r = MsiRecordDataSize(h,0);
+ r = libmsi_record_get_field_size(h,0);
ok(r==0, "size of null record is 0\n");
sz = sizeof buf;
strcpy(buf,"x");
- r = MsiRecordGetString(h, 0, buf, &sz);
+ r = libmsi_record_get_string(h, 0, buf, &sz);
ok(r==ERROR_SUCCESS, "failed to get null string\n");
ok(sz==0, "null string too long\n");
ok(buf[0]==0, "null string not set\n");
/* same record, but add an integer to it */
- r = MsiRecordSetInteger(h, 0, 0);
+ r = libmsi_record_set_int(h, 0, 0);
ok(r == ERROR_SUCCESS, "Failed to set integer at 0 to 0\n");
- r = MsiRecordIsNull(h,0);
+ r = libmsi_record_is_null(h,0);
ok(r==0, "new record is null after setting an integer\n");
- r = MsiRecordDataSize(h,0);
+ r = libmsi_record_get_field_size(h,0);
ok(r==sizeof(unsigned), "size of integer record is 4\n");
- r = MsiRecordSetInteger(h, 0, 1);
+ r = libmsi_record_set_int(h, 0, 1);
ok(r == ERROR_SUCCESS, "Failed to set integer at 0 to 1\n");
- r = MsiRecordSetInteger(h, 1, 1);
+ r = libmsi_record_set_int(h, 1, 1);
ok(r == ERROR_INVALID_PARAMETER, "set integer at 1\n");
- r = MsiRecordSetInteger(h, -1, 0);
+ r = libmsi_record_set_int(h, -1, 0);
ok(r == ERROR_INVALID_PARAMETER, "set integer at -1\n");
- r = MsiRecordIsNull(h,0);
+ r = libmsi_record_is_null(h,0);
ok(r==0, "new record is null after setting an integer\n");
- r = MsiRecordGetInteger(h, 0);
+ r = libmsi_record_get_integer(h, 0);
ok(r == 1, "failed to get integer\n");
/* same record, but add a null or empty string to it */
- r = MsiRecordSetString(h, 0, NULL);
+ r = libmsi_record_set_string(h, 0, NULL);
ok(r == ERROR_SUCCESS, "Failed to set null string at 0\n");
- r = MsiRecordIsNull(h, 0);
+ r = libmsi_record_is_null(h, 0);
ok(r == true, "null string not null field\n");
- r = MsiRecordDataSize(h, 0);
+ r = libmsi_record_get_field_size(h, 0);
ok(r == 0, "size of string record is strlen\n");
buf[0] = 0;
sz = sizeof buf;
- r = MsiRecordGetString(h, 0, buf, &sz);
+ r = libmsi_record_get_string(h, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Failed to get string at 0\n");
- ok(buf[0] == 0, "MsiRecordGetString returned the wrong string\n");
- ok(sz == 0, "MsiRecordGetString returned the wrong length\n");
- r = MsiRecordSetString(h, 0, "");
+ ok(buf[0] == 0, "libmsi_record_get_string returned the wrong string\n");
+ ok(sz == 0, "libmsi_record_get_string returned the wrong length\n");
+ r = libmsi_record_set_string(h, 0, "");
ok(r == ERROR_SUCCESS, "Failed to set empty string at 0\n");
- r = MsiRecordIsNull(h, 0);
+ r = libmsi_record_is_null(h, 0);
ok(r == true, "null string not null field\n");
- r = MsiRecordDataSize(h, 0);
+ r = libmsi_record_get_field_size(h, 0);
ok(r == 0, "size of string record is strlen\n");
buf[0] = 0;
sz = sizeof buf;
- r = MsiRecordGetString(h, 0, buf, &sz);
+ r = libmsi_record_get_string(h, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Failed to get string at 0\n");
- ok(buf[0] == 0, "MsiRecordGetString returned the wrong string\n");
- ok(sz == 0, "MsiRecordGetString returned the wrong length\n");
+ ok(buf[0] == 0, "libmsi_record_get_string returned the wrong string\n");
+ ok(sz == 0, "libmsi_record_get_string returned the wrong length\n");
/* same record, but add a string to it */
- r = MsiRecordSetString(h,0,str);
+ r = libmsi_record_set_string(h,0,str);
ok(r == ERROR_SUCCESS, "Failed to set string at 0\n");
- r = MsiRecordGetInteger(h, 0);
+ r = libmsi_record_get_integer(h, 0);
ok(r == MSI_NULL_INTEGER, "should get invalid integer\n");
- r = MsiRecordDataSize(h,0);
+ r = libmsi_record_get_field_size(h,0);
ok(r==sizeof str-1, "size of string record is strlen\n");
buf[0]=0;
sz = sizeof buf;
- r = MsiRecordGetString(h,0,buf,&sz);
+ r = libmsi_record_get_string(h,0,buf,&sz);
ok(r == ERROR_SUCCESS, "Failed to get string at 0\n");
- ok(0==strcmp(buf,str), "MsiRecordGetString returned the wrong string\n");
- ok(sz == sizeof str-1, "MsiRecordGetString returned the wrong length\n");
+ ok(0==strcmp(buf,str), "libmsi_record_get_string returned the wrong string\n");
+ ok(sz == sizeof str-1, "libmsi_record_get_string returned the wrong length\n");
buf[0]=0;
sz = sizeof str - 2;
- r = MsiRecordGetString(h,0,buf,&sz);
+ r = libmsi_record_get_string(h,0,buf,&sz);
ok(r == ERROR_MORE_DATA, "small buffer should yield ERROR_MORE_DATA\n");
- ok(sz == sizeof str-1, "MsiRecordGetString returned the wrong length\n");
- ok(0==strncmp(buf,str,sizeof str-3), "MsiRecordGetString returned the wrong string\n");
+ ok(sz == sizeof str-1, "libmsi_record_get_string returned the wrong length\n");
+ ok(0==strncmp(buf,str,sizeof str-3), "libmsi_record_get_string returned the wrong string\n");
ok(buf[sizeof str - 3]==0, "string wasn't nul terminated\n");
buf[0]=0;
sz = sizeof str;
- r = MsiRecordGetString(h,0,buf,&sz);
+ r = libmsi_record_get_string(h,0,buf,&sz);
ok(r == ERROR_SUCCESS, "wrong error\n");
- ok(sz == sizeof str-1, "MsiRecordGetString returned the wrong length\n");
- ok(0==strcmp(buf,str), "MsiRecordGetString returned the wrong string\n");
+ ok(sz == sizeof str-1, "libmsi_record_get_string returned the wrong length\n");
+ ok(0==strcmp(buf,str), "libmsi_record_get_string returned the wrong string\n");
memset(buf, 0, sizeof buf);
sz = 5;
- r = MsiRecordGetString(h,0,buf,&sz);
+ r = libmsi_record_get_string(h,0,buf,&sz);
ok(r == ERROR_MORE_DATA, "wrong error\n");
- ok(sz == 5, "MsiRecordGetString returned the wrong length\n");
- ok(0==memcmp(buf,str,4), "MsiRecordGetString returned the wrong string\n");
+ ok(sz == 5, "libmsi_record_get_string returned the wrong length\n");
+ ok(0==memcmp(buf,str,4), "libmsi_record_get_string returned the wrong string\n");
sz = 0;
buf[0] = 'x';
- r = MsiRecordGetString(h,0,buf,&sz);
+ r = libmsi_record_get_string(h,0,buf,&sz);
ok(r == ERROR_MORE_DATA, "wrong error\n");
- ok(sz == 5, "MsiRecordGetString returned the wrong length\n");
- ok('x'==buf[0], "MsiRecordGetString returned the wrong string\n");
+ ok(sz == 5, "libmsi_record_get_string returned the wrong length\n");
+ ok('x'==buf[0], "libmsi_record_get_string returned the wrong string\n");
/* same record, check we can wipe all the data */
- r = MsiRecordClearData(h);
+ r = libmsi_record_clear_data(h);
ok(r == ERROR_SUCCESS, "Failed to clear record\n");
- r = MsiRecordClearData(h);
+ r = libmsi_record_clear_data(h);
ok(r == ERROR_SUCCESS, "Failed to clear record again\n");
- r = MsiRecordIsNull(h,0);
+ r = libmsi_record_is_null(h,0);
ok(r, "cleared record wasn't null\n");
/* same record, try converting strings to integers */
- i = MsiRecordSetString(h,0,"42");
+ i = libmsi_record_set_string(h,0,"42");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == 42, "should get invalid integer\n");
- i = MsiRecordSetString(h,0,"-42");
+ i = libmsi_record_set_string(h,0,"-42");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == -42, "should get invalid integer\n");
- i = MsiRecordSetString(h,0," 42");
+ i = libmsi_record_set_string(h,0," 42");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == MSI_NULL_INTEGER, "should get invalid integer\n");
- i = MsiRecordSetString(h,0,"42 ");
+ i = libmsi_record_set_string(h,0,"42 ");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == MSI_NULL_INTEGER, "should get invalid integer\n");
- i = MsiRecordSetString(h,0,"42.0");
+ i = libmsi_record_set_string(h,0,"42.0");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == MSI_NULL_INTEGER, "should get invalid integer\n");
- i = MsiRecordSetString(h,0,"0x42");
+ i = libmsi_record_set_string(h,0,"0x42");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == MSI_NULL_INTEGER, "should get invalid integer\n");
- i = MsiRecordSetString(h,0,"1000000000000000");
+ i = libmsi_record_set_string(h,0,"1000000000000000");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == -1530494976, "should get truncated integer\n");
- i = MsiRecordSetString(h,0,"2147483647");
+ i = libmsi_record_set_string(h,0,"2147483647");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == 2147483647, "should get maxint\n");
- i = MsiRecordSetString(h,0,"-2147483647");
+ i = libmsi_record_set_string(h,0,"-2147483647");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == -2147483647, "should get -maxint-1\n");
- i = MsiRecordSetString(h,0,"4294967297");
+ i = libmsi_record_set_string(h,0,"4294967297");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == 1, "should get one\n");
- i = MsiRecordSetString(h,0,"foo");
+ i = libmsi_record_set_string(h,0,"foo");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == MSI_NULL_INTEGER, "should get zero\n");
- i = MsiRecordSetString(h,0,"");
+ i = libmsi_record_set_string(h,0,"");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == MSI_NULL_INTEGER, "should get zero\n");
- i = MsiRecordSetString(h,0,"+1");
+ i = libmsi_record_set_string(h,0,"+1");
ok(i == ERROR_SUCCESS, "Failed to set string at 0\n");
- i = MsiRecordGetInteger(h, 0);
+ i = libmsi_record_get_integer(h, 0);
ok(i == MSI_NULL_INTEGER, "should get zero\n");
/* same record, try converting integers to strings */
- r = MsiRecordSetInteger(h, 0, 32);
+ r = libmsi_record_set_int(h, 0, 32);
ok(r == ERROR_SUCCESS, "Failed to set integer at 0 to 32\n");
sz = 1;
- r = MsiRecordGetString(h, 0, NULL, &sz);
+ r = libmsi_record_get_string(h, 0, NULL, &sz);
ok(r == ERROR_SUCCESS, "failed to get string from integer\n");
ok(sz == 2, "length wrong\n");
buf[0]=0;
sz = sizeof buf;
- r = MsiRecordGetString(h, 0, buf, &sz);
+ r = libmsi_record_get_string(h, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to get string from integer\n");
ok(0==strcmp(buf,"32"), "failed to get string from integer\n");
- r = MsiRecordSetInteger(h, 0, -32);
+ r = libmsi_record_set_int(h, 0, -32);
ok(r == ERROR_SUCCESS, "Failed to set integer at 0 to 32\n");
buf[0]=0;
sz = 1;
- r = MsiRecordGetString(h, 0, NULL, &sz);
+ r = libmsi_record_get_string(h, 0, NULL, &sz);
ok(r == ERROR_SUCCESS, "failed to get string from integer\n");
ok(sz == 3, "length wrong\n");
sz = sizeof buf;
- r = MsiRecordGetString(h, 0, buf, &sz);
+ r = libmsi_record_get_string(h, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to get string from integer\n");
ok(0==strcmp(buf,"-32"), "failed to get string from integer\n");
buf[0]=0;
/* same record, now try streams */
- r = MsiRecordSetStream(h, 0, NULL);
+ r = libmsi_record_load_stream(h, 0, NULL);
ok(r == ERROR_INVALID_PARAMETER, "set NULL stream\n");
sz = sizeof buf;
- r = MsiRecordReadStream(h, 0, buf, &sz);
+ r = libmsi_record_save_stream(h, 0, buf, &sz);
ok(r == ERROR_INVALID_DATATYPE, "read non-stream type\n");
ok(sz == sizeof buf, "set sz\n");
- r = MsiRecordDataSize( h, -1);
- ok(r == 0,"MsiRecordDataSize returned wrong size\n");
- r = MsiRecordDataSize( h, 0);
- ok(r == 4,"MsiRecordDataSize returned wrong size\n");
+ r = libmsi_record_get_field_size( h, -1);
+ ok(r == 0,"libmsi_record_get_field_size returned wrong size\n");
+ r = libmsi_record_get_field_size( h, 0);
+ ok(r == 4,"libmsi_record_get_field_size returned wrong size\n");
/* same record, now close it */
- r = MsiCloseHandle(h);
+ r = libmsi_unref(h);
ok(r == ERROR_SUCCESS, "Failed to close handle\n");
/* now try streams in a new record - need to create a file to play with */
@@ -297,58 +297,58 @@ static void test_msirecord(void)
return;
/* streams can't be inserted in field 0 for some reason */
- h = MsiCreateRecord(2);
+ h = libmsi_record_create(2);
ok(h, "couldn't create a two field record\n");
- r = MsiRecordSetStream(h, 0, filename);
+ r = libmsi_record_load_stream(h, 0, filename);
ok(r == ERROR_INVALID_PARAMETER, "added stream to field 0\n");
- r = MsiRecordSetStream(h, 1, filename);
+ r = libmsi_record_load_stream(h, 1, filename);
ok(r == ERROR_SUCCESS, "failed to add stream to record\n");
- r = MsiRecordReadStream(h, 1, buf, NULL);
+ r = libmsi_record_save_stream(h, 1, buf, NULL);
ok(r == ERROR_INVALID_PARAMETER, "should return error\n");
DeleteFile(filename); /* Windows 98 doesn't like this at all, so don't check return. */
- r = MsiRecordReadStream(h, 1, NULL, NULL);
+ r = libmsi_record_save_stream(h, 1, NULL, NULL);
ok(r == ERROR_INVALID_PARAMETER, "should return error\n");
sz = sizeof buf;
- r = MsiRecordReadStream(h, 1, NULL, &sz);
+ r = libmsi_record_save_stream(h, 1, NULL, &sz);
ok(r == ERROR_SUCCESS, "failed to read stream\n");
ok(sz==26,"couldn't get size of stream\n");
sz = 0;
- r = MsiRecordReadStream(h, 1, buf, &sz);
+ r = libmsi_record_save_stream(h, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to read stream\n");
ok(sz==0,"short read\n");
sz = sizeof buf;
- r = MsiRecordReadStream(h, 1, buf, &sz);
+ r = libmsi_record_save_stream(h, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to read stream\n");
ok(sz==sizeof buf,"short read\n");
ok(!strncmp(buf,"abcdefghij",10), "read the wrong thing\n");
sz = sizeof buf;
- r = MsiRecordReadStream(h, 1, buf, &sz);
+ r = libmsi_record_save_stream(h, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to read stream\n");
ok(sz==sizeof buf,"short read\n");
ok(!strncmp(buf,"klmnopqrst",10), "read the wrong thing\n");
memset(buf,0,sizeof buf);
sz = sizeof buf;
- r = MsiRecordReadStream(h, 1, buf, &sz);
+ r = libmsi_record_save_stream(h, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to read stream\n");
ok(sz==6,"short read\n");
ok(!strcmp(buf,"uvwxyz"), "read the wrong thing\n");
memset(buf,0,sizeof buf);
sz = sizeof buf;
- r = MsiRecordReadStream(h, 1, buf, &sz);
+ r = libmsi_record_save_stream(h, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "failed to read stream\n");
ok(sz==0,"size non-zero at end of stream\n");
ok(buf[0]==0, "read something at end of the stream\n");
- r = MsiRecordSetStream(h, 1, NULL);
+ r = libmsi_record_load_stream(h, 1, NULL);
ok(r == ERROR_SUCCESS, "failed to reset stream\n");
sz = 0;
- r = MsiRecordReadStream(h, 1, NULL, &sz);
+ r = libmsi_record_save_stream(h, 1, NULL, &sz);
ok(r == ERROR_SUCCESS, "bytes left wrong after reset\n");
ok(sz==26,"couldn't get size of stream\n");
- r = MsiRecordDataSize(h,1);
- ok(r == 26,"MsiRecordDataSize returned wrong size\n");
+ r = libmsi_record_get_field_size(h,1);
+ ok(r == 26,"libmsi_record_get_field_size returned wrong size\n");
/* now close the stream record */
- r = MsiCloseHandle(h);
+ r = libmsi_unref(h);
ok(r == ERROR_SUCCESS, "Failed to close handle\n");
DeleteFile(filename); /* Delete it for sure, when everything else is closed. */
}
@@ -360,59 +360,59 @@ static void test_MsiRecordGetString(void)
unsigned sz;
unsigned r;
- rec = MsiCreateRecord(2);
+ rec = libmsi_record_create(2);
ok(rec != 0, "Expected a valid handle\n");
sz = MAX_PATH;
- r = MsiRecordGetString(rec, 1, NULL, &sz);
+ r = libmsi_record_get_string(rec, 1, NULL, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n",r);
ok(sz == 0, "Expected 0, got %d\n",sz);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expected 0, got %d\n", sz);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 10, buf, &sz);
+ r = libmsi_record_get_string(rec, 10, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expected 0, got %d\n", sz);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- rec = MsiCreateRecord(1);
+ rec = libmsi_record_create(1);
ok(rec != 0, "Expected a valid handle\n");
- r = MsiRecordSetInteger(rec, 1, 5);
+ r = libmsi_record_set_int(rec, 1, 5);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
- r = MsiRecordGetString(rec, 1, NULL, &sz);
+ r = libmsi_record_get_string(rec, 1, NULL, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n",r);
ok(sz == 1, "Expected 1, got %d\n",sz);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "5"), "Expected \"5\", got \"%s\"\n", buf);
ok(sz == 1, "Expectd 1, got %d\n", sz);
- r = MsiRecordSetInteger(rec, 1, -5);
+ r = libmsi_record_set_int(rec, 1, -5);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "-5"), "Expected \"-5\", got \"%s\"\n", buf);
ok(sz == 2, "Expectd 2, got %d\n", sz);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
}
static void test_MsiRecordGetInteger(void)
@@ -421,28 +421,28 @@ static void test_MsiRecordGetInteger(void)
int val;
unsigned r;
- rec = MsiCreateRecord(1);
+ rec = libmsi_record_create(1);
ok(rec != 0, "Expected a valid handle\n");
- r = MsiRecordSetString(rec, 1, "5");
+ r = libmsi_record_set_string(rec, 1, "5");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(rec, 1);
+ val = libmsi_record_get_integer(rec, 1);
ok(val == 5, "Expected 5, got %d\n", val);
- r = MsiRecordSetString(rec, 1, "-5");
+ r = libmsi_record_set_string(rec, 1, "-5");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(rec, 1);
+ val = libmsi_record_get_integer(rec, 1);
ok(val == -5, "Expected -5, got %d\n", val);
- r = MsiRecordSetString(rec, 1, "5apple");
+ r = libmsi_record_set_string(rec, 1, "5apple");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- val = MsiRecordGetInteger(rec, 1);
+ val = libmsi_record_get_integer(rec, 1);
ok(val == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", val);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
}
static void test_fieldzero(void)
@@ -455,135 +455,135 @@ static void test_fieldzero(void)
unsigned sz;
unsigned r;
- rec = MsiCreateRecord(1);
+ rec = libmsi_record_create(1);
ok(rec != 0, "Expected a valid handle\n");
- r = MsiRecordGetInteger(rec, 0);
+ r = libmsi_record_get_integer(rec, 0);
ok(r == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 0, buf, &sz);
+ r = libmsi_record_get_string(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expectd 0, got %d\n", sz);
- r = MsiRecordIsNull(rec, 0);
+ r = libmsi_record_is_null(rec, 0);
ok(r == true, "Expected true, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", r);
- r = MsiRecordSetInteger(rec, 1, 42);
+ r = libmsi_record_set_int(rec, 1, 42);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 0);
+ r = libmsi_record_get_integer(rec, 0);
ok(r == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 0, buf, &sz);
+ r = libmsi_record_get_string(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expectd 0, got %d\n", sz);
- r = MsiRecordIsNull(rec, 0);
+ r = libmsi_record_is_null(rec, 0);
ok(r == true, "Expected true, got %d\n", r);
- r = MsiRecordGetInteger(rec, 1);
+ r = libmsi_record_get_integer(rec, 1);
ok(r == 42, "Expected 42, got %d\n", r);
- r = MsiRecordSetString(rec, 1, "bologna");
+ r = libmsi_record_set_string(rec, 1, "bologna");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 0);
+ r = libmsi_record_get_integer(rec, 0);
ok(r == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 0, buf, &sz);
+ r = libmsi_record_get_string(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expectd 0, got %d\n", sz);
- r = MsiRecordIsNull(rec, 0);
+ r = libmsi_record_is_null(rec, 0);
ok(r == true, "Expected true, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 1, buf, &sz);
+ r = libmsi_record_get_string(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "bologna"), "Expected \"bologna\", got \"%s\"\n", buf);
ok(sz == 7, "Expectd 7, got %d\n", sz);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
query = "CREATE TABLE `drone` ( "
"`id` INT, `name` CHAR(32), `number` CHAR(32) "
"PRIMARY KEY `id`)";
- r = MsiDatabaseOpenQuery(hdb, query, &hview);
+ r = libmsi_database_open_query(hdb, query, &hview);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hview, 0);
+ r = libmsi_query_execute(hview, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryClose(hview);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hview);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_query_close(hview);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hview);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
query = "INSERT INTO `drone` ( `id`, `name`, `number` )"
"VALUES('1', 'Abe', '8675309')";
- r = MsiDatabaseOpenQuery(hdb, query, &hview);
- ok(r == ERROR_SUCCESS, "MsiDatabaseOpenQuery failed\n");
- r = MsiQueryExecute(hview, 0);
- ok(r == ERROR_SUCCESS, "MsiQueryExecute failed\n");
- r = MsiQueryClose(hview);
- ok(r == ERROR_SUCCESS, "MsiQueryClose failed\n");
- r = MsiCloseHandle(hview);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_database_open_query(hdb, query, &hview);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open_query failed\n");
+ r = libmsi_query_execute(hview, 0);
+ ok(r == ERROR_SUCCESS, "libmsi_query_execute failed\n");
+ r = libmsi_query_close(hview);
+ ok(r == ERROR_SUCCESS, "libmsi_query_close failed\n");
+ r = libmsi_unref(hview);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
rec = NULL;
- r = MsiDatabaseGetPrimaryKeys(hdb, "drone", &rec);
+ r = libmsi_database_get_primary_keys(hdb, "drone", &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 0);
+ r = libmsi_record_get_integer(rec, 0);
ok(r == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", r);
sz = MAX_PATH;
strcpy(buf, "apple");
- r = MsiRecordGetString(rec, 0, buf, &sz);
+ r = libmsi_record_get_string(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!strcmp(buf, "drone"), "Expected \"drone\", got \"%s\"\n", buf);
ok(sz == 5, "Expectd 5, got %d\n", sz);
- r = MsiRecordIsNull(rec, 0);
+ r = libmsi_record_is_null(rec, 0);
ok(r == false, "Expected false, got %d\n", r);
- MsiCloseHandle(rec);
+ libmsi_unref(rec);
- r = MsiDatabaseGetPrimaryKeys(hdb, "nosuchtable", &rec);
+ r = libmsi_database_get_primary_keys(hdb, "nosuchtable", &rec);
ok(r == ERROR_INVALID_TABLE, "Expected ERROR_INVALID_TABLE, got %d\n", r);
query = "SELECT * FROM `drone` WHERE `id` = 1";
- r = MsiDatabaseOpenQuery(hdb, query, &hview);
+ r = libmsi_database_open_query(hdb, query, &hview);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryExecute(hview, 0);
+ r = libmsi_query_execute(hview, 0);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiQueryFetch(hview, &rec);
+ r = libmsi_query_fetch(hview, &rec);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
- r = MsiRecordGetInteger(rec, 0);
+ r = libmsi_record_get_integer(rec, 0);
ok(r != MSI_NULL_INTEGER && r != 0, "Expected non-NULL value, got %d\n", r);
- r = MsiRecordIsNull(rec, 0);
+ r = libmsi_record_is_null(rec, 0);
ok(r == false, "Expected false, got %d\n", r);
- r = MsiCloseHandle(hview);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
- MsiCloseHandle(rec);
- MsiCloseHandle(hdb);
+ r = libmsi_unref(hview);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
+ libmsi_unref(rec);
+ libmsi_unref(hdb);
DeleteFileA(msifile);
}
diff --git a/tests/testsuminfo.c b/tests/testsuminfo.c
index bda096c..02d7b4c 100644
--- a/tests/testsuminfo.c
+++ b/tests/testsuminfo.c
@@ -43,50 +43,50 @@ static void test_suminfo(void)
DeleteFile(msifile);
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_CREATE, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
- r = MsiGetSummaryInformation(hdb, 0, NULL);
- ok(r == ERROR_INVALID_PARAMETER, "MsiGetSummaryInformation wrong error\n");
+ r = libmsi_database_get_summary_info(hdb, 0, NULL);
+ ok(r == ERROR_INVALID_PARAMETER, "libmsi_database_get_summary_info wrong error\n");
- r = MsiGetSummaryInformation(hdb, 0, &hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiGetSummaryInformation failed %u\n", r);
+ r = libmsi_database_get_summary_info(hdb, 0, &hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_database_get_summary_info failed %u\n", r);
- r = MsiCloseHandle(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiGetSummaryInformation(hdb, 0, &hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiGetSummaryInformation failed %u\n", r);
+ r = libmsi_database_get_summary_info(hdb, 0, &hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_database_get_summary_info failed %u\n", r);
- r = MsiSummaryInfoGetPropertyCount(0, NULL);
+ r = libmsi_summary_info_get_property_count(0, NULL);
ok(r == ERROR_INVALID_HANDLE, "getpropcount failed\n");
- r = MsiSummaryInfoGetPropertyCount(hsuminfo, NULL);
+ r = libmsi_summary_info_get_property_count(hsuminfo, NULL);
ok(r == ERROR_SUCCESS, "getpropcount failed\n");
count = -1;
- r = MsiSummaryInfoGetPropertyCount(hsuminfo, &count);
+ r = libmsi_summary_info_get_property_count(hsuminfo, &count);
ok(r == ERROR_SUCCESS, "getpropcount failed\n");
ok(count == 0, "count should be zero\n");
- r = MsiSummaryInfoGetProperty(hsuminfo, 0, NULL, NULL, NULL, 0, NULL);
+ r = libmsi_summary_info_get_property(hsuminfo, 0, NULL, NULL, NULL, 0, NULL);
ok(r == ERROR_SUCCESS, "getpropcount failed\n");
- r = MsiSummaryInfoGetProperty(hsuminfo, -1, NULL, NULL, NULL, 0, NULL);
- ok(r == ERROR_UNKNOWN_PROPERTY, "MsiSummaryInfoGetProperty wrong error\n");
+ r = libmsi_summary_info_get_property(hsuminfo, -1, NULL, NULL, NULL, 0, NULL);
+ ok(r == ERROR_UNKNOWN_PROPERTY, "libmsi_summary_info_get_property wrong error\n");
- r = MsiSummaryInfoGetProperty(hsuminfo, MSI_PID_SECURITY+1, NULL, NULL, NULL, 0, NULL);
- ok(r == ERROR_UNKNOWN_PROPERTY, "MsiSummaryInfoGetProperty wrong error\n");
+ r = libmsi_summary_info_get_property(hsuminfo, MSI_PID_SECURITY+1, NULL, NULL, NULL, 0, NULL);
+ ok(r == ERROR_UNKNOWN_PROPERTY, "libmsi_summary_info_get_property wrong error\n");
type = -1;
- r = MsiSummaryInfoGetProperty(hsuminfo, 0, &type, NULL, NULL, 0, NULL);
+ r = libmsi_summary_info_get_property(hsuminfo, 0, &type, NULL, NULL, 0, NULL);
ok(r == ERROR_SUCCESS, "getpropcount failed\n");
ok(type == 0, "wrong type\n");
type = -1;
val = 1234;
- r = MsiSummaryInfoGetProperty(hsuminfo, 0, &type, &val, NULL, 0, NULL);
+ r = libmsi_summary_info_get_property(hsuminfo, 0, &type, &val, NULL, 0, NULL);
ok(r == ERROR_SUCCESS, "getpropcount failed\n");
ok(type == 0, "wrong type\n");
ok(val == 1234, "wrong val\n");
@@ -94,162 +94,162 @@ static void test_suminfo(void)
buf[0]='x';
buf[1]=0;
sz = 0x10;
- r = MsiSummaryInfoGetProperty(hsuminfo, MSI_PID_REVNUMBER, &type, &val, NULL, buf, &sz);
+ r = libmsi_summary_info_get_property(hsuminfo, MSI_PID_REVNUMBER, &type, &val, NULL, buf, &sz);
ok(r == ERROR_SUCCESS, "getpropcount failed\n");
ok(buf[0]=='x', "cleared buffer\n");
ok(sz == 0x10, "count wasn't zero\n");
ok(type == VT_EMPTY, "should be empty\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "Mike");
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "Mike");
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 1, NULL, "JungAh");
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 1, NULL, "JungAh");
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 1, &ft, "Mike");
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 1, &ft, "Mike");
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, &ft, "JungAh");
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, &ft, "JungAh");
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_set_property wrong error\n");
- r = MsiCloseHandle(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* try again with the update count set */
- r = MsiGetSummaryInformation(hdb, 1, &hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiGetSummaryInformation failed\n");
+ r = libmsi_database_get_summary_info(hdb, 1, &hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_database_get_summary_info failed\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, 0, VT_LPSTR, 1, NULL, NULL);
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, 0, VT_LPSTR, 1, NULL, NULL);
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_CODEPAGE, VT_LPSTR, 1, NULL, NULL);
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_CODEPAGE, VT_LPSTR, 1, NULL, NULL);
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TITLE, VT_I4, 0, NULL, "Mike");
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TITLE, VT_I4, 0, NULL, "Mike");
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_AUTHOR, VT_I4, 0, NULL, "JungAh");
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_AUTHOR, VT_I4, 0, NULL, "JungAh");
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_KEYWORDS, VT_I2, 0, NULL, "Mike");
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_KEYWORDS, VT_I2, 0, NULL, "Mike");
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_COMMENTS, VT_FILETIME, 0, NULL, "JungAh");
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_COMMENTS, VT_FILETIME, 0, NULL, "JungAh");
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TEMPLATE, VT_I2, 0, NULL, "Mike");
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TEMPLATE, VT_I2, 0, NULL, "Mike");
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_LASTAUTHOR, VT_LPSTR, 0, NULL, NULL);
- ok(r == ERROR_INVALID_PARAMETER, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_LASTAUTHOR, VT_LPSTR, 0, NULL, NULL);
+ ok(r == ERROR_INVALID_PARAMETER, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_LASTSAVE_DTM, VT_FILETIME, 0, NULL, NULL);
- ok(r == ERROR_INVALID_PARAMETER, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_LASTSAVE_DTM, VT_FILETIME, 0, NULL, NULL);
+ ok(r == ERROR_INVALID_PARAMETER, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_LASTAUTHOR, VT_LPWSTR, 0, NULL, "h\0i\0\0");
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_LASTAUTHOR, VT_LPWSTR, 0, NULL, "h\0i\0\0");
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_REVNUMBER, VT_I4, 0, NULL, "Jungah");
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_REVNUMBER, VT_I4, 0, NULL, "Jungah");
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_PAGECOUNT, VT_LPSTR, 1, NULL, NULL);
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_PAGECOUNT, VT_LPSTR, 1, NULL, NULL);
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "Mike");
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoSetProperty failed\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "Mike");
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_set_property failed\n");
sz = 2;
strcpy(buf,"x");
- r = MsiSummaryInfoGetProperty(hsuminfo, MSI_PID_TITLE, &type, NULL, NULL, buf, &sz );
- ok(r == ERROR_MORE_DATA, "MsiSummaryInfoSetProperty failed\n");
+ r = libmsi_summary_info_get_property(hsuminfo, MSI_PID_TITLE, &type, NULL, NULL, buf, &sz );
+ ok(r == ERROR_MORE_DATA, "libmsi_summary_info_set_property failed\n");
ok(sz == 4, "count was wrong\n");
ok(type == VT_LPSTR, "type was wrong\n");
ok(!strcmp(buf,"M"), "buffer was wrong\n");
sz = 4;
strcpy(buf,"x");
- r = MsiSummaryInfoGetProperty(hsuminfo, MSI_PID_TITLE, &type, NULL, NULL, buf, &sz );
- ok(r == ERROR_MORE_DATA, "MsiSummaryInfoSetProperty failed\n");
+ r = libmsi_summary_info_get_property(hsuminfo, MSI_PID_TITLE, &type, NULL, NULL, buf, &sz );
+ ok(r == ERROR_MORE_DATA, "libmsi_summary_info_set_property failed\n");
ok(sz == 4, "count was wrong\n");
ok(type == VT_LPSTR, "type was wrong\n");
ok(!strcmp(buf,"Mik"), "buffer was wrong\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "JungAh");
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoSetProperty failed\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "JungAh");
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_set_property failed\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, &ft, "Mike");
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, &ft, "Mike");
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_set_property wrong error\n");
- r = MsiCloseHandle(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* try again with a higher update count */
- r = MsiGetSummaryInformation(hdb, 10, &hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiGetSummaryInformation failed\n");
+ r = libmsi_database_get_summary_info(hdb, 10, &hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_database_get_summary_info failed\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "JungAh");
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoSetProperty failed\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "JungAh");
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_set_property failed\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_CODEPAGE, VT_LPSTR, 1, NULL, NULL);
- ok(r == ERROR_DATATYPE_MISMATCH, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_CODEPAGE, VT_LPSTR, 1, NULL, NULL);
+ ok(r == ERROR_DATATYPE_MISMATCH, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, NULL, NULL);
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, NULL, NULL);
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, &ft, "Mike");
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_CODEPAGE, VT_I2, 1, &ft, "Mike");
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_AUTHOR, VT_LPSTR, 1, &ft, "Mike");
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_AUTHOR, VT_LPSTR, 1, &ft, "Mike");
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoPersist(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoPersist failed\n");
+ r = libmsi_summary_info_persist(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_persist failed\n");
- MsiDatabaseCommit(hdb);
+ libmsi_database_commit(hdb);
- r = MsiCloseHandle(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
/* reread, non-zero update count */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_TRANSACT, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
- r = MsiGetSummaryInformation(hdb, 1, &hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiGetSummaryInformation failed\n");
+ r = libmsi_database_get_summary_info(hdb, 1, &hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_database_get_summary_info failed\n");
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_AUTHOR, VT_LPSTR, 1, &ft, "Mike");
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoSetProperty wrong error\n");
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_AUTHOR, VT_LPSTR, 1, &ft, "Mike");
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_set_property wrong error\n");
- r = MsiSummaryInfoPersist(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoPersist failed %u\n", r);
+ r = libmsi_summary_info_persist(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_persist failed %u\n", r);
- r = MsiCloseHandle(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed %u\n", r);
+ r = libmsi_unref(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed %u\n", r);
/* now with zero update count */
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed %u\n", r);
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed %u\n", r);
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
- r = MsiGetSummaryInformation(hdb, 0, &hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiGetSummaryInformation failed %u\n", r);
+ r = libmsi_database_get_summary_info(hdb, 0, &hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_database_get_summary_info failed %u\n", r);
- r = MsiSummaryInfoSetProperty(hsuminfo, MSI_PID_AUTHOR, VT_LPSTR, 1, &ft, "Mike");
- todo_wine ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoSetProperty wrong error, %u\n", r);
+ r = libmsi_summary_info_set_property(hsuminfo, MSI_PID_AUTHOR, VT_LPSTR, 1, &ft, "Mike");
+ todo_wine ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_set_property wrong error, %u\n", r);
- r = MsiSummaryInfoPersist(hsuminfo);
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoPersist wrong error %u\n", r);
+ r = libmsi_summary_info_persist(hsuminfo);
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_persist wrong error %u\n", r);
- r = MsiCloseHandle(hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n");
+ r = libmsi_unref(hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed\n");
- r = MsiCloseHandle(hdb);
- ok(r == ERROR_SUCCESS, "MsiCloseHandle failed %u\n", r);
+ r = libmsi_unref(hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_unref failed %u\n", r);
r = DeleteFile(msifile);
ok(r, "DeleteFile failed\n");
@@ -383,12 +383,12 @@ static void test_summary_binary(void)
ok( INVALID_FILE_ATTRIBUTES != GetFileAttributes(msifile), "file doesn't exist!\n");
- /* just MsiOpenDatabase should not create a file */
- r = MsiOpenDatabase(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
- ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n");
+ /* just libmsi_database_open should not create a file */
+ r = libmsi_database_open(msifile, LIBMSI_DB_OPEN_READONLY, &hdb);
+ ok(r == ERROR_SUCCESS, "libmsi_database_open failed\n");
- r = MsiGetSummaryInformation(hdb, 0, &hsuminfo);
- ok(r == ERROR_SUCCESS, "MsiGetSummaryInformation failed\n");
+ r = libmsi_database_get_summary_info(hdb, 0, &hsuminfo);
+ ok(r == ERROR_SUCCESS, "libmsi_database_get_summary_info failed\n");
/*
* Check what reading MSI_PID_LASTPRINTED does...
@@ -399,8 +399,8 @@ static void test_summary_binary(void)
sz = sizeof sval;
sval[0] = 0;
type = 0;
- r = MsiSummaryInfoGetProperty(hsuminfo, MSI_PID_LASTPRINTED, &type, NULL, NULL, sval, &sz);
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoGetProperty failed\n");
+ r = libmsi_summary_info_get_property(hsuminfo, MSI_PID_LASTPRINTED, &type, NULL, NULL, sval, &sz);
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_get_property failed\n");
ok(!strcmp(sval, "") || !strcmp(sval, "7"),
"Expected empty string or \"7\", got \"%s\"\n", sval);
todo_wine {
@@ -409,24 +409,24 @@ static void test_summary_binary(void)
}
ival = -1;
- r = MsiSummaryInfoGetProperty(hsuminfo, MSI_PID_WORDCOUNT, &type, &ival, NULL, NULL, NULL);
- ok(r == ERROR_SUCCESS, "MsiSummaryInfoGetProperty failed\n");
+ r = libmsi_summary_info_get_property(hsuminfo, MSI_PID_WORDCOUNT, &type, &ival, NULL, NULL, NULL);
+ ok(r == ERROR_SUCCESS, "libmsi_summary_info_get_property failed\n");
todo_wine ok( ival == 0, "value incorrect\n");
/* looks like msi adds some of its own values in here */
count = 0;
- r = MsiSummaryInfoGetPropertyCount( hsuminfo, &count );
+ r = libmsi_summary_info_get_property_count( hsuminfo, &count );
ok(r == ERROR_SUCCESS, "getpropcount failed\n");
todo_wine ok(count == 10, "prop count incorrect\n");
- r = MsiSummaryInfoSetProperty( hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "Mike" );
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoSetProperty failed %u\n", r);
+ r = libmsi_summary_info_set_property( hsuminfo, MSI_PID_TITLE, VT_LPSTR, 0, NULL, "Mike" );
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_set_property failed %u\n", r);
- r = MsiSummaryInfoPersist( hsuminfo );
- ok(r == ERROR_FUNCTION_FAILED, "MsiSummaryInfoPersist failed %u\n", r);
+ r = libmsi_summary_info_persist( hsuminfo );
+ ok(r == ERROR_FUNCTION_FAILED, "libmsi_summary_info_persist failed %u\n", r);
- MsiCloseHandle( hsuminfo );
- MsiCloseHandle( hdb );
+ libmsi_unref( hsuminfo );
+ libmsi_unref( hdb );
DeleteFile( msifile );
}