Module: wine Branch: master Commit: 2f2143b4ecacd8bed120928da1386ae1d299c41b URL: http://source.winehq.org/git/wine.git/?a=commit;h=2f2143b4ecacd8bed120928da1...
Author: Mike McCormack mike@codeweavers.com Date: Fri Nov 17 15:15:03 2006 +0900
msi: Add a test showing which tables are special.
---
dlls/msi/tests/db.c | 34 ++++++++++++++++++++++++++++++++++ 1 files changed, 34 insertions(+), 0 deletions(-)
diff --git a/dlls/msi/tests/db.c b/dlls/msi/tests/db.c index 21fa374..441d6f5 100644 --- a/dlls/msi/tests/db.c +++ b/dlls/msi/tests/db.c @@ -3122,6 +3122,39 @@ static void test_update(void) ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n"); }
+void test_special_tables(void) +{ + const char *query; + MSIHANDLE hdb = 0; + UINT r; + + r = MsiOpenDatabase(msifile, MSIDBOPEN_CREATE, &hdb); + ok(r == ERROR_SUCCESS, "MsiOpenDatabase failed\n"); + + query = "CREATE TABLE `_Properties` ( " + "`foo` INT NOT NULL, `bar` INT LOCALIZABLE PRIMARY KEY `foo`)"; + r = run_query(hdb, 0, query); + ok(r == ERROR_SUCCESS, "failed to create table\n"); + + query = "CREATE TABLE `_Streams` ( " + "`foo` INT NOT NULL, `bar` INT LOCALIZABLE PRIMARY KEY `foo`)"; + r = run_query(hdb, 0, query); + todo_wine ok(r == ERROR_BAD_QUERY_SYNTAX, "created _Streams table\n"); + + query = "CREATE TABLE `_Tables` ( " + "`foo` INT NOT NULL, `bar` INT LOCALIZABLE PRIMARY KEY `foo`)"; + r = run_query(hdb, 0, query); + ok(r == ERROR_BAD_QUERY_SYNTAX, "created _Tables table\n"); + + query = "CREATE TABLE `_Columns` ( " + "`foo` INT NOT NULL, `bar` INT LOCALIZABLE PRIMARY KEY `foo`)"; + r = run_query(hdb, 0, query); + ok(r == ERROR_BAD_QUERY_SYNTAX, "created _Columns table\n"); + + r = MsiCloseHandle(hdb); + ok(r == ERROR_SUCCESS, "MsiCloseHandle failed\n"); +} + START_TEST(db) { test_msidatabase(); @@ -3144,4 +3177,5 @@ START_TEST(db) test_alter(); test_integers(); test_update(); + test_special_tables(); }