MSI: add a simple test case for databases

Mike McCormack mike at codeweavers.com
Wed Jan 5 00:28:36 CST 2005


This is a baby step to add the infrastructure for MSI test cases. Looks 
like we'll need some OLE storage fixes before adding too many more 
database tests.

Mike


ChangeLog:
* add a simple test case for databases
-------------- next part --------------
Index: configure.ac
===================================================================
RCS file: /home/wine/wine/configure.ac,v
retrieving revision 1.330
diff -u -r1.330 configure.ac
--- configure.ac	7 Dec 2004 17:19:54 -0000	1.330
+++ configure.ac	5 Jan 2005 06:25:41 -0000
@@ -1588,6 +1588,7 @@
 dlls/msdmo/Makefile
 dlls/mshtml/Makefile
 dlls/msi/Makefile
+dlls/msi/tests/Makefile
 dlls/msimg32/Makefile
 dlls/msisys/Makefile
 dlls/msnet32/Makefile
Index: dlls/msi/Makefile.in
===================================================================
RCS file: /home/wine/wine/dlls/msi/Makefile.in,v
retrieving revision 1.15
diff -u -r1.15 Makefile.in
--- dlls/msi/Makefile.in	4 Jul 2004 00:35:52 -0000	1.15
+++ dlls/msi/Makefile.in	5 Jan 2005 06:25:41 -0000
@@ -31,6 +31,8 @@
 EXTRA_SRCS = sql.y cond.y
 EXTRA_OBJS = sql.tab.o cond.tab.o
 
+SUBDIRS = tests
+
 @MAKE_DLL_RULES@
 
 sql.tab.c sql.tab.h: sql.y
--- /dev/null	2004-12-26 03:00:47.000000000 +0900
+++ dlls/msi/tests/Makefile.in	2005-01-05 15:08:11.000000000 +0900
@@ -0,0 +1,13 @@
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../../..
+SRCDIR    = @srcdir@
+VPATH     = @srcdir@
+TESTDLL   = msi.dll
+IMPORTS   = msi kernel32
+
+CTESTS = \
+	db.c
+
+ at MAKE_TEST_RULES@
+
+### Dependencies:
--- /dev/null	2004-12-26 03:00:47.000000000 +0900
+++ dlls/msi/tests/db.c	2005-01-05 15:24:03.000000000 +0900
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2005 Mike McCormack for Codeweavers
+ *
+ * A test program for MSI database files.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+#include "config.h"
+
+#include <windows.h>
+#include <msi.h>
+#include <msiquery.h>
+
+#include "wine/test.h"
+
+START_TEST(db)
+{
+    MSIHANDLE hdb = 0;
+    CHAR szName[] = "C:\\mytest.msi";
+    UINT res;
+
+    DeleteFile(szName);
+
+    /* create an empty database */
+    res = MsiOpenDatabase(szName, MSIDBOPEN_CREATE, &hdb );
+    ok( res == ERROR_SUCCESS , "Failed to create database" );
+
+    res = MsiDatabaseCommit( hdb );
+    ok( res == ERROR_SUCCESS , "Failed to commit database" );
+
+    res = MsiCloseHandle( hdb );
+    ok( res == ERROR_SUCCESS , "Failed to close database" );
+}
--- /dev/null	2004-12-26 03:00:47.000000000 +0900
+++ dlls/msi/tests/.cvsignore	2005-01-05 15:18:29.000000000 +0900
@@ -0,0 +1,3 @@
+Makefile
+db.ok
+testlist.c


More information about the wine-patches mailing list