8493 lines
241 KiB
C++
8493 lines
241 KiB
C++
//--------------------------------------------------------------------
|
|
// Microsoft OLE DB Testing
|
|
//
|
|
// Copyright 1995-2000 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// @doc
|
|
//
|
|
// @module ISESPRPT.CPP | Source code for autotest ISESPRPT.CPP.
|
|
//
|
|
|
|
#include "MODStandard.hpp" // Standard headers, precompiled in modcore.cpp
|
|
#define DBINITCONSTANTS // Must be defined to initialize constants in OLEDB.H
|
|
#define INITGUID
|
|
#include "ISesPrpt.h" // Testcase's header
|
|
|
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
// Module Values
|
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
// {{ TCW_MODULE_GLOBALS
|
|
DECLARE_MODULE_CLSID = { 0xac817440, 0x9e1f, 0x11d0, { 0x99, 0x51, 0x00, 0xaa, 0x00, 0x37, 0xda, 0x9b }};
|
|
DECLARE_MODULE_NAME("ISessionProperties");
|
|
DECLARE_MODULE_OWNER("Microsoft");
|
|
DECLARE_MODULE_DESCRIP("Test module for ISessionProperties Interfaces");
|
|
DECLARE_MODULE_VERSION(831416337);
|
|
// TCW_WizardVersion(2)
|
|
// TCW_Automation(True)
|
|
// }} TCW_MODULE_GLOBALS_END
|
|
|
|
//Has function InitGetPropDefault been executed yet?
|
|
BOOL g_fInitGetPropDefault=FALSE;
|
|
BOOL g_fExtraSesProp=FALSE;
|
|
|
|
//Global for &DBPROPERTYSUPPORT attributes
|
|
struct DBPrptAttr
|
|
{
|
|
const GUID *pGuidPropertySet; //The GUID of the property set
|
|
DBPROPID dwPropertyID; //The ID of the property
|
|
BOOL fSupported; //Whether the property is supported
|
|
BOOL fSettable; //Whether the property is settable
|
|
VARTYPE vtType; //The type of the property
|
|
VARIANT vDefault; //The default of the property
|
|
WCHAR wszDescription[DESCRIPTION_SIZE]; //The description of the property
|
|
}g_rgDBProperties[]={
|
|
//
|
|
//pGuidPropertySet dwPropertyID fSupported fSettable vtType vDefault Description
|
|
//================ ============ ========== ========= ====== ======== ============
|
|
&DBPROPSET_COLUMN, DBPROP_COL_AUTOINCREMENT, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Autoincrement\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_DEFAULT, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Default\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_DESCRIPTION, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Description\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_FIXEDLENGTH, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Fixed Length\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_INCREMENT, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Increment\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_ISLONG, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Is Long\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_NULLABLE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Nullable\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_PRIMARYKEY, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Primary Key\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_SEED, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Seed\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COL_UNIQUE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Unique\0",
|
|
&DBPROPSET_COLUMN, DBPROP_COLUMNLCID, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Column LCID\0",
|
|
&DBPROPSET_DATASOURCE, DBPROP_CURRENTCATALOG, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Current Catalog\0",
|
|
&DBPROPSET_DATASOURCE, DBPROP_MULTIPLECONNECTIONS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Multiple Connections\0",
|
|
&DBPROPSET_DATASOURCE, DBPROP_RESETDATASOURCE, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Reset Datasource\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_ACTIVESESSIONS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Active Sessions\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_ALTERCOLUMN, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Alter Column Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_ASYNCTXNABORT, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Asynchable Abort\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_ASYNCTXNCOMMIT, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Asynchable Commit\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_BYREFACCESSORS, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Pass By Ref Accessors\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_CATALOGLOCATION, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Catalog Location\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_CATALOGTERM, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Catalog Term\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_CATALOGUSAGE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Catalog Usage\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_COLUMNDEFINITION, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Column Definition\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_COMSERVICES, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"COM Service Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_CONCATNULLBEHAVIOR, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"NULL Concatenation Behavior\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_CONNECTIONSTATUS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Connection Status\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_DATASOURCENAME, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Data Source Name\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_DATASOURCEREADONLY, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Read-Only Data Source\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_DATASOURCE_TYPE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Data Source Type\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_DBMSNAME, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"DBMS Name\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_DBMSVER, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"DBMS Version\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_DSOTHREADMODEL, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Data Source Object Threading Model\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_GENERATEURL, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"URL Generation\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_GROUPBY, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"GROUP BY Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_HETEROGENEOUSTABLES, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Heterogeneous Table Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_IDENTIFIERCASE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Identifier Case Sensitivity\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MAXINDEXSIZE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Index Size\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MAXOPENCHAPTERS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Open Chapters\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MAXROWSIZE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Row Size\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MAXROWSIZEINCLUDESBLOB, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Maximum Row Size Includes BLOB\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MAXTABLESINSELECT, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Tables in SELECT\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MULTIPLEPARAMSETS, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Multiple Parameter Sets\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MULTIPLERESULTS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Multiple Results\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MULTIPLESTORAGEOBJECTS, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Multiple Storage Objects\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_MULTITABLEUPDATE, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Multi-Table Update\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_NULLCOLLATION, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"NULL Collation Order\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_OLEOBJECTS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"OLE Object Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_OPENROWSETSUPPORT, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Open Rowset Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_ORDERBYCOLUMNSINSELECT, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"ORDER BY Columns in Select List\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_OUTPUTPARAMETERAVAILABILITY, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Output Parameter Availability\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PERSISTENTIDTYPE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Persistent ID Type\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PREPAREABORTBEHAVIOR, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Prepare Abort Behavior\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PREPARECOMMITBEHAVIOR, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Prepare Commit Behavior\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PROCEDURETERM, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Procedure Term\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PROVIDERFRIENDLYNAME, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Provider Friendly Name\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PROVIDERMEMORY, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Provider Owned Memory\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PROVIDERFILENAME, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Provider Name\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PROVIDEROLEDBVER, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"OLE DB Version\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_PROVIDERVER, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Provider Version\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_QUOTEDIDENTIFIERCASE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Quoted Identifier Sensitivity\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_ROWSETCONVERSIONSONCOMMAND, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Rowset Conversions on Command\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SCHEMATERM, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Schema Term\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SCHEMAUSAGE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Schema Usage\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SERVERNAME, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Server Name\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SQLSUPPORT, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"SQL Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_STRUCTUREDSTORAGE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Structured Storage\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SUBQUERIES, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Subquery Support\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SUPPORTEDTXNDDL, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Transaction DDL\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SUPPORTEDTXNISOLEVELS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Isolation Levels\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_SUPPORTEDTXNISORETAIN, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Isolation Retention\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_TABLETERM, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Table Term\0",
|
|
&DBPROPSET_DATASOURCEINFO, DBPROP_USERNAME, FALSE, FALSE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"User Name\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_AUTOUPDATE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Auto-Update\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_CLUSTERED, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Clustered\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_FILLFACTOR, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Fill Factor\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_INITIALSIZE, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Initial Size\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_NULLCOLLATION, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"NULL Collation\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_NULLS, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"NULL Keys\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_PRIMARYKEY, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Primary Key\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_SORTBOOKMARKS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Sort Bookmarks\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_TEMPINDEX, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Temporary Index\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_TYPE, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Index Type\0",
|
|
&DBPROPSET_INDEX, DBPROP_INDEX_UNIQUE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Unique\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_CACHE_AUTHINFO, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Cache Authentication\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_ENCRYPT_PASSWORD, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Encrypt Password\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_INTEGRATED, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Integrated Security\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_MASK_PASSWORD, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Mask Password\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_PASSWORD, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Password\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_PERSIST_ENCRYPTED, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Persist Encrypted\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Persist Security Info\0",
|
|
&DBPROPSET_DBINIT, DBPROP_AUTH_USERID, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"User ID\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_ASYNCH, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Asynchronous Processing\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_BINDFLAGS, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Bind Flags\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_CATALOG, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Initial Catalog\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_DATASOURCE, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Data Source\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_GENERALTIMEOUT, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"General Timeout\0",
|
|
#ifdef _WIN64
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_HWND, FALSE, TRUE, VT_I8, {VT_EMPTY,0,0,0,0}, L"Window Handle\0",
|
|
#else
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_HWND, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Window Handle\0",
|
|
#endif
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_IMPERSONATION_LEVEL, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Impersonation Level\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_LCID, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Locale Identifier\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_LOCATION, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Location\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_LOCKOWNER, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Lock Owner\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_MODE, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Mode\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_OLEDBSERVICES, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"OLE DB Services\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_PROMPT, FALSE, TRUE, VT_I2, {VT_EMPTY,0,0,0,0}, L"Prompt\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_PROTECTION_LEVEL, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Protection Level\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_PROVIDERSTRING, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Extended Properties\0",
|
|
&DBPROPSET_DBINIT, DBPROP_INIT_TIMEOUT, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Connect Timeout\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ABORTPRESERVE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Preserve on Abort\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ACCESSORDER, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Access Order\0",
|
|
&DBPROPSET_ROWSET, DBPROP_APPENDONLY, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Append-Only Rowset\0",
|
|
&DBPROPSET_ROWSET, DBPROP_BLOCKINGSTORAGEOBJECTS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Blocking Storage Objects\0",
|
|
&DBPROPSET_ROWSET, DBPROP_BOOKMARKINFO, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Bookmark Information\0",
|
|
&DBPROPSET_ROWSET, DBPROP_BOOKMARKS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Use Bookmarks\0",
|
|
&DBPROPSET_ROWSET, DBPROP_BOOKMARKSKIPPED, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Skip Deleted Bookmarks\0",
|
|
&DBPROPSET_ROWSET, DBPROP_BOOKMARKTYPE, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Bookmark Type\0",
|
|
&DBPROPSET_ROWSET, DBPROP_CACHEDEFERRED, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Cache Deferred Columns\0",
|
|
&DBPROPSET_ROWSET, DBPROP_CANFETCHBACKWARDS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Fetch Backwards\0",
|
|
&DBPROPSET_ROWSET, DBPROP_CANHOLDROWS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Hold Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_CANSCROLLBACKWARDS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Scroll Backwards\0",
|
|
&DBPROPSET_ROWSET, DBPROP_CHANGEINSERTEDROWS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Change Inserted Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_CLIENTCURSOR, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Client Cursor\0",
|
|
&DBPROPSET_ROWSET, DBPROP_COLUMNRESTRICT, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Column Privileges\0",
|
|
&DBPROPSET_ROWSET, DBPROP_COMMANDTIMEOUT, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Command Time Out\0",
|
|
&DBPROPSET_ROWSET, DBPROP_COMMITPRESERVE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Preserve on Commit\0",
|
|
&DBPROPSET_ROWSET, DBPROP_DEFERRED, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Defer Column\0",
|
|
&DBPROPSET_ROWSET, DBPROP_DELAYSTORAGEOBJECTS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Delay Storage Object Updates\0",
|
|
&DBPROPSET_ROWSET, DBPROP_FINDCOMPAREOPS, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Find Operations\0",
|
|
&DBPROPSET_ROWSET, DBPROP_HIDDENCOLUMNS, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Hidden Columns\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IMMOBILEROWS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Immobile Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_LITERALBOOKMARKS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Literal Bookmarks\0",
|
|
&DBPROPSET_ROWSET, DBPROP_LITERALIDENTITY, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Literal Row Identity\0",
|
|
&DBPROPSET_ROWSET, DBPROP_LOCKMODE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Lock Mode\0",
|
|
&DBPROPSET_ROWSET, DBPROP_MAXOPENROWS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Open Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_MAXPENDINGROWS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Pending Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_MAXROWS, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_MAYWRITECOLUMN, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Column Writable\0",
|
|
&DBPROPSET_ROWSET, DBPROP_MEMORYUSAGE, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Memory Usage\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFICATIONGRANULARITY, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Notification Granularity\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFICATIONPHASES, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Notification Phases\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYCOLUMNSET, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Column Set Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWDELETE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Delete Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWFIRSTCHANGE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row First Change Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWINSERT, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Insert Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWRESYNCH, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Resynchronization Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWSETCHANGED, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Rowset Change Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWSETFETCHPOSITIONCHANGE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Rowset Fetch Position Change Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWSETRELEASE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Rowset Release Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWUNDOCHANGE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Undo Change Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWUNDODELETE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Undo Delete Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWUNDOINSERT, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Undo Insert Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_NOTIFYROWUPDATE, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Update Notification\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ORDEREDBOOKMARKS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Bookmarks Ordered\0",
|
|
&DBPROPSET_ROWSET, DBPROP_OTHERINSERT, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Others' Inserts Visible\0",
|
|
&DBPROPSET_ROWSET, DBPROP_OTHERUPDATEDELETE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Others' Changes Visible\0",
|
|
&DBPROPSET_ROWSET, DBPROP_OWNINSERT, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Own Inserts Visible\0",
|
|
&DBPROPSET_ROWSET, DBPROP_OWNUPDATEDELETE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Own Changes Visible\0",
|
|
&DBPROPSET_ROWSET, DBPROP_QUICKRESTART, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Quick Restart\0",
|
|
&DBPROPSET_ROWSET, DBPROP_REENTRANTEVENTS, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Reentrant Events\0",
|
|
&DBPROPSET_ROWSET, DBPROP_REMOVEDELETED, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Remove Deleted Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_REPORTMULTIPLECHANGES, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Report Multiple Changes\0",
|
|
&DBPROPSET_ROWSET, DBPROP_RETURNPENDINGINSERTS, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Return Pending Inserts\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ROW_BULKOPS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Bulk Operations\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ROWRESTRICT, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Row Privileges\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ROWSET_ASYNCH, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Asynchronous Rowset Processing\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ROWTHREADMODEL, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Row Threading Model\0",
|
|
&DBPROPSET_ROWSET, DBPROP_SERVERCURSOR, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Server Cursor\0",
|
|
&DBPROPSET_ROWSET, DBPROP_SERVERDATAONINSERT, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Server Data on Insert\0",
|
|
&DBPROPSET_ROWSET, DBPROP_STORAGEFLAGS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Storage Flags\0",
|
|
&DBPROPSET_ROWSET, DBPROP_STRONGIDENTITY, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Strong Row Identity\0",
|
|
&DBPROPSET_ROWSET, DBPROP_TRANSACTEDOBJECT, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Objects Transacted\0",
|
|
&DBPROPSET_ROWSET, DBPROP_UNIQUEROWS, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Unique Rows\0",
|
|
&DBPROPSET_ROWSET, DBPROP_UPDATABILITY, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Updatability\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IAccessor, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IAccessor\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IBindResource, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IBindResource\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IChapteredRowset, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IChapteredRowset\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IColumnsInfo, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IColumnsInfo\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IColumnsInfo2, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IColumnsInfo2\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IColumnsRowset, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IColumnsRowset\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IConnectionPointContainer, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IConnectionPointContainer\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IConvertType, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IConvertType\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ICreateRow, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"ICreateRow\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IDBAsynchStatus, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IDBAsynchStatus\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IDBBinderProperties, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IDBBinderProperties\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IGetRow, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IGetRow\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IGetSession, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IGetSession\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IGetSourceRow, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IGetSourceRow\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IMultipleResults, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IMultipleResults\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IParentRowset, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IParentRowset\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRegisterProvider, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRegisterProvider\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRow, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRow\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowChange, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowChange\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowSchemaChange, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowSchemaChange\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowset, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowset\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetChange, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetChange\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetCurrentIndex, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetCurrentIndex\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetFind, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetFind\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetIdentity, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetIdentity\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetIndex, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetIndex\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetInfo, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetInfo\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetLocate, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetLocate\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetRefresh, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetRefresh\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetResynch, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetResynch\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetScroll, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetScroll\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetUpdate, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetUpdate\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IRowsetView, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IRowsetView\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IScopedOperations, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IScopedOperations\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ISupportErrorInfo, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"ISupportErrorInfo\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ILockBytes, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"ILockBytes\0",
|
|
&DBPROPSET_ROWSET, DBPROP_ISequentialStream, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"ISequentialStream\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IStorage, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IStorage\0",
|
|
&DBPROPSET_ROWSET, DBPROP_IStream, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IStream\0",
|
|
&DBPROPSET_SESSION, DBPROP_SESS_AUTOCOMMITISOLEVELS, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Autocommit Isolation Levels\0",
|
|
&DBPROPSET_TABLE, DBPROP_TBL_TEMPTABLE, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Temporary Table\0",
|
|
&DBPROPSET_TRUSTEE, DBPROP_TRUSTEE_USERNAME, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Trustee User Name\0",
|
|
&DBPROPSET_TRUSTEE, DBPROP_TRUSTEE_AUTHENTICATION, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"Trustee Authentication\0",
|
|
&DBPROPSET_TRUSTEE, DBPROP_TRUSTEE_NEWAUTHENTICATION, FALSE, TRUE, VT_BSTR, {VT_EMPTY,0,0,0,0}, L"New Trustee Authentication\0",
|
|
&DBPROPSET_VIEW, DBPROP_FILTERCOMPAREOPS, FALSE, TRUE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Filter Operations\0",
|
|
&DBPROPSET_VIEW, DBPROP_IAccessor, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IAccessor\0",
|
|
&DBPROPSET_VIEW, DBPROP_IColumnsInfo, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IColumnsInfo\0",
|
|
&DBPROPSET_VIEW, DBPROP_ISupportErrorInfo, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"ISupportErrorInfo\0",
|
|
&DBPROPSET_VIEW, DBPROP_IViewChapter, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IViewChapter\0",
|
|
&DBPROPSET_VIEW, DBPROP_IViewFilter, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IViewFilter\0",
|
|
&DBPROPSET_VIEW, DBPROP_IViewRowset, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IViewRowset\0",
|
|
&DBPROPSET_VIEW, DBPROP_IViewSort, FALSE, TRUE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"IViewSort\0",
|
|
&DBPROPSET_VIEW, DBPROP_MAXORSINFILTER, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum OR Conditions\0",
|
|
&DBPROPSET_VIEW, DBPROP_MAXSORTCOLUMNS, FALSE, FALSE, VT_I4, {VT_EMPTY,0,0,0,0}, L"Maximum Sort Columns\0",
|
|
&DBPROPSET_VIEW, DBPROP_SORTONINDEX, FALSE, FALSE, VT_BOOL, {VT_EMPTY,0,0,0,0}, L"Sort on Index\0",
|
|
};
|
|
|
|
ULONG g_cDBProperties = sizeof(g_rgDBProperties)/sizeof(g_rgDBProperties[0]);
|
|
|
|
//Indexes to g_rgDBProperties[] array. Need parenthese in the code.
|
|
//Can not add parenthese here, exceeds compiler limit.
|
|
|
|
const ULONG IDX_COL_AUTOINCREMENT =(ULONG)0L;
|
|
const ULONG IDX_COL_DEFAULT =IDX_COL_AUTOINCREMENT+1;
|
|
const ULONG IDX_COL_DESCRIPTION =IDX_COL_DEFAULT+1;
|
|
const ULONG IDX_COL_FIXEDLENGTH =IDX_COL_DESCRIPTION+1;
|
|
const ULONG IDX_COL_INCREMENT =IDX_COL_FIXEDLENGTH+1;
|
|
const ULONG IDX_COL_ISLONG =IDX_COL_INCREMENT+1;
|
|
const ULONG IDX_COL_NULLABLE =IDX_COL_ISLONG+1;
|
|
const ULONG IDX_COL_PRIMARYKEY =IDX_COL_NULLABLE+1;
|
|
const ULONG IDX_COL_SEED =IDX_COL_PRIMARYKEY+1;
|
|
const ULONG IDX_COL_UNIQUE =IDX_COL_SEED+1;
|
|
const ULONG IDX_COLUMNLCID =IDX_COL_UNIQUE+1;
|
|
const ULONG IDX_CURRENTCATALOG =IDX_COLUMNLCID+1;
|
|
const ULONG IDX_MULTIPLECONNECTIONS =IDX_CURRENTCATALOG+1;
|
|
const ULONG IDX_RESETDATASOURCE =IDX_MULTIPLECONNECTIONS+1;
|
|
const ULONG IDX_ACTIVESESSIONS =IDX_RESETDATASOURCE+1;
|
|
const ULONG IDX_ALTERCOLUMN =IDX_ACTIVESESSIONS+1;
|
|
const ULONG IDX_ASYNCTXNABORT =IDX_ALTERCOLUMN+1;
|
|
const ULONG IDX_ASYNCTXNCOMMIT =IDX_ASYNCTXNABORT+1;
|
|
const ULONG IDX_BYREFACCESSORS =IDX_ASYNCTXNCOMMIT+1;
|
|
const ULONG IDX_CATALOGLOCATION =IDX_BYREFACCESSORS+1;
|
|
const ULONG IDX_CATALOGTERM =IDX_CATALOGLOCATION+1;
|
|
const ULONG IDX_CATALOGUSAGE =IDX_CATALOGTERM+1;
|
|
const ULONG IDX_COLUMNDEFINITION =IDX_CATALOGUSAGE+1;
|
|
const ULONG IDX_COMSERVICES =IDX_COLUMNDEFINITION+1;
|
|
const ULONG IDX_CONCATNULLBEHAVIOR =IDX_COMSERVICES+1;
|
|
const ULONG IDX_CONNECTIONSTATUS =IDX_CONCATNULLBEHAVIOR+1;
|
|
const ULONG IDX_DATASOURCENAME =IDX_CONNECTIONSTATUS+1;
|
|
const ULONG IDX_DATASOURCEREADONLY =IDX_DATASOURCENAME+1;
|
|
const ULONG IDX_DATASOURCETYPE =IDX_DATASOURCEREADONLY+1;
|
|
const ULONG IDX_DBMSNAME =IDX_DATASOURCETYPE+1;
|
|
const ULONG IDX_DBMSVER =IDX_DBMSNAME+1;
|
|
const ULONG IDX_DSOTHREADMODEL =IDX_DBMSVER+1;
|
|
const ULONG IDX_GENERATEURL =IDX_DSOTHREADMODEL+1;
|
|
const ULONG IDX_GROUPBY =IDX_GENERATEURL+1;
|
|
const ULONG IDX_HETEROGENEOUSTABLES =IDX_GROUPBY+1;
|
|
const ULONG IDX_IDENTIFIERCASE =IDX_HETEROGENEOUSTABLES+1;
|
|
const ULONG IDX_MAXINDEXSIZE =IDX_IDENTIFIERCASE+1;
|
|
const ULONG IDX_MAXOPENCHAPTERS =IDX_MAXINDEXSIZE+1;
|
|
const ULONG IDX_MAXROWSIZE =IDX_MAXOPENCHAPTERS+1;
|
|
const ULONG IDX_MAXROWSIZEINCLUDESBLOB =IDX_MAXROWSIZE+1;
|
|
const ULONG IDX_MAXTABLESINSELECT =IDX_MAXROWSIZEINCLUDESBLOB+1;
|
|
const ULONG IDX_MULTIPLEPARAMSETS =IDX_MAXTABLESINSELECT+1;
|
|
const ULONG IDX_MULTIPLERESULTS =IDX_MULTIPLEPARAMSETS+1;
|
|
const ULONG IDX_MULTIPLESTORAGEOBJECTS =IDX_MULTIPLERESULTS+1;
|
|
const ULONG IDX_MULTITABLEUPDATE =IDX_MULTIPLESTORAGEOBJECTS+1;
|
|
const ULONG IDX_NULLCOLLATION =IDX_MULTITABLEUPDATE+1;
|
|
const ULONG IDX_OLEOBJECTS =IDX_NULLCOLLATION+1;
|
|
const ULONG IDX_OPENROWSETSUPPORT =IDX_OLEOBJECTS+1;
|
|
const ULONG IDX_ORDERBYCOLUMNSINSELECT =IDX_OPENROWSETSUPPORT+1;
|
|
const ULONG IDX_OUTPUTPARAMETERAVAILABILITY =IDX_ORDERBYCOLUMNSINSELECT+1;
|
|
const ULONG IDX_PERSISTENTIDTYPE =IDX_OUTPUTPARAMETERAVAILABILITY+1;
|
|
const ULONG IDX_PREPAREABORTBEHAVIOR =IDX_PERSISTENTIDTYPE+1;
|
|
const ULONG IDX_PREPARECOMMITBEHAVIOR =IDX_PREPAREABORTBEHAVIOR+1;
|
|
const ULONG IDX_PROCEDURETERM =IDX_PREPARECOMMITBEHAVIOR+1;
|
|
const ULONG IDX_PROVIDERFRIENDLYNAME =IDX_PROCEDURETERM+1;
|
|
const ULONG IDX_PROVIDERMEMORY =IDX_PROVIDERFRIENDLYNAME+1;
|
|
const ULONG IDX_PROVIDERFILENAME =IDX_PROVIDERMEMORY+1;
|
|
const ULONG IDX_PROVIDEROLEDBVER =IDX_PROVIDERFILENAME+1;
|
|
const ULONG IDX_PROVIDERVER =IDX_PROVIDEROLEDBVER+1;
|
|
const ULONG IDX_QUOTEDIDENTIFIERCASE =IDX_PROVIDERVER+1;
|
|
const ULONG IDX_ROWSETCONVERSIONSONCOMMAND =IDX_QUOTEDIDENTIFIERCASE+1;
|
|
const ULONG IDX_SCHEMATERM =IDX_ROWSETCONVERSIONSONCOMMAND+1;
|
|
const ULONG IDX_SCHEMAUSAGE =IDX_SCHEMATERM+1;
|
|
const ULONG IDX_SERVERNAME =IDX_SCHEMAUSAGE+1;
|
|
const ULONG IDX_SQLSUPPORT =IDX_SERVERNAME+1;
|
|
const ULONG IDX_STRUCTUREDSTORAGE =IDX_SQLSUPPORT+1;
|
|
const ULONG IDX_SUBQUERIES =IDX_STRUCTUREDSTORAGE+1;
|
|
const ULONG IDX_SUPPORTEDTXNDDL =IDX_SUBQUERIES+1;
|
|
const ULONG IDX_SUPPORTEDTXNISOLEVELS =IDX_SUPPORTEDTXNDDL+1;
|
|
const ULONG IDX_SUPPORTEDTXNISORETAIN =IDX_SUPPORTEDTXNISOLEVELS+1;
|
|
const ULONG IDX_TABLETERM =IDX_SUPPORTEDTXNISORETAIN+1;
|
|
const ULONG IDX_USERNAME =IDX_TABLETERM+1;
|
|
const ULONG IDX_INDEX_AUTOUPDATE =IDX_USERNAME+1;
|
|
const ULONG IDX_INDEX_CLUSTERED =IDX_INDEX_AUTOUPDATE+1;
|
|
const ULONG IDX_INDEX_FILLFACTOR =IDX_INDEX_CLUSTERED+1;
|
|
const ULONG IDX_INDEX_INITIALSIZE =IDX_INDEX_FILLFACTOR+1;
|
|
const ULONG IDX_INDEX_NULLCOLLATION =IDX_INDEX_INITIALSIZE+1;
|
|
const ULONG IDX_INDEX_NULLS =IDX_INDEX_NULLCOLLATION+1;
|
|
const ULONG IDX_INDEX_PRIMARYKEY =IDX_INDEX_NULLS+1;
|
|
const ULONG IDX_INDEX_SORTBOOKMARKS =IDX_INDEX_PRIMARYKEY+1;
|
|
const ULONG IDX_INDEX_TEMPINDEX =IDX_INDEX_SORTBOOKMARKS+1;
|
|
const ULONG IDX_INDEX_TYPE =IDX_INDEX_TEMPINDEX+1;
|
|
const ULONG IDX_INDEX_UNIQUE =IDX_INDEX_TYPE+1;
|
|
const ULONG IDX_AUTH_CACHE_AUTHINFO =IDX_INDEX_UNIQUE+1;
|
|
const ULONG IDX_AUTH_ENCRYPT_PASSWORD =IDX_AUTH_CACHE_AUTHINFO+1;
|
|
const ULONG IDX_AUTH_INTEGRATED =IDX_AUTH_ENCRYPT_PASSWORD+1;
|
|
const ULONG IDX_AUTH_MASK_PASSWORD =IDX_AUTH_INTEGRATED+1;
|
|
const ULONG IDX_AUTH_PASSWORD =IDX_AUTH_MASK_PASSWORD+1;
|
|
const ULONG IDX_AUTH_PERSIST_ENCRYPTED =IDX_AUTH_PASSWORD+1;
|
|
const ULONG IDX_AUTH_PERSIST_SENSITIVE_AUTHINFO =IDX_AUTH_PERSIST_ENCRYPTED+1;
|
|
const ULONG IDX_AUTH_USERID =IDX_AUTH_PERSIST_SENSITIVE_AUTHINFO+1;
|
|
const ULONG IDX_INIT_ASYNCH =IDX_AUTH_USERID+1;
|
|
const ULONG IDX_INIT_BINDFLAGS =IDX_INIT_ASYNCH+1;
|
|
const ULONG IDX_INIT_CATALOG =IDX_INIT_BINDFLAGS+1;
|
|
const ULONG IDX_INIT_DATASOURCE =IDX_INIT_CATALOG+1;
|
|
const ULONG IDX_INIT_GENERALTIMEOUT =IDX_INIT_DATASOURCE+1;
|
|
const ULONG IDX_INIT_HWND =IDX_INIT_GENERALTIMEOUT+1;
|
|
const ULONG IDX_INIT_IMPERSONATION_LEVEL =IDX_INIT_HWND+1;
|
|
const ULONG IDX_INIT_LCID =IDX_INIT_IMPERSONATION_LEVEL+1;
|
|
const ULONG IDX_INIT_LOCATION =IDX_INIT_LCID+1;
|
|
const ULONG IDX_INIT_LOCKOWNER =IDX_INIT_LOCATION+1;
|
|
const ULONG IDX_INIT_MODE =IDX_INIT_LOCKOWNER+1;
|
|
const ULONG IDX_INIT_OLEDBSERVICES =IDX_INIT_MODE+1;
|
|
const ULONG IDX_INIT_PROMPT =IDX_INIT_OLEDBSERVICES+1;
|
|
const ULONG IDX_INIT_PROTECTION_LEVEL =IDX_INIT_PROMPT+1;
|
|
const ULONG IDX_INIT_PROVIDERSTRING =IDX_INIT_PROTECTION_LEVEL+1;
|
|
const ULONG IDX_INIT_TIMEOUT =IDX_INIT_PROVIDERSTRING+1;
|
|
const ULONG IDX_ABORTPRESERVE =IDX_INIT_TIMEOUT+1;
|
|
const ULONG IDX_ACCESSORDER =IDX_ABORTPRESERVE+1;
|
|
const ULONG IDX_APPENDONLY =IDX_ACCESSORDER+1;
|
|
const ULONG IDX_BLOCKINGSTORAGEOBJECTS =IDX_APPENDONLY+1;
|
|
const ULONG IDX_BOOKMARKINFO =IDX_BLOCKINGSTORAGEOBJECTS+1;
|
|
const ULONG IDX_BOOKMARKS =IDX_BOOKMARKINFO+1;
|
|
const ULONG IDX_BOOKMARKSKIPPED =IDX_BOOKMARKS+1;
|
|
const ULONG IDX_BOOKMARKTYPE =IDX_BOOKMARKSKIPPED+1;
|
|
const ULONG IDX_CACHEDEFERRED =IDX_BOOKMARKTYPE+1;
|
|
const ULONG IDX_CANFETCHBACKWARDS =IDX_CACHEDEFERRED+1;
|
|
const ULONG IDX_CANHOLDROWS =IDX_CANFETCHBACKWARDS+1;
|
|
const ULONG IDX_CANSCROLLBACKWARDS =IDX_CANHOLDROWS+1;
|
|
const ULONG IDX_CHANGEINSERTEDROWS =IDX_CANSCROLLBACKWARDS+1;
|
|
const ULONG IDX_CLIENTCURSOR =IDX_CHANGEINSERTEDROWS+1;
|
|
const ULONG IDX_COLUMNRESTRICT =IDX_CLIENTCURSOR+1;
|
|
const ULONG IDX_COMMANDTIMEOUT =IDX_COLUMNRESTRICT+1;
|
|
const ULONG IDX_COMMITPRESERVE =IDX_COMMANDTIMEOUT+1;
|
|
const ULONG IDX_DEFERRED =IDX_COMMITPRESERVE+1;
|
|
const ULONG IDX_DELAYSTORAGEOBJECTS =IDX_DEFERRED+1;
|
|
const ULONG IDX_FINDCOMPAREOPS =IDX_DELAYSTORAGEOBJECTS+1;
|
|
const ULONG IDX_HIDDENCOLUMNS =IDX_FINDCOMPAREOPS+1;
|
|
const ULONG IDX_IMMOBILEROWS =IDX_HIDDENCOLUMNS+1;
|
|
const ULONG IDX_LITERALBOOKMARKS =IDX_IMMOBILEROWS+1;
|
|
const ULONG IDX_LITERALIDENTITY =IDX_LITERALBOOKMARKS+1;
|
|
const ULONG IDX_LOCKMODE =IDX_LITERALIDENTITY+1;
|
|
const ULONG IDX_MAXOPENROWS =IDX_LOCKMODE+1;
|
|
const ULONG IDX_MAXPENDINGROWS =IDX_MAXOPENROWS+1;
|
|
const ULONG IDX_MAXROWS =IDX_MAXPENDINGROWS+1;
|
|
const ULONG IDX_MAYWRITECOLUMN =IDX_MAXROWS+1;
|
|
const ULONG IDX_MEMORYUSAGE =IDX_MAYWRITECOLUMN+1;
|
|
const ULONG IDX_NOTIFICATIONGRANULARITY =IDX_MEMORYUSAGE+1;
|
|
const ULONG IDX_NOTIFICATIONPHASES =IDX_NOTIFICATIONGRANULARITY+1;
|
|
const ULONG IDX_NOTIFYCOLUMNSET =IDX_NOTIFICATIONPHASES+1;
|
|
const ULONG IDX_NOTIFYROWDELETE =IDX_NOTIFYCOLUMNSET+1;
|
|
const ULONG IDX_NOTIFYROWFIRSTCHANGE =IDX_NOTIFYROWDELETE+1;
|
|
const ULONG IDX_NOTIFYROWINSERT =IDX_NOTIFYROWFIRSTCHANGE+1;
|
|
const ULONG IDX_NOTIFYROWRESYNCH =IDX_NOTIFYROWINSERT+1;
|
|
const ULONG IDX_NOTIFYROWSETCHANGED =IDX_NOTIFYROWRESYNCH+1;
|
|
const ULONG IDX_NOTIFYROWSETFETCHPOSITIONCHANGE =IDX_NOTIFYROWSETCHANGED+1;
|
|
const ULONG IDX_NOTIFYROWSETRELEASE =IDX_NOTIFYROWSETFETCHPOSITIONCHANGE+1;
|
|
const ULONG IDX_NOTIFYROWUNDOCHANGE =IDX_NOTIFYROWSETRELEASE+1;
|
|
const ULONG IDX_NOTIFYROWUNDODELETE =IDX_NOTIFYROWUNDOCHANGE+1;
|
|
const ULONG IDX_NOTIFYROWUNDOINSERT =IDX_NOTIFYROWUNDODELETE+1;
|
|
const ULONG IDX_NOTIFYROWUPDATE =IDX_NOTIFYROWUNDOINSERT+1;
|
|
const ULONG IDX_ORDEREDBOOKMARKS =IDX_NOTIFYROWUPDATE+1;
|
|
const ULONG IDX_OTHERINSERT =IDX_ORDEREDBOOKMARKS+1;
|
|
const ULONG IDX_OTHERUPDATEDELETE =IDX_OTHERINSERT+1;
|
|
const ULONG IDX_OWNINSERT =IDX_OTHERUPDATEDELETE+1;
|
|
const ULONG IDX_OWNUPDATEDELETE =IDX_OWNINSERT+1;
|
|
const ULONG IDX_QUICKRESTART =IDX_OWNUPDATEDELETE+1;
|
|
const ULONG IDX_REENTRANTEVENTS =IDX_QUICKRESTART+1;
|
|
const ULONG IDX_REMOVEDELETED =IDX_REENTRANTEVENTS+1;
|
|
const ULONG IDX_REPORTMULTIPLECHANGES =IDX_REMOVEDELETED+1;
|
|
const ULONG IDX_RETURNPENDINGINSERTS =IDX_REPORTMULTIPLECHANGES+1;
|
|
const ULONG IDX_ROW_BULKOPS =IDX_RETURNPENDINGINSERTS+1;
|
|
const ULONG IDX_ROWRESTRICT =IDX_ROW_BULKOPS+1;
|
|
const ULONG IDX_ROWSET_ASYNCH =IDX_ROWRESTRICT+1;
|
|
const ULONG IDX_ROWTHREADMODEL =IDX_ROWSET_ASYNCH+1;
|
|
const ULONG IDX_SERVERCURSOR =IDX_ROWTHREADMODEL+1;
|
|
const ULONG IDX_SERVERDATAONINSERT =IDX_SERVERCURSOR+1;
|
|
const ULONG IDX_STORAGEFLAGS =IDX_SERVERDATAONINSERT+1;
|
|
const ULONG IDX_STRONGIDENTITY =IDX_STORAGEFLAGS+1;
|
|
const ULONG IDX_TRANSACTEDOBJECT =IDX_STRONGIDENTITY+1;
|
|
const ULONG IDX_UNIQUEROWS =IDX_TRANSACTEDOBJECT+1;
|
|
const ULONG IDX_UPDATABILITY =IDX_UNIQUEROWS+1;
|
|
const ULONG IDX_IACCESSOR =IDX_UPDATABILITY+1;
|
|
const ULONG IDX_IBINDRESOURCE =IDX_IACCESSOR+1;
|
|
const ULONG IDX_ICHAPTEREDROWSET =IDX_IBINDRESOURCE+1;
|
|
const ULONG IDX_ICOLUMNSINFO =IDX_ICHAPTEREDROWSET+1;
|
|
const ULONG IDX_ICOLUMNSINFO2 =IDX_ICOLUMNSINFO+1;
|
|
const ULONG IDX_ICOLUMNSROWSET =IDX_ICOLUMNSINFO2+1;
|
|
const ULONG IDX_ICONNECTIONPOINTCONTAINER =IDX_ICOLUMNSROWSET+1;
|
|
const ULONG IDX_ICONVERTTYPE =IDX_ICONNECTIONPOINTCONTAINER+1;
|
|
const ULONG IDX_ICREATEROW =IDX_ICONVERTTYPE+1;
|
|
const ULONG IDX_IDBASYNCHSTATUS =IDX_ICREATEROW+1;
|
|
const ULONG IDX_IBINDERPROPERTIES =IDX_IDBASYNCHSTATUS+1;
|
|
const ULONG IDX_IGETROW =IDX_IBINDERPROPERTIES+1;
|
|
const ULONG IDX_IGETSESSION =IDX_IGETROW+1;
|
|
const ULONG IDX_IGETSOURCEROW =IDX_IGETSESSION+1;
|
|
const ULONG IDX_IMULTIPLERESULTS =IDX_IGETSOURCEROW+1;
|
|
const ULONG IDX_IPARENTROWSET =IDX_IMULTIPLERESULTS+1;
|
|
const ULONG IDX_IREGISTERPROVIDER =IDX_IPARENTROWSET+1;
|
|
const ULONG IDX_IROW =IDX_IREGISTERPROVIDER+1;
|
|
const ULONG IDX_IROWCHANGE =IDX_IROW+1;
|
|
const ULONG IDX_IROWSCHEMACHANGE =IDX_IROWCHANGE+1;
|
|
const ULONG IDX_IROWSET =IDX_IROWSCHEMACHANGE+1;
|
|
const ULONG IDX_IROWSETCHANGE =IDX_IROWSET+1;
|
|
const ULONG IDX_IROWSETCURRENTINDEX =IDX_IROWSETCHANGE+1;
|
|
const ULONG IDX_IROWSETFIND =IDX_IROWSETCURRENTINDEX+1;
|
|
const ULONG IDX_IROWSETIDENTITY =IDX_IROWSETFIND+1;
|
|
const ULONG IDX_IROWSETINDEX =IDX_IROWSETIDENTITY+1;
|
|
const ULONG IDX_IROWSETINFO =IDX_IROWSETINDEX+1;
|
|
const ULONG IDX_IROWSETLOCATE =IDX_IROWSETINFO+1;
|
|
const ULONG IDX_IROWSETREFRESH =IDX_IROWSETLOCATE+1;
|
|
const ULONG IDX_IROWSETRESYNCH =IDX_IROWSETREFRESH+1;
|
|
const ULONG IDX_IROWSETSCROLL =IDX_IROWSETRESYNCH+1;
|
|
const ULONG IDX_IROWSETUPDATE =IDX_IROWSETSCROLL+1;
|
|
const ULONG IDX_IROWSETVIEW =IDX_IROWSETUPDATE+1;
|
|
const ULONG IDX_ISCOPEDOPERATIONS =IDX_IROWSETVIEW+1;
|
|
const ULONG IDX_ISUPPORTERRORINFO =IDX_ISCOPEDOPERATIONS+1;
|
|
const ULONG IDX_ILOCKBYTES =IDX_ISUPPORTERRORINFO+1;
|
|
const ULONG IDX_ISEQUENTIALSTREAM =IDX_ILOCKBYTES+1;
|
|
const ULONG IDX_ISTORAGE =IDX_ISEQUENTIALSTREAM+1;
|
|
const ULONG IDX_ISTREAM =IDX_ISTORAGE+1;
|
|
const ULONG IDX_SESS_AUTOCOMMITISOLEVELS =IDX_ISTREAM+1;
|
|
const ULONG IDX_TBL_TEMPTABLE =IDX_SESS_AUTOCOMMITISOLEVELS+1;
|
|
const ULONG IDX_TRUSTEE_USERNAME =IDX_TBL_TEMPTABLE+1;
|
|
const ULONG IDX_TRUSTEE_AUTHENTICATION =IDX_TRUSTEE_USERNAME+1;
|
|
const ULONG IDX_TRUSTEE_NEWAUTHENTICATION =IDX_TRUSTEE_AUTHENTICATION+1;
|
|
const ULONG IDX_FILTERCOMPAREOPS =IDX_TRUSTEE_NEWAUTHENTICATION+1;
|
|
const ULONG IDX_VIACCESSOR =IDX_FILTERCOMPAREOPS+1;
|
|
const ULONG IDX_VICOLUMNSINFO =IDX_VIACCESSOR+1;
|
|
const ULONG IDX_VISUPPORTERRORINFO =IDX_VICOLUMNSINFO+1;
|
|
const ULONG IDX_IVIEWCHAPTER =IDX_VISUPPORTERRORINFO+1;
|
|
const ULONG IDX_IVIEWFILTER =IDX_IVIEWCHAPTER+1;
|
|
const ULONG IDX_IVIEWROWSET =IDX_IVIEWFILTER+1;
|
|
const ULONG IDX_IVIEWSORT =IDX_IVIEWROWSET+1;
|
|
const ULONG IDX_MAXORSINFILTER =IDX_IVIEWSORT+1;
|
|
const ULONG IDX_MAXSORTCOLUMNS =IDX_MAXORSINFILTER+1;
|
|
const ULONG IDX_SORTONINDEX =IDX_MAXSORTCOLUMNS+1;
|
|
|
|
// Provider Specific
|
|
// NONE
|
|
|
|
const ULONG IDX_COLUMN_START =IDX_COL_AUTOINCREMENT;
|
|
const ULONG IDX_COLUMN_END =IDX_COLUMNLCID;
|
|
|
|
const ULONG IDX_DATASOURCE_START =IDX_CURRENTCATALOG;
|
|
const ULONG IDX_DATASOURCE_END =IDX_RESETDATASOURCE;
|
|
|
|
const ULONG IDX_DATASOURCEINFO_START =IDX_ACTIVESESSIONS;
|
|
const ULONG IDX_DATASOURCEINFO_END =IDX_USERNAME;
|
|
|
|
const ULONG IDX_INDEX_START =IDX_INDEX_AUTOUPDATE;
|
|
const ULONG IDX_INDEX_END =IDX_INDEX_UNIQUE;
|
|
|
|
const ULONG IDX_DBINIT_START =IDX_AUTH_CACHE_AUTHINFO;
|
|
const ULONG IDX_DBINIT_END =IDX_INIT_TIMEOUT;
|
|
|
|
const ULONG IDX_ROWSET_START =IDX_ABORTPRESERVE;
|
|
const ULONG IDX_ROWSET_END =IDX_ISTREAM;
|
|
|
|
const ULONG IDX_SESSION_START =IDX_SESS_AUTOCOMMITISOLEVELS;
|
|
const ULONG IDX_SESSION_END =IDX_SESS_AUTOCOMMITISOLEVELS;
|
|
|
|
const ULONG IDX_TABLE_START =IDX_TBL_TEMPTABLE;
|
|
const ULONG IDX_TABLE_END =IDX_TBL_TEMPTABLE;
|
|
|
|
const ULONG IDX_TRUSTEE_START =IDX_TRUSTEE_USERNAME;
|
|
const ULONG IDX_TRUSTEE_END =IDX_TRUSTEE_NEWAUTHENTICATION;
|
|
|
|
const ULONG IDX_VIEW_START =IDX_FILTERCOMPAREOPS;
|
|
const ULONG IDX_VIEW_END =IDX_SORTONINDEX;
|
|
|
|
const ULONG IDX_OLEDB_START =IDX_COLUMN_START;
|
|
const ULONG IDX_OLEDB_END =IDX_VIEW_END;
|
|
|
|
const ULONG IDX_PROVIDERSPEC_END =IDX_VIEW_END;
|
|
|
|
//--------------------------------------------------------------------
|
|
// @func Module level initialization routine
|
|
//
|
|
// @rdesc Success or Failure
|
|
// @flag TRUE | Successful initialization
|
|
// @flag FALSE | Initialization problems
|
|
//
|
|
BOOL ModuleInit(CThisTestModule * pThisTestModule)
|
|
{
|
|
// Initialize the Globals every time
|
|
g_fInitGetPropDefault=g_fExtraSesProp=FALSE;
|
|
|
|
// Set all of the fSupported back to FALSE
|
|
for(ULONG i=0; i<g_cDBProperties; i++)
|
|
g_rgDBProperties[i].fSupported = FALSE;
|
|
|
|
//Get a Session Object
|
|
if(ModuleCreateDBSession(pThisTestModule))
|
|
{
|
|
//If we made it this far, everything has succeeded
|
|
return TRUE;
|
|
}
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
//--------------------------------------------------------------------
|
|
// @func Module level termination routine
|
|
//
|
|
// @rdesc Success or Failure
|
|
// @flag TRUE | Successful initialization
|
|
// @flag FALSE | Initialization problems
|
|
//
|
|
BOOL ModuleTerminate(CThisTestModule * pThisTestModule)
|
|
{
|
|
ULONG ulcounter=0;
|
|
|
|
//Need to loop through all the variants and clear them
|
|
for(ulcounter=0; ulcounter < g_cDBProperties; ulcounter++)
|
|
VariantClear(&(g_rgDBProperties[ulcounter].vDefault));
|
|
|
|
//Free the interface we got in ModuleCreateDBSession()
|
|
return ModuleReleaseDBSession(pThisTestModule);
|
|
}
|
|
|
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
// Base Class Section
|
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
// @class TCIDProperties Base Class for all ISessionProperties Testcases
|
|
class TCIDProperties : public CRowsetObject
|
|
{
|
|
public:
|
|
// @cmember Constructor
|
|
TCIDProperties(WCHAR *wstrTestCaseName) : CRowsetObject(wstrTestCaseName)
|
|
{
|
|
m_pIDBProperties = NULL;
|
|
m_pISessionProperties = NULL;
|
|
m_cPropertyIDSets = 0;
|
|
*m_rgPropertyIDs = NULL;
|
|
m_cPropertySets = 0;
|
|
m_pcPropertySets = 0;
|
|
m_prgPropertySets = NULL;
|
|
m_fSuccess = TEST_FAIL;
|
|
};
|
|
|
|
// @cmember Destructor
|
|
virtual ~TCIDProperties(){};
|
|
|
|
// @cmember: Check and set properties from ISessionProperties::GetProperties
|
|
BOOL InitGetPropDefault();
|
|
// @cmember: Get a Session property that is not settable
|
|
BOOL DBSessionNotSettable(DBPROPID *dwPropertyID);
|
|
// @cmember: Get a Session property that is settable
|
|
BOOL DBSessionSettable(DBPROPID *dwPropertyID);
|
|
// @cmember: Get a Session property that is not supported
|
|
BOOL DBSessionNotSupported(DBPROPID *dwPropertyID);
|
|
// @cmember: Get a DBInit property that is not supported
|
|
BOOL DBInitNotSupported(DBPROPID *dwPropertyID);
|
|
// @mfunc: Reset the ISessionProperties
|
|
BOOL ResetProperties();
|
|
// @mfunc: Verify the property is set or unset correctly
|
|
BOOL VerifyProperty(ULONG cPrpt);
|
|
// @mfunc: Get the attribute of the property
|
|
EPROPERTYATTR GetPrptAttr(const ULONG cPrpt);
|
|
// @mfunc: Verify the property is not supported
|
|
BOOL VerifyNotSupported(ULONG cPrpt, EPROPERTYATTR ePrptAttr);
|
|
// @mfunc: Verify the property is not settable
|
|
BOOL VerifyPropertyNotSettable(ULONG cPrpt, BOOL fSet=TRUE);
|
|
// @mfunc: Verify the property is settable
|
|
BOOL VerifyPropertySettable(ULONG cPrpt, BOOL fSet=TRUE);
|
|
// @mfunc: Initialize the property set
|
|
BOOL InitDBPropSet(const ULONG cPrpt, DBPROPSET *pDBPropSet, BOOL fSet);
|
|
// @mfunc: Verify the property set return is correct
|
|
BOOL VerifyDBPropSet(const ULONG cPrpt, DBPROPSET *pDBPropSet,
|
|
DBPROPSTATUS dwStatus, DBPROPOPTIONS dwOptions, BOOL fSet);
|
|
// @mfunc: Initialize the property ID set
|
|
BOOL InitDBPropIDSet(const ULONG cPrpt, DBPROPIDSET *pDBPropIDSet);
|
|
// @mfunc: Verify that get property returns the corret information
|
|
BOOL VerifyDBPropGet(const ULONG cPrpt, DBPROPSET *pDBPropSet, DBPROPSTATUS dwStatus, BOOL fSet);
|
|
// @mfunc: Verify default values returned from properties
|
|
BOOL VerifyDBPropDefault(ULONG cPrpt, DBPROPSET *pDBPropSet, BOOL fAfterRowset);
|
|
// @mfunc: Check to see if the Property is Writable
|
|
void WritableProperty(ULONG cPrpt);
|
|
|
|
protected:
|
|
//@cmember IDBProperties Interface
|
|
IDBProperties * m_pIDBProperties;
|
|
//@cmember IDBCreateCommand Interface
|
|
ISessionProperties *m_pISessionProperties;
|
|
//@cmember Number of PropertyIDSets
|
|
ULONG m_cPropertyIDSets;
|
|
//@cmember Array of DBPROPIDSET structures
|
|
DBPROPIDSET m_rgPropertyIDSets[5];
|
|
//@cmember Array of DBPROPIDs
|
|
DBPROPID m_rgPropertyIDs[5];
|
|
//@cmember Number of PropertyIDSets
|
|
ULONG m_cPropertySets;
|
|
//@cmember Array of DBPROPSET structures
|
|
DBPROPSET m_rgPropertySets[5];
|
|
//@cmember Number of DBPROPSET structures returned from GetProperties
|
|
ULONG m_pcPropertySets;
|
|
//@cmember Array of DBPROPSET structures returned from GetProperties
|
|
DBPROPSET * m_prgPropertySets;
|
|
//@cmember Array of DBPROP for SetProperties
|
|
DBPROP m_rgProperties[2];
|
|
//@cmember Variation passed or failed
|
|
int m_fSuccess;
|
|
//@cmember HResult
|
|
HRESULT m_hr;
|
|
};
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//@mfunc: Intialize the default values for all Session properties
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
BOOL TCIDProperties::InitGetPropDefault()
|
|
{
|
|
TBEGIN;
|
|
|
|
ULONG cSetCount;
|
|
ULONG cPropertyCount;
|
|
ULONG cIndex;
|
|
ULONG cPropertySets=0;
|
|
|
|
ULONG cPrptSupported = 0;
|
|
DBPROPSET *pPropertySets = NULL;
|
|
|
|
//Call ISessionProperties::GetProperties to get all the properties
|
|
TESTC_(m_pISessionProperties->GetProperties(0,NULL,&cPropertySets,&pPropertySets),S_OK);
|
|
|
|
//At least one property set should be returned
|
|
if( !cPropertySets ) {
|
|
TESTC(pPropertySets == NULL);
|
|
}
|
|
else {
|
|
TESTC(pPropertySets != NULL);
|
|
}
|
|
|
|
//Set the default value for each property set
|
|
for(cSetCount=0;cSetCount < cPropertySets; cSetCount++)
|
|
{
|
|
// Atleast 1 property must be returned
|
|
TESTC(pPropertySets[cSetCount].cProperties > 0);
|
|
|
|
// Total up all the properties
|
|
cPrptSupported = cPrptSupported + pPropertySets[cSetCount].cProperties;
|
|
|
|
//Go through each property
|
|
for(cPropertyCount=0; cPropertyCount < pPropertySets[cSetCount].cProperties; cPropertyCount++)
|
|
{
|
|
//Check to see if the Provider has returned an invalid PropSets
|
|
if( (pPropertySets[cSetCount].guidPropertySet == DBPROPSET_COLUMN) ||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_DATASOURCE) ||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_DATASOURCEINFO)||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_DBINIT) ||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_INDEX) ||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_ROWSET) ||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_TABLE) ||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_TRUSTEE)||
|
|
(pPropertySets[cSetCount].guidPropertySet == DBPROPSET_VIEW) )
|
|
odtLog<<L"ERROR: An Invalid OLEDB PropertySet has been returned by ISessionProperties::GetProperties!\n";
|
|
|
|
//Check to see if the Provider has Provider specific PropSets
|
|
if( pPropertySets[cSetCount].guidPropertySet != DBPROPSET_SESSION )
|
|
g_fExtraSesProp=TRUE;
|
|
|
|
//Go through the whole list
|
|
for(cIndex=IDX_OLEDB_START;
|
|
cIndex<=(g_fExtraSesProp ? IDX_PROVIDERSPEC_END : IDX_OLEDB_END);cIndex++)
|
|
{
|
|
//Search for the properties
|
|
if((g_rgDBProperties[cIndex].dwPropertyID ==
|
|
pPropertySets[cSetCount].rgProperties[cPropertyCount].dwPropertyID) &&
|
|
(*(g_rgDBProperties[cIndex].pGuidPropertySet) ==
|
|
pPropertySets[cSetCount].guidPropertySet))
|
|
{
|
|
//Print the value to the screen
|
|
odtLog<<" "<<g_rgDBProperties[cIndex].wszDescription<<" = ";
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt)
|
|
odtLog<<pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue<<L" \n";
|
|
else
|
|
odtLog<<L"VT_EMPTY \n";
|
|
|
|
//Set the property to supported
|
|
g_rgDBProperties[cIndex].fSupported=TRUE;
|
|
|
|
//Set the fSettable to TRUE
|
|
WritableProperty(cIndex);
|
|
|
|
//Copy the default
|
|
if( pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt )
|
|
{
|
|
VariantCopy(&(g_rgDBProperties[cIndex].vDefault),
|
|
&(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue));
|
|
}
|
|
|
|
//dwStatus has to be DBPROPSTATUS_OK
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].dwStatus!=
|
|
DBPROPSTATUS_OK)
|
|
odtLog<<L"The dwStatus in default is not DBPROPSTATUS_OK at index "<<cIndex<<"!\n";
|
|
|
|
//Check VT type
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt!=
|
|
g_rgDBProperties[cIndex].vtType)
|
|
{
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt!=
|
|
VT_EMPTY)
|
|
odtLog<<L"The vt in vValue is not correct at index "<<cIndex<<"!\n";
|
|
else
|
|
goto BREAK;
|
|
}
|
|
|
|
//If VT==VT_BOOL, the value has to be either VAIANT_TRUE or VARIANT_FALSE
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt==
|
|
VT_BOOL)
|
|
{
|
|
if((V_BOOL(&pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue)!=VARIANT_TRUE) &&
|
|
(V_BOOL(&pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue)!=VARIANT_FALSE))
|
|
odtLog<<L"The bool is not VARIANT_TRUE or VARIANT_FALSE at index "<<cIndex<<"!\n";
|
|
}
|
|
else
|
|
{
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt==
|
|
VT_EMPTY)
|
|
{
|
|
//The value has to be 0
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.lVal!=0)
|
|
odtLog<<L"The lVal is not 0 at index "<<cIndex<<"!\n";
|
|
}
|
|
else
|
|
{
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt==
|
|
VT_I4)
|
|
{
|
|
//The value has to be greate than 0
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.lVal<0)
|
|
odtLog<<L"The lVal is less than 0 at index "<<cIndex<<"!\n";
|
|
}
|
|
else
|
|
{
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.vt==
|
|
VT_I2)
|
|
{
|
|
//The value has to be greate than 0
|
|
if(pPropertySets[cSetCount].rgProperties[cPropertyCount].vValue.iVal<0)
|
|
odtLog<<L"The lVal is less than 0 at index "<<cIndex<<"!\n";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
BREAK:
|
|
break;
|
|
}
|
|
}
|
|
|
|
// Check the Index count with the total number of properties
|
|
if(cIndex > (g_fExtraSesProp ? IDX_PROVIDERSPEC_END : IDX_OLEDB_END))
|
|
{
|
|
if(g_fExtraSesProp)
|
|
odtLog<<L"This autotest needs to be updated with Provider specific properties!\n";
|
|
else
|
|
odtLog<<L"ERROR: A OLEDB Property has the wrong guidPropertySet!\n";
|
|
}
|
|
}
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
//Print out the total number of Session Properties
|
|
odtLog<<wszTotalGetPropertiesIs<<cPrptSupported<<L" \n";
|
|
|
|
if( g_fExtraSesProp )
|
|
odtLog<<L"The Total includes Provider specific properties"<<L" \n";
|
|
|
|
//Free memory from GetProperties
|
|
FreeProperties(&cPropertySets, &pPropertySets);
|
|
|
|
TRETURN;
|
|
}
|
|
|
|
|
|
//--------------------------------------------------------------------
|
|
//@cmember: Get a settable Session property
|
|
//
|
|
BOOL TCIDProperties::DBSessionSettable(DBPROPID *dwPropertyID)
|
|
{
|
|
ULONG cPrpt;
|
|
|
|
for(cPrpt=IDX_SESSION_START;cPrpt<=IDX_SESSION_END;cPrpt++)
|
|
{
|
|
if(g_rgDBProperties[cPrpt].fSettable && g_rgDBProperties[cPrpt].fSupported)
|
|
{
|
|
*dwPropertyID=g_rgDBProperties[cPrpt].dwPropertyID;
|
|
return TRUE;
|
|
}
|
|
}
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
//--------------------------------------------------------------------
|
|
//@cmember: Get a Session property that is not settable
|
|
//
|
|
BOOL TCIDProperties::DBSessionNotSettable(DBPROPID *dwPropertyID)
|
|
{
|
|
ULONG cPrpt;
|
|
|
|
for(cPrpt=IDX_SESSION_START;cPrpt<=IDX_SESSION_END;cPrpt++)
|
|
{
|
|
if(!(g_rgDBProperties[cPrpt].fSettable) && (g_rgDBProperties[cPrpt].fSupported) )
|
|
{
|
|
*dwPropertyID=g_rgDBProperties[cPrpt].dwPropertyID;
|
|
return TRUE;
|
|
}
|
|
}
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
//--------------------------------------------------------------------
|
|
//@cmember: Get a not supported Session property
|
|
//
|
|
BOOL TCIDProperties::DBSessionNotSupported(DBPROPID *dwPropertyID)
|
|
{
|
|
ULONG cPrpt;
|
|
|
|
for(cPrpt=IDX_SESSION_START;cPrpt<=IDX_SESSION_END;cPrpt++)
|
|
{
|
|
if(!(g_rgDBProperties[cPrpt].fSupported))
|
|
{
|
|
*dwPropertyID=g_rgDBProperties[cPrpt].dwPropertyID;
|
|
return TRUE;
|
|
}
|
|
}
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
//--------------------------------------------------------------------
|
|
//@cmember: Get a not supported DBInit property
|
|
//
|
|
BOOL TCIDProperties::DBInitNotSupported(DBPROPID *dwPropertyID)
|
|
{
|
|
ULONG cPrpt;
|
|
|
|
for(cPrpt=IDX_DBINIT_START;cPrpt<=IDX_DBINIT_END;cPrpt++)
|
|
{
|
|
if(!(g_rgDBProperties[cPrpt].fSupported))
|
|
{
|
|
*dwPropertyID=g_rgDBProperties[cPrpt].dwPropertyID;
|
|
return TRUE;
|
|
}
|
|
}
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// @cmember Recreate a new Session object, start from scratch
|
|
//
|
|
BOOL TCIDProperties::ResetProperties()
|
|
{
|
|
// Reset to the defaults for GetProperties
|
|
m_rgPropertyIDs[0] = DBPROP_SESS_AUTOCOMMITISOLEVELS;
|
|
m_rgPropertyIDs[1] = DBPROP_SESS_AUTOCOMMITISOLEVELS;
|
|
m_rgPropertyIDs[2] = DBPROP_SESS_AUTOCOMMITISOLEVELS;
|
|
m_rgPropertyIDs[3] = DBPROP_SESS_AUTOCOMMITISOLEVELS;
|
|
m_rgPropertyIDs[4] = DBPROP_SESS_AUTOCOMMITISOLEVELS;
|
|
|
|
m_cPropertyIDSets = 1;
|
|
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 1;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = &m_rgPropertyIDs[0];
|
|
m_rgPropertyIDSets[0].guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
m_rgPropertyIDSets[1].cPropertyIDs = 1;
|
|
m_rgPropertyIDSets[1].rgPropertyIDs = &m_rgPropertyIDs[1];
|
|
m_rgPropertyIDSets[1].guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
m_prgPropertySets = INVALID(DBPROPSET*);
|
|
m_pcPropertySets = INVALID(ULONG);
|
|
|
|
// Reset to the defaults for SetProperties
|
|
m_rgProperties[0].dwPropertyID = DBPROP_SESS_AUTOCOMMITISOLEVELS;
|
|
m_rgProperties[1].dwPropertyID = DBPROP_SESS_AUTOCOMMITISOLEVELS;
|
|
|
|
m_rgPropertySets[0].cProperties = 1;
|
|
m_rgPropertySets[0].rgProperties = &m_rgProperties[0];
|
|
m_rgPropertySets[0].guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
m_rgPropertySets[0].rgProperties->dwOptions = DBPROPOPTIONS_REQUIRED;
|
|
m_rgPropertySets[0].rgProperties->colid = DB_NULLID;
|
|
m_rgPropertySets[0].rgProperties->vValue.vt = VT_EMPTY;
|
|
|
|
m_rgPropertySets[1].cProperties = 1;
|
|
m_rgPropertySets[1].rgProperties = &m_rgProperties[1];
|
|
m_rgPropertySets[1].guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
m_rgPropertySets[1].rgProperties->dwOptions = DBPROPOPTIONS_REQUIRED;
|
|
m_rgPropertySets[1].rgProperties->colid = DB_NULLID;
|
|
m_rgPropertySets[1].rgProperties->vValue.vt = VT_EMPTY;
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
// @cmember Verify the attribute of the property
|
|
//
|
|
BOOL TCIDProperties::VerifyProperty
|
|
( ULONG cPrpt //@[in] The index to g_rgDBProperties array
|
|
)
|
|
{
|
|
// Set the WRITABLE flag
|
|
WritableProperty(cPrpt);
|
|
|
|
// Check the property
|
|
switch (GetPrptAttr(cPrpt))
|
|
{
|
|
case PROPERTY_NOT_SUPPORTED:
|
|
return(VerifyNotSupported(cPrpt,PROPERTY_NOT_SUPPORTED));
|
|
|
|
case PROPERTY_NOT_SETTABLE:
|
|
BOOL fReturn;
|
|
if(fReturn=VerifyPropertyNotSettable(cPrpt,TRUE))
|
|
fReturn=VerifyPropertyNotSettable(cPrpt,FALSE);
|
|
return fReturn;
|
|
|
|
case PROPERTY_SETTABLE:
|
|
return(VerifyPropertySettable(cPrpt,TRUE));
|
|
|
|
case PROPERTY_INVALID:
|
|
odtLog<<wszIndexNotValid;
|
|
default:
|
|
return FALSE;
|
|
}
|
|
}
|
|
|
|
|
|
//--------------------------------------------------------------------
|
|
//@mfunc: Get the attribute of the property
|
|
//
|
|
EPROPERTYATTR TCIDProperties::GetPrptAttr(const ULONG cPrpt)
|
|
{
|
|
if(cPrpt >= g_cDBProperties)
|
|
return PROPERTY_INVALID;
|
|
|
|
//Check if the property is supported
|
|
if(!g_rgDBProperties[cPrpt].fSupported)
|
|
return PROPERTY_NOT_SUPPORTED;
|
|
|
|
//Check if the property is settable.
|
|
if(g_rgDBProperties[cPrpt].fSettable)
|
|
return PROPERTY_SETTABLE;
|
|
|
|
return (PROPERTY_NOT_SETTABLE);
|
|
}
|
|
|
|
|
|
//------------------------------------------------------------------------------------
|
|
// @cmember: Verify the property is not supported
|
|
//
|
|
BOOL TCIDProperties::VerifyNotSupported
|
|
( ULONG cPrpt, //@[in]: The index to g_rgDBProperties array
|
|
EPROPERTYATTR ePrptAttr //@[in]: PROPERTY_NOT_SUPPORTED
|
|
)
|
|
{
|
|
TBEGIN;
|
|
|
|
DBPROPIDSET DBPropIDSet;
|
|
DBPROPSET DBPropSet;
|
|
DBPROPID DBPropID;
|
|
DBPROP DBProp;
|
|
|
|
DBPROPSET *pDBPropSet = NULL;
|
|
ULONG cDBPrpt = 0;
|
|
|
|
//Make sure the property is not supported
|
|
TESTC(ePrptAttr == PROPERTY_NOT_SUPPORTED);
|
|
|
|
//Start from scratch
|
|
memset(&DBProp ,0,sizeof(DBPROP));
|
|
|
|
//Init
|
|
DBPropIDSet.rgPropertyIDs = &DBPropID;
|
|
DBPropSet.rgProperties = &DBProp;
|
|
|
|
//Try to unset the property
|
|
TESTC(InitDBPropSet(cPrpt,&DBPropSet,FALSE));
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet), DB_E_ERRORSOCCURRED);
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_NOTSUPPORTED,DBPROPOPTIONS_REQUIRED,FALSE));
|
|
|
|
//Try to set the property
|
|
TESTC(InitDBPropSet(cPrpt,&DBPropSet,TRUE));
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet), DB_E_ERRORSOCCURRED);
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_NOTSUPPORTED,DBPROPOPTIONS_REQUIRED,TRUE));
|
|
|
|
//Set the property with dwOptions = DBPROPOPTIONS_OPTIONAL
|
|
TESTC(InitDBPropSet(cPrpt,&DBPropSet,3));
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet),DB_E_ERRORSOCCURRED);
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_NOTSUPPORTED,DBPROPOPTIONS_OPTIONAL,3));
|
|
|
|
//Free the BSTR allocated
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
//Verify that the property is not supported by calling GetProperties
|
|
TESTC(InitDBPropIDSet(cPrpt,&DBPropIDSet));
|
|
TESTC_(m_pISessionProperties->GetProperties(1,&DBPropIDSet,&cDBPrpt,&pDBPropSet), DB_E_ERRORSOCCURRED);
|
|
TESTC(VerifyDBPropGet(cPrpt,pDBPropSet,DBPROPSTATUS_NOTSUPPORTED,TRUE));
|
|
|
|
CLEANUP:
|
|
|
|
//Free memory from GetProperties
|
|
FreeProperties(&cDBPrpt, &pDBPropSet);
|
|
|
|
TRETURN;
|
|
}
|
|
|
|
|
|
//-------------------------------------------------------------------------------------
|
|
// @cmember: Verify the property is not settable
|
|
//
|
|
BOOL TCIDProperties::VerifyPropertyNotSettable
|
|
( ULONG cPrpt, //@[in]: The index to g_rgDBProperties array
|
|
BOOL fSet //@[in]: To set or unset the property
|
|
)
|
|
{
|
|
TBEGIN;
|
|
|
|
DBPROPIDSET DBPropIDSet;
|
|
DBPROPID DBPropID;
|
|
DBPROPSET DBPropSet;
|
|
DBPROP DBProp;
|
|
HRESULT Exphr = S_OK;
|
|
DBSTATUS ExpStatus = DBPROPSTATUS_OK;
|
|
|
|
ULONG cDBPrpt = 0;
|
|
DBPROPSET *pDBPropSet = NULL;
|
|
|
|
//Start from scratch
|
|
memset(&DBProp ,0,sizeof(DBPROP));
|
|
|
|
//Initialization
|
|
DBPropIDSet.rgPropertyIDs = &DBPropID;
|
|
DBPropSet.rgProperties = &DBProp;
|
|
|
|
//Verify the property before execution by calling GetProperties.
|
|
TESTC(InitDBPropIDSet(cPrpt,&DBPropIDSet));
|
|
TESTC_(m_pISessionProperties->GetProperties(1,&DBPropIDSet,&cDBPrpt,&pDBPropSet), S_OK);
|
|
TESTC(cDBPrpt == 1);
|
|
TESTC(pDBPropSet != NULL);
|
|
TESTC(VerifyDBPropDefault(cPrpt,pDBPropSet,FALSE));
|
|
|
|
//Setup the expected results
|
|
if( fSet ) {
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
ExpStatus = DBPROPSTATUS_NOTSETTABLE;
|
|
}
|
|
|
|
//Initialization to set/unset the property
|
|
TESTC(InitDBPropSet(cPrpt,&DBPropSet,fSet));
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet), Exphr);
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,ExpStatus,DBPROPOPTIONS_REQUIRED,fSet));
|
|
|
|
//Free memory from GetProperties
|
|
FreeProperties(&cDBPrpt, &pDBPropSet);
|
|
|
|
//Verify the property before execution by calling GetProperties.
|
|
TESTC(InitDBPropIDSet(cPrpt,&DBPropIDSet));
|
|
TESTC_(m_pISessionProperties->GetProperties(1,&DBPropIDSet,&cDBPrpt,&pDBPropSet), S_OK);
|
|
TESTC(cDBPrpt == 1);
|
|
TESTC(pDBPropSet != NULL);
|
|
TESTC(VerifyDBPropDefault(cPrpt,pDBPropSet,FALSE));
|
|
|
|
//Set the property with dwOptions = DBPROPOPTIONS_OPTIONAL
|
|
TESTC(InitDBPropSet(cPrpt,&DBPropSet,3));
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet),DB_E_ERRORSOCCURRED);
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_NOTSET,DBPROPOPTIONS_OPTIONAL,3));
|
|
|
|
//Test for bad VT_TYPE for the Property
|
|
if( V_VT(&DBPropSet.rgProperties->vValue) == VT_I4 )
|
|
DBPropSet.rgProperties->vValue.vt = VT_BOOL;
|
|
else
|
|
DBPropSet.rgProperties->vValue.vt = VT_I4;
|
|
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet),DB_E_ERRORSOCCURRED);
|
|
if( DBProp.dwStatus == DBPROPSTATUS_BADVALUE ) {
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_BADVALUE,DBPROPOPTIONS_OPTIONAL,fSet));
|
|
}
|
|
else {
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_NOTSET,DBPROPOPTIONS_OPTIONAL,fSet));
|
|
}
|
|
|
|
//Set back to original VT_TYPE
|
|
V_VT(&DBPropSet.rgProperties->vValue) = g_rgDBProperties[cPrpt].vtType;
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
//Initialization to set/unset the property
|
|
TESTC(InitDBPropSet(cPrpt,&DBPropSet,fSet));
|
|
|
|
//Test for bad Value for the Property
|
|
switch( g_rgDBProperties[cPrpt].vtType )
|
|
{
|
|
case VT_BOOL:
|
|
V_BOOL(&DBPropSet.rgProperties->vValue) = -3;
|
|
break;
|
|
|
|
case VT_I2:
|
|
V_I2(&DBPropSet.rgProperties->vValue) = -3;
|
|
break;
|
|
|
|
case VT_I4:
|
|
V_I4(&DBPropSet.rgProperties->vValue) = -3;
|
|
break;
|
|
|
|
default:
|
|
break;
|
|
}
|
|
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet),DB_E_ERRORSOCCURRED);
|
|
if( DBProp.dwStatus == DBPROPSTATUS_BADVALUE ) {
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_BADVALUE,DBPROPOPTIONS_REQUIRED,fSet));
|
|
}
|
|
else {
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_NOTSETTABLE,DBPROPOPTIONS_REQUIRED,fSet));
|
|
}
|
|
|
|
//Initialization to set/unset the property
|
|
TESTC(InitDBPropSet(cPrpt,&DBPropSet,fSet));
|
|
DBPropSet.rgProperties->dwOptions = 99;
|
|
TESTC_(m_pISessionProperties->SetProperties(1,&DBPropSet), DB_E_ERRORSOCCURRED);
|
|
TESTC(VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_BADOPTION,99,fSet));
|
|
|
|
CLEANUP:
|
|
|
|
//Free memory from GetProperties
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
FreeProperties(&cDBPrpt, &pDBPropSet);
|
|
|
|
TRETURN;
|
|
}
|
|
|
|
|
|
//-------------------------------------------------------------------------------------
|
|
// @cmember: Verify the property is settable
|
|
//
|
|
BOOL TCIDProperties::VerifyPropertySettable
|
|
( ULONG cPrpt, //@[in]: The index to g_rgDBProperties array
|
|
BOOL fSet //@[in]: To set or unset property
|
|
)
|
|
{
|
|
DBPROPIDSET DBPropIDSet;
|
|
DBPROPID DBPropID;
|
|
DBPROPSET DBPropSet;
|
|
DBPROP DBProp;
|
|
DBPROPSET *pDBPropSet=NULL;
|
|
ULONG cDBPrpt=0;
|
|
BOOL fPass=FALSE;
|
|
VARTYPE vt;
|
|
HRESULT Exphr = S_OK;
|
|
DBSTATUS ExpStatus = DBPROPSTATUS_OK;
|
|
ULONG_PTR ulIsoLevels = 0;
|
|
BOOL fSetWorked = TRUE;
|
|
|
|
//Need to be initialized before calling VariantCopy function
|
|
memset(&DBProp ,0,sizeof(DBPROP));
|
|
|
|
//Start from scratch
|
|
if(!ResetProperties())
|
|
return FALSE;
|
|
|
|
//Initialization
|
|
DBPropIDSet.rgPropertyIDs=&DBPropID;
|
|
DBPropSet.rgProperties=&DBProp;
|
|
DBPropSet.rgProperties->colid.uName.pwszName=NULL;
|
|
|
|
//Set the property to the default value using VT_EMPTY
|
|
if(!InitDBPropSet(cPrpt,&DBPropSet,2))
|
|
goto END;
|
|
|
|
//Set the properties
|
|
if(!CHECK(m_pISessionProperties->SetProperties(1,&DBPropSet),S_OK))
|
|
goto END;
|
|
|
|
//Check the Status
|
|
if(!COMPARE(DBProp.dwStatus,DBPROPSTATUS_OK))
|
|
goto END;
|
|
|
|
//Get the property and check the default values
|
|
if(!InitDBPropIDSet(cPrpt,&DBPropIDSet))
|
|
goto END;
|
|
|
|
if(!CHECK(m_pISessionProperties->GetProperties(1,&DBPropIDSet,
|
|
&cDBPrpt,&pDBPropSet),S_OK))
|
|
goto END;
|
|
|
|
//Verify the result against its default values
|
|
if(!VerifyDBPropDefault(cPrpt,pDBPropSet,FALSE))
|
|
goto END;
|
|
|
|
//Free memory from GetProperties
|
|
FreeProperties(&cDBPrpt, &pDBPropSet);
|
|
|
|
//Set the property with dwOptions = DBPROPOPTIONS_OPTIONAL
|
|
if(!InitDBPropSet(cPrpt,&DBPropSet,3))
|
|
goto END;
|
|
|
|
//Set the properties
|
|
m_hr = m_pISessionProperties->SetProperties(1,&DBPropSet);
|
|
|
|
//As long as we get back S_OK with status = OK or
|
|
if(m_hr==ResultFromScode(S_OK))
|
|
{
|
|
if(!COMPARE(DBProp.dwStatus,DBPROPSTATUS_OK))
|
|
goto END;
|
|
}
|
|
else
|
|
{
|
|
//DB_E_ERRORSOCCURRED with BADVALUE it succeeded.
|
|
//Session property validation is not deferred
|
|
if(m_hr==ResultFromScode(DB_E_ERRORSOCCURRED))
|
|
{
|
|
if(!COMPARE(DBProp.dwStatus,DBPROPSTATUS_BADVALUE))
|
|
goto END;
|
|
}
|
|
else
|
|
goto END;
|
|
}
|
|
|
|
//Verify the result. Status was already verified and
|
|
//fSet=3 that which is the same as fSet=TRUE
|
|
if(!VerifyDBPropSet(cPrpt,&DBPropSet,DBProp.dwStatus,DBPROPOPTIONS_OPTIONAL,3))
|
|
goto END;
|
|
|
|
//Free memory from SetProperties
|
|
if ((DBPropSet.rgProperties->vValue.vt == VT_BSTR) &&
|
|
(DBPropSet.rgProperties->vValue.bstrVal))
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
//Try to set the property
|
|
if(!InitDBPropSet(cPrpt,&DBPropSet,TRUE))
|
|
goto END;
|
|
|
|
//Set the properties
|
|
m_hr = m_pISessionProperties->SetProperties(1,&DBPropSet);
|
|
|
|
//As long as we get back S_OK with status = OK or
|
|
if(m_hr==ResultFromScode(S_OK))
|
|
{
|
|
if(!COMPARE(DBProp.dwStatus,DBPROPSTATUS_OK))
|
|
goto END;
|
|
}
|
|
else
|
|
{
|
|
//DB_E_ERRORSOCCURRED with BADVALUE it succeeded.
|
|
if(m_hr==ResultFromScode(DB_E_ERRORSOCCURRED))
|
|
{
|
|
if(!COMPARE(DBProp.dwStatus,DBPROPSTATUS_BADVALUE))
|
|
goto END;
|
|
}
|
|
else
|
|
goto END;
|
|
}
|
|
|
|
//Verify the result
|
|
if(!VerifyDBPropSet(cPrpt,&DBPropSet,DBProp.dwStatus,DBPROPOPTIONS_REQUIRED,TRUE))
|
|
goto END;
|
|
|
|
//Try to set/unset the property
|
|
//Initialization
|
|
if(!fSet)
|
|
{
|
|
//Free memory from SetProperties
|
|
if ((DBPropSet.rgProperties->vValue.vt == VT_BSTR) &&
|
|
(DBPropSet.rgProperties->vValue.bstrVal))
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
if(!InitDBPropSet(cPrpt,&DBPropSet,FALSE))
|
|
goto END;
|
|
}
|
|
|
|
//Check to see if the IsoLevel is supported
|
|
GetProperty(DBPROP_SUPPORTEDTXNISOLEVELS, DBPROPSET_DATASOURCEINFO, m_pIDBProperties, &ulIsoLevels);
|
|
if( !(DBPropSet.rgProperties->vValue.lVal & ulIsoLevels) )
|
|
{
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
ExpStatus = DBPROPSTATUS_BADVALUE;
|
|
fSetWorked = FALSE;
|
|
}
|
|
|
|
if(!CHECK(m_pISessionProperties->SetProperties(1,&DBPropSet),Exphr))
|
|
goto END;
|
|
|
|
//Verify the result
|
|
if(!VerifyDBPropSet(cPrpt,&DBPropSet,ExpStatus,DBPROPOPTIONS_REQUIRED,fSet))
|
|
goto END;
|
|
|
|
//Free memory from SetProperties
|
|
if ((DBPropSet.rgProperties->vValue.vt == VT_BSTR) &&
|
|
(DBPropSet.rgProperties->vValue.bstrVal))
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
//Verify that the property is set/unset by calling GetProperties
|
|
//Init DBPROPID
|
|
if(!InitDBPropIDSet(cPrpt,&DBPropIDSet))
|
|
goto END;
|
|
|
|
if(!CHECK(m_pISessionProperties->GetProperties(1,&DBPropIDSet,
|
|
&cDBPrpt,&pDBPropSet),S_OK))
|
|
goto END;
|
|
|
|
//Make sure GetProperties returns the same value as SetPropeties.
|
|
if(!VerifyDBPropGet(cPrpt,pDBPropSet,DBPROPSTATUS_OK,fSetWorked))
|
|
goto END;
|
|
|
|
//Free memory from GetProperties
|
|
FreeProperties(&cDBPrpt, &pDBPropSet);
|
|
|
|
//Try to set the property
|
|
if(!InitDBPropSet(cPrpt,&DBPropSet,TRUE))
|
|
goto END;
|
|
|
|
//Save the VT_TYPE
|
|
vt = DBPropSet.rgProperties->vValue.vt;
|
|
|
|
//Test for bad VT_TYPE for the Property
|
|
if (g_rgDBProperties[cPrpt].vtType == VT_I4)
|
|
DBPropSet.rgProperties->vValue.vt = VT_BOOL;
|
|
else
|
|
DBPropSet.rgProperties->vValue.vt = VT_I4;
|
|
|
|
if(!CHECK(m_pISessionProperties->SetProperties(1,&DBPropSet),DB_E_ERRORSOCCURRED))
|
|
goto END;
|
|
|
|
//Verify the result
|
|
if(!VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_BADVALUE,DBPROPOPTIONS_REQUIRED,fSet))
|
|
goto END;
|
|
|
|
//Set back to original VT_TYPE
|
|
DBPropSet.rgProperties->vValue.vt = vt;
|
|
|
|
//Free memory from SetProperties
|
|
if( DBPropSet.rgProperties->vValue.vt == VT_BSTR )
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
//Try to set the property
|
|
if(!InitDBPropSet(cPrpt,&DBPropSet,TRUE))
|
|
goto END;
|
|
|
|
//Test for bad Value for the Property
|
|
if (g_rgDBProperties[cPrpt].vtType == VT_I2)
|
|
V_I2(&DBPropSet.rgProperties->vValue) = -3;
|
|
else if (g_rgDBProperties[cPrpt].vtType == VT_I4)
|
|
V_I4(&DBPropSet.rgProperties->vValue) = -3;
|
|
else if (g_rgDBProperties[cPrpt].vtType == VT_BOOL)
|
|
V_BOOL(&DBPropSet.rgProperties->vValue) = -3;
|
|
|
|
//Any BSTR can have any value
|
|
if( g_rgDBProperties[cPrpt].vtType == VT_BSTR )
|
|
goto SKIP;
|
|
|
|
if(!CHECK(m_pISessionProperties->SetProperties(1,&DBPropSet),DB_E_ERRORSOCCURRED))
|
|
goto END;
|
|
|
|
//Verify the result
|
|
if(!VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_BADVALUE,DBPROPOPTIONS_REQUIRED,fSet))
|
|
goto END;
|
|
|
|
SKIP:
|
|
//Free memory from SetProperties
|
|
if ((DBPropSet.rgProperties->vValue.vt == VT_BSTR) &&
|
|
(DBPropSet.rgProperties->vValue.bstrVal))
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
//Try to set the property
|
|
if(!InitDBPropSet(cPrpt,&DBPropSet,TRUE))
|
|
goto END;
|
|
|
|
//Test for bad dwOption for the Property
|
|
DBPropSet.rgProperties->dwOptions = 99;
|
|
|
|
if(!CHECK(m_pISessionProperties->SetProperties(1,&DBPropSet),DB_E_ERRORSOCCURRED))
|
|
goto END;
|
|
|
|
//Verify the result
|
|
if(!VerifyDBPropSet(cPrpt,&DBPropSet,DBPROPSTATUS_BADOPTION,99,fSet))
|
|
goto END;
|
|
|
|
//Free memory from SetProperties
|
|
if ((DBPropSet.rgProperties->vValue.vt == VT_BSTR) &&
|
|
(DBPropSet.rgProperties->vValue.bstrVal))
|
|
VariantClear(&DBPropSet.rgProperties->vValue);
|
|
|
|
fPass=TRUE;
|
|
|
|
END:
|
|
//Free memory from GetProperties
|
|
FreeProperties(&cDBPrpt, &pDBPropSet);
|
|
return fPass;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//@mfunc: Set the DBPROPSET
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
BOOL TCIDProperties::InitDBPropSet
|
|
( const ULONG cPrpt,
|
|
DBPROPSET *pDBPropSet,
|
|
BOOL fSet
|
|
)
|
|
{
|
|
if(!(pDBPropSet->rgProperties))
|
|
return FALSE;
|
|
|
|
pDBPropSet->guidPropertySet=*(g_rgDBProperties[cPrpt].pGuidPropertySet);
|
|
pDBPropSet->cProperties=1;
|
|
pDBPropSet->rgProperties->dwStatus=99;
|
|
|
|
//Set dwPropertyID and dwOptions
|
|
pDBPropSet->rgProperties->dwPropertyID=g_rgDBProperties[cPrpt].dwPropertyID;
|
|
if(3 != fSet)
|
|
pDBPropSet->rgProperties->dwOptions=DBPROPOPTIONS_REQUIRED;
|
|
else
|
|
pDBPropSet->rgProperties->dwOptions=DBPROPOPTIONS_OPTIONAL;
|
|
|
|
//Set value
|
|
if((2 == fSet) || (cPrpt != IDX_SESS_AUTOCOMMITISOLEVELS))
|
|
{
|
|
pDBPropSet->rgProperties->vValue.vt=VT_EMPTY;
|
|
}
|
|
else
|
|
{
|
|
//Set the VT_TYPE to I4
|
|
pDBPropSet->rgProperties->vValue.vt = VT_I4;
|
|
|
|
// Set the Non Default value and the Default value
|
|
if ((fSet) && (g_rgDBProperties[cPrpt].vDefault.lVal != DBPROPVAL_TI_READCOMMITTED))
|
|
pDBPropSet->rgProperties->vValue.lVal = DBPROPVAL_TI_READCOMMITTED;
|
|
else if ((fSet) && (g_rgDBProperties[cPrpt].vDefault.lVal == DBPROPVAL_TI_READCOMMITTED))
|
|
pDBPropSet->rgProperties->vValue.lVal = DBPROPVAL_TI_ISOLATED;
|
|
else
|
|
pDBPropSet->rgProperties->vValue.lVal = g_rgDBProperties[cPrpt].vDefault.lVal;
|
|
}
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//@mfunc: Verify the property is set
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
BOOL TCIDProperties::VerifyDBPropSet
|
|
( const ULONG cPrpt,
|
|
DBPROPSET *pDBPropSet,
|
|
DBPROPSTATUS dwStatus,
|
|
DBPROPOPTIONS dwOptions,
|
|
BOOL fSet
|
|
)
|
|
{
|
|
if(!(pDBPropSet->rgProperties))
|
|
return FALSE;
|
|
|
|
//Check guidPropertySet
|
|
if(pDBPropSet->guidPropertySet != *(g_rgDBProperties[cPrpt].pGuidPropertySet))
|
|
return FALSE;
|
|
|
|
//Check cProperties
|
|
if(pDBPropSet->cProperties != 1)
|
|
return FALSE;
|
|
|
|
//Check dwPropertyID
|
|
if(pDBPropSet->rgProperties->dwPropertyID !=
|
|
g_rgDBProperties[cPrpt].dwPropertyID)
|
|
return FALSE;
|
|
|
|
//Check dwStatus
|
|
if(pDBPropSet->rgProperties->dwStatus != dwStatus)
|
|
return FALSE;
|
|
|
|
//Check dwOptions
|
|
if( pDBPropSet->rgProperties->dwOptions != dwOptions )
|
|
return FALSE;
|
|
|
|
//Requesting the value of a property that has not been set and has
|
|
//no default returns VT_EMPTY.
|
|
if ((!g_rgDBProperties[cPrpt].fSupported) ||
|
|
(dwStatus == DBPROPSTATUS_BADVALUE ||
|
|
dwStatus == DBPROPSTATUS_BADOPTION ||
|
|
dwStatus == DBPROPSTATUS_NOTSETTABLE ||
|
|
dwStatus == DBPROPSTATUS_NOTSUPPORTED))
|
|
return TRUE;
|
|
else
|
|
{
|
|
//Check vValue
|
|
if(pDBPropSet->rgProperties->vValue.vt != VT_I4)
|
|
return FALSE;
|
|
|
|
if ((fSet) &&
|
|
(((g_rgDBProperties[cPrpt].vDefault.lVal == DBPROPVAL_TI_READCOMMITTED) &&
|
|
(pDBPropSet->rgProperties->vValue.lVal == DBPROPVAL_TI_ISOLATED)) ||
|
|
((g_rgDBProperties[cPrpt].vDefault.lVal != DBPROPVAL_TI_READCOMMITTED) &&
|
|
(pDBPropSet->rgProperties->vValue.lVal == DBPROPVAL_TI_READCOMMITTED))))
|
|
return TRUE;
|
|
else if ((!fSet) &&
|
|
(g_rgDBProperties[cPrpt].vDefault.lVal == pDBPropSet->rgProperties->vValue.lVal))
|
|
return TRUE;
|
|
else
|
|
return FALSE;
|
|
}
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//@mfunc: Set the DBPROPIDSET
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
BOOL TCIDProperties::InitDBPropIDSet(const ULONG cPrpt, DBPROPIDSET *pDBPropIDSet)
|
|
{
|
|
if(!(pDBPropIDSet->rgPropertyIDs))
|
|
return FALSE;
|
|
|
|
pDBPropIDSet->guidPropertySet=*(g_rgDBProperties[cPrpt].pGuidPropertySet);
|
|
pDBPropIDSet->cPropertyIDs=1;
|
|
*(pDBPropIDSet->rgPropertyIDs)=g_rgDBProperties[cPrpt].dwPropertyID;
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//@mfunc: VerifyDBPropGet
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
BOOL TCIDProperties::VerifyDBPropGet
|
|
( const ULONG cPrpt,
|
|
DBPROPSET *pDBPropSet,
|
|
DBPROPSTATUS dwStatus,
|
|
BOOL fSet
|
|
)
|
|
{
|
|
if(!(pDBPropSet->rgProperties))
|
|
return FALSE;
|
|
|
|
//Check guidPropertySet
|
|
if(pDBPropSet->guidPropertySet!= *(g_rgDBProperties[cPrpt].pGuidPropertySet))
|
|
return FALSE;
|
|
|
|
//Check cProperties
|
|
if(pDBPropSet->cProperties !=1)
|
|
return FALSE;
|
|
|
|
//Check dwPropertyID
|
|
if(pDBPropSet->rgProperties->dwPropertyID !=
|
|
g_rgDBProperties[cPrpt].dwPropertyID)
|
|
return FALSE;
|
|
|
|
//Check dwStatus
|
|
if(pDBPropSet->rgProperties->dwStatus!=dwStatus)
|
|
return FALSE;
|
|
|
|
//If dwStatus is NOTSUPPORTED dwOptions, colid, and vValue are zeroed
|
|
if(dwStatus == DBPROPSTATUS_NOTSUPPORTED)
|
|
{
|
|
if( (!pDBPropSet->rgProperties->colid.eKind) &&
|
|
(!pDBPropSet->rgProperties->dwOptions) &&
|
|
(!pDBPropSet->rgProperties->vValue.vt) )
|
|
return TRUE;
|
|
else
|
|
return FALSE;
|
|
}
|
|
|
|
//Check vValue
|
|
if(pDBPropSet->rgProperties->vValue.vt != VT_I4)
|
|
return FALSE;
|
|
|
|
if ((fSet) &&
|
|
(g_rgDBProperties[cPrpt].vDefault.lVal != pDBPropSet->rgProperties->vValue.lVal))
|
|
return TRUE;
|
|
else if ((!fSet) &&
|
|
(g_rgDBProperties[cPrpt].vDefault.lVal == pDBPropSet->rgProperties->vValue.lVal))
|
|
return TRUE;
|
|
else
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//@mfunc: VerifyDBPropDefault: Verify the return value is the same as
|
|
// the default value.
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
BOOL TCIDProperties::VerifyDBPropDefault(ULONG cPrpt, DBPROPSET *pDBPropSet, BOOL fAfterRowset)
|
|
{
|
|
TBEGIN;
|
|
|
|
QTESTC(pDBPropSet->cProperties == 1);
|
|
QTESTC(pDBPropSet->rgProperties != NULL);
|
|
QTESTC(pDBPropSet->guidPropertySet == *(g_rgDBProperties[cPrpt].pGuidPropertySet));
|
|
QTESTC(pDBPropSet->rgProperties->dwPropertyID == g_rgDBProperties[cPrpt].dwPropertyID);
|
|
QTESTC(pDBPropSet->rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
|
|
if( !(fAfterRowset && g_rgDBProperties[cPrpt].fSettable == FALSE) )
|
|
QTESTC(pDBPropSet->rgProperties->vValue.lVal == g_rgDBProperties[cPrpt].vDefault.lVal);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN;
|
|
}
|
|
|
|
|
|
//-----------------------------------------------------------------------------
|
|
//@mfunc: WritableProperty:
|
|
//
|
|
//-----------------------------------------------------------------------------
|
|
void TCIDProperties::WritableProperty(ULONG cPrpt)
|
|
{
|
|
DBPROPIDSET DBPropIDSet;
|
|
ULONG cPropertyInfoSets=0;
|
|
DBPROPINFOSET * pPropertyInfoSets=NULL;
|
|
|
|
// Initialization
|
|
DBPropIDSet.cPropertyIDs = 1;
|
|
DBPropIDSet.rgPropertyIDs = &g_rgDBProperties[cPrpt].dwPropertyID;
|
|
memcpy(&DBPropIDSet.guidPropertySet,g_rgDBProperties[cPrpt].pGuidPropertySet,sizeof(GUID));
|
|
|
|
// Set to False
|
|
g_rgDBProperties[cPrpt].fSettable = FALSE;
|
|
|
|
// Call IDBProperties::GetPropertyInfo to get all the properties
|
|
TEST2C_(m_pIDBProperties->GetPropertyInfo(1,&DBPropIDSet,
|
|
&cPropertyInfoSets,&pPropertyInfoSets, NULL), S_OK, DB_E_ERRORSOCCURRED);
|
|
|
|
// At least one property set should be returned
|
|
TESTC(cPropertyInfoSets);
|
|
TESTC(pPropertyInfoSets != NULL);
|
|
|
|
// Provider does not have to return what is in spec
|
|
if( pPropertyInfoSets->rgPropertyInfos->dwFlags & DBPROPFLAGS_WRITE )
|
|
g_rgDBProperties[cPrpt].fSettable = TRUE;
|
|
|
|
CLEANUP:
|
|
|
|
// Free memory from GetPropertyInfo
|
|
FreeProperties(&cPropertyInfoSets, &pPropertyInfoSets);
|
|
return;
|
|
}
|
|
|
|
|
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
// Test Case Section
|
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
|
|
|
|
// {{ TCW_TEST_CASE_MAP(TCIDProperties_Parameters)
|
|
//--------------------------------------------------------------------
|
|
// @class ISessionProperties::Parameters
|
|
//
|
|
class TCIDProperties_Parameters : public TCIDProperties {
|
|
private:
|
|
// @cmember Static array of variations
|
|
DECLARE_TEST_CASE_DATA();
|
|
|
|
public:
|
|
// {{ TCW_DECLARE_FUNCS
|
|
// @cmember Execution Routine
|
|
DECLARE_TEST_CASE_FUNCS(TCIDProperties_Parameters,TCIDProperties);
|
|
// }} TCW_DECLARE_FUNCS_END
|
|
|
|
// @cmember Initialization Routine
|
|
virtual BOOL Init();
|
|
// @cmember Termination Routine
|
|
virtual BOOL Terminate();
|
|
|
|
// {{ TCW_TESTVARS()
|
|
// @cmember GetProperties with a NULL pcPropertySets - E_INVALIDARG
|
|
int Variation_1();
|
|
// @cmember GetProperties with a NULL prgPropertySets - E_INVALIDARG
|
|
int Variation_2();
|
|
// @cmember GetProperties with cPropertyIDSets!=0, rgPropertyIDSets=NULL - E_INVALIDARG
|
|
int Variation_3();
|
|
// @cmember GetProperties with cPropertyIDs!=0, rgPropertyIDs=NULL - E_INVALIDARG
|
|
int Variation_4();
|
|
// @cmember GetProperties DBPROPSET_PROPERTIESINERROR with cPropertyIDs>0 - DB_E_ERRORSOCCURRED
|
|
int Variation_5();
|
|
// @cmember GetProperties DBPROPSET_PROPERTIESINERROR with rgPropertyIDs != NULL - DB_E_ERRORSOCCURRED
|
|
int Variation_6();
|
|
// @cmember GetProperties DBPROPSET_PROPERTIESINERROR with 2 PropertyIDSets - DB_S_ERRORSOCCURRED
|
|
int Variation_7();
|
|
// @cmember GetProperties with a supported and unsupported PropertySet - DB_S_ERRORSOCCURRED
|
|
int Variation_8();
|
|
// @cmember GetProperties with an unsupported PropertySet - DB_E_ERRORSOCCURRED
|
|
int Variation_9();
|
|
// @cmember SetProperties with cPropertyIDs!=0, rgPropertyID=NULL - E_INVALIDARG
|
|
int Variation_10();
|
|
// @cmember SetProperties with cProperties!=0, rgProperties=NULL - E_INVALIDARG
|
|
int Variation_11();
|
|
// @cmember SetProperties with a supported and unsupported PropertySet - DB_S_ERRORSOCCURRED
|
|
int Variation_12();
|
|
// @cmember SetProperties with an unsupported PropertySet - DB_E_ERRORSOCCURRED
|
|
int Variation_13();
|
|
// @cmember Compare DBPROP_SUPPORTEDTXNISOLEVELS with DBPROP_SESS_AUTOCOMMITISOLEVELS
|
|
int Variation_14();
|
|
// @cmember SetProperties with 0 for cPropertySets - S_OK
|
|
int Variation_15();
|
|
// @cmember SetProperties and GetProperties with all Isolation Levels - S_OK
|
|
int Variation_16();
|
|
// @cmember GetProperties with cProperties=0, rgProperties=NULL - S_OK or DB_E_ERRORSOCCURRED
|
|
int Variation_17();
|
|
// @cmember GetProperties with 0, NULL PropSets first - S_OK or DB_E_ERRORSOCCURRED
|
|
int Variation_18();
|
|
// @cmember GetProperties with 0, NULL PropSets second - S_OK or DB_E_ERRORSOCCURRED
|
|
int Variation_19();
|
|
// @cmember SetProperties with 0, NULL for cProperties and rgProperties - S_OK
|
|
int Variation_20();
|
|
// @cmember GetProperties DBPROPSET_SESSIONALL as the PropertySet - DB_E_ERRORSOCCURRED
|
|
int Variation_21();
|
|
// @cmember SetProperties with DBPROPOPTIONS_OPTIONAL - DB_E_ERRORSOCCURRED
|
|
int Variation_22();
|
|
// @cmember SetProperties with an unsupported PropertySet with DBPROPOPTIONS_OPTIONAL - DB_E_ERRORSOCCURRED
|
|
int Variation_23();
|
|
// @cmember GetProperties with 0, NULL, DBPROPSET_DBINIT - DB_E_ERRORSOCCURRED
|
|
int Variation_24();
|
|
// @cmember GetProperties with 0, NULL, DBPROPSET_DBINITALL - DB_E_ERRORSOCCURRED
|
|
int Variation_25();
|
|
// @cmember SetProperties with invalid value - DB_E_ERRORSOCCURRED
|
|
int Variation_26();
|
|
// @cmember SetProperties with Optional invalid value - DB_E_ERRORSOCCURRED
|
|
int Variation_27();
|
|
// @cmember SetProperties with invalid propid - DB_E_ERRORSOCCURRED
|
|
int Variation_28();
|
|
// }} TCW_TESTVARS_END
|
|
};
|
|
|
|
// {{ TCW_TESTCASE(TCIDProperties_Parameters)
|
|
#define THE_CLASS TCIDProperties_Parameters
|
|
BEG_TEST_CASE(TCIDProperties_Parameters, TCIDProperties, L"ISessionProperties::Parameters")
|
|
TEST_VARIATION(1, L"GetProperties with a NULL pcPropertySets - E_INVALIDARG")
|
|
TEST_VARIATION(2, L"GetProperties with a NULL prgPropertySets - E_INVALIDARG")
|
|
TEST_VARIATION(3, L"GetProperties with cPropertyIDSets!=0, rgPropertyIDSets=NULL - E_INVALIDARG")
|
|
TEST_VARIATION(4, L"GetProperties with cPropertyIDs!=0, rgPropertyIDs=NULL - E_INVALIDARG")
|
|
TEST_VARIATION(5, L"GetProperties DBPROPSET_PROPERTIESINERROR with cPropertyIDs>0 - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(6, L"GetProperties DBPROPSET_PROPERTIESINERROR with rgPropertyIDs != NULL - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(7, L"GetProperties DBPROPSET_PROPERTIESINERROR with 2 PropertyIDSets - DB_S_ERRORSOCCURRED")
|
|
TEST_VARIATION(8, L"GetProperties with a supported and unsupported PropertySet - DB_S_ERRORSOCCURRED")
|
|
TEST_VARIATION(9, L"GetProperties with an unsupported PropertySet - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(10, L"SetProperties with cPropertyIDs!=0, rgPropertyID=NULL - E_INVALIDARG")
|
|
TEST_VARIATION(11, L"SetProperties with cProperties!=0, rgProperties=NULL - E_INVALIDARG")
|
|
TEST_VARIATION(12, L"SetProperties with a supported and unsupported PropertySet - DB_S_ERRORSOCCURRED")
|
|
TEST_VARIATION(13, L"SetProperties with an unsupported PropertySet - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(14, L"Compare DBPROP_SUPPORTEDTXNISOLEVELS with DBPROP_SESS_AUTOCOMMITISOLEVELS")
|
|
TEST_VARIATION(15, L"SetProperties with 0 for cPropertySets - S_OK")
|
|
TEST_VARIATION(16, L"SetProperties and GetProperties with all Isolation Levels - S_OK")
|
|
TEST_VARIATION(17, L"GetProperties with cProperties=0, rgProperties=NULL - S_OK or DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(18, L"GetProperties with 0, NULL PropSets first - S_OK or DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(19, L"GetProperties with 0, NULL PropSets second - S_OK or DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(20, L"SetProperties with 0, NULL for cProperties and rgProperties - S_OK")
|
|
TEST_VARIATION(21, L"GetProperties DBPROPSET_SESSIONALL as the PropertySet - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(22, L"SetProperties with DBPROPOPTIONS_OPTIONAL - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(23, L"SetProperties with an unsupported PropertySet with DBPROPOPTIONS_OPTIONAL - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(24, L"GetProperties with 0, NULL, DBPROPSET_DBINIT - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(25, L"GetProperties with 0, NULL, DBPROPSET_DBINITALL - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(26, L"SetProperties with invalid value - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(27, L"SetProperties with Optional invalid value - DB_E_ERRORSOCCURRED")
|
|
TEST_VARIATION(28, L"SetProperties with invalid propid - DB_E_ERRORSOCCURRED")
|
|
END_TEST_CASE()
|
|
#undef THE_CLASS
|
|
// }} TCW_TESTCASE_END
|
|
// }} TCW_TEST_CASE_MAP_END
|
|
|
|
|
|
// {{ TCW_TEST_CASE_MAP(TCIDProperties_SetProperties)
|
|
//--------------------------------------------------------------------
|
|
// @class set all supported properties
|
|
//
|
|
class TCIDProperties_SetProperties : public TCIDProperties {
|
|
private:
|
|
// @cmember Static array of variations
|
|
DECLARE_TEST_CASE_DATA();
|
|
|
|
|
|
public:
|
|
// {{ TCW_DECLARE_FUNCS
|
|
// @cmember Execution Routine
|
|
DECLARE_TEST_CASE_FUNCS(TCIDProperties_SetProperties,TCIDProperties);
|
|
// }} TCW_DECLARE_FUNCS_END
|
|
|
|
// @cmember Initialization Routine
|
|
virtual BOOL Init();
|
|
// @cmember Termination Routine
|
|
virtual BOOL Terminate();
|
|
|
|
// {{ TCW_TESTVARS()
|
|
// @cmember DBPROP is DBPROP_ACTIVESESSIONS - S_OK
|
|
int Variation_1();
|
|
// @cmember DBPROP is DBPROP_ASYNCTXNABORT - S_OK
|
|
int Variation_2();
|
|
// @cmember DBPROP is DBPROP_ASYNCTXNCOMMIT - S_OK
|
|
int Variation_3();
|
|
// @cmember DBPROP is DBPROP_BYREFACCESSORS - S_OK
|
|
int Variation_4();
|
|
// @cmember DBPROP is DBPROP_CATALOGLOCATION - S_OK
|
|
int Variation_5();
|
|
// @cmember DBPROP is DBPROP_CATALOGTERM - S_OK
|
|
int Variation_6();
|
|
// @cmember DBPROP is DBPROP_CATALOGUSAGE - S_OK
|
|
int Variation_7();
|
|
// @cmember DBPROP is DBPROP_COLUMNDEFINITION - S_OK
|
|
int Variation_8();
|
|
// @cmember DBPROP is DBPROP_CONCATNULLBEHAVIOR - S_OK
|
|
int Variation_9();
|
|
// @cmember DBPROP is DBPROP_DATASOURCENAME - S_OK
|
|
int Variation_10();
|
|
// @cmember DBPROP is DBPROP_DATASOURCEREADONLY - S_OK
|
|
int Variation_11();
|
|
// @cmember DBPROP is DBPROP_DBMSNAME - S_OK
|
|
int Variation_12();
|
|
// @cmember DBPROP is DBPROP_DBMSVER - S_OK
|
|
int Variation_13();
|
|
// @cmember DBPROP is DBPROP_DSOTHREADMODEL - S_OK
|
|
int Variation_14();
|
|
// @cmember DBPROP is DBPROP_GROUPBY - S_OK
|
|
int Variation_15();
|
|
// @cmember DBPROP is DBPROP_HETEROGENEOUSTABLES - S_OK
|
|
int Variation_16();
|
|
// @cmember DBPROP is DBPROP_IDENTIFIERCASE - S_OK
|
|
int Variation_17();
|
|
// @cmember DBPROP is DBPROP_MAXINDEXSIZE - S_OK
|
|
int Variation_18();
|
|
// @cmember DBPROP is DBPROP_MAXOPENCHAPTERS - S_OK
|
|
int Variation_19();
|
|
// @cmember DBPROP is DBPROP_MAXORSINFILTER - S_OK
|
|
int Variation_20();
|
|
// @cmember DBPROP is DBPROP_MAXROWSIZE - S_OK
|
|
int Variation_21();
|
|
// @cmember DBPROP is DBPROP_MAXROWSIZEINCLUDESBLOB - S_OK
|
|
int Variation_22();
|
|
// @cmember DBPROP is DBPROP_MAXSORTCOLUMNS - S_OK
|
|
int Variation_23();
|
|
// @cmember DBPROP is DBPROP_MAXTABLESINSELECT - S_OK
|
|
int Variation_24();
|
|
// @cmember DBPROP is DBPROP_MULTIPLEPARAMSETS - S_OK
|
|
int Variation_25();
|
|
// @cmember DBPROP is DBPROP_MULTIPLERESULTS - S_OK
|
|
int Variation_26();
|
|
// @cmember DBPROP is DBPROP_MULTIPLESTORAGEOBJECTS - S_OK
|
|
int Variation_27();
|
|
// @cmember DBPROP is DBPROP_MULTITABLEUPDATE - S_OK
|
|
int Variation_28();
|
|
// @cmember DBPROP is DBPROP_NULLCOLLATION - S_OK
|
|
int Variation_29();
|
|
// @cmember DBPROP is DBPROP_OLEOBJECTS - S_OK
|
|
int Variation_30();
|
|
// @cmember DBPROP is DBPROP_ORDERBYCOLUMNSINSELECT - S_OK
|
|
int Variation_31();
|
|
// @cmember DBPROP is DBPROP_OUTPUTPARAMETERAVAILABILITY - S_OK
|
|
int Variation_32();
|
|
// @cmember DBPROP is DBPROP_PERSISTENTIDTYPE - S_OK
|
|
int Variation_33();
|
|
// @cmember DBPROP is DBPROP_PREPAREABORTBEHAVIOR - S_OK
|
|
int Variation_34();
|
|
// @cmember DBPROP is DBPROP_PREPARECOMMITBEHAVIOR - S_OK
|
|
int Variation_35();
|
|
// @cmember DBPROP is DBPROP_PROCEDURETERM - S_OK
|
|
int Variation_36();
|
|
// @cmember DBPROP is DBPROP_PROVIDERNAME - S_OK
|
|
int Variation_37();
|
|
// @cmember DBPROP is DBPROP_PROVIDEROLEDBVER - S_OK
|
|
int Variation_38();
|
|
// @cmember DBPROP is DBPROP_PROVIDERVER - S_OK
|
|
int Variation_39();
|
|
// @cmember DBPROP is DBPROP_QUOTEDIDENTIFIERCASE - S_OK
|
|
int Variation_40();
|
|
// @cmember DBPROP is DBPROP_ROWSETCONVERSIONSONCOMMAND - S_OK
|
|
int Variation_41();
|
|
// @cmember DBPROP is DBPROP_SCHEMATERM - S_OK
|
|
int Variation_42();
|
|
// @cmember DBPROP is DBPROP_SCHEMAUSAGE - S_OK
|
|
int Variation_43();
|
|
// @cmember DBPROP is DBPROP_SORTONINDEX - S_OK
|
|
int Variation_44();
|
|
// @cmember DBPROP is DBPROP_SQLSUPPORT - S_OK
|
|
int Variation_45();
|
|
// @cmember DBPROP is DBPROP_STRUCTUREDSTORAGE - S_OK
|
|
int Variation_46();
|
|
// @cmember DBPROP is DBPROP_SUBQUERIES - S_OK
|
|
int Variation_47();
|
|
// @cmember DBPROP is DBPROP_SUPPORTEDTXNDDL - S_OK
|
|
int Variation_48();
|
|
// @cmember DBPROP is DBPROP_SUPPORTEDTXNISOLEVELS - S_OK
|
|
int Variation_49();
|
|
// @cmember DBPROP is DBPROP_SUPPORTEDTXNISORETAIN - S_OK
|
|
int Variation_50();
|
|
// @cmember DBPROP is DBPROP_TABLETERM - S_OK
|
|
int Variation_51();
|
|
// @cmember DBPROP is DBPROP_USERNAME - S_OK
|
|
int Variation_52();
|
|
// @cmember DBPROP is DBPROP_CURRENTCATALOG - S_OK
|
|
int Variation_53();
|
|
// @cmember DBPROP is DBPROP_AUTH_CACHE_AUTHINFO - S_OK
|
|
int Variation_54();
|
|
// @cmember DBPROP is DBPROP_AUTH_ENCRYPT_PASSWORD - S_OK
|
|
int Variation_55();
|
|
// @cmember DBPROP is DBPROP_AUTH_INTEGRATED - S_OK
|
|
int Variation_56();
|
|
// @cmember DBPROP is DBPROP_AUTH_MASK_PASSWORD - S_OK
|
|
int Variation_57();
|
|
// @cmember DBPROP is DBPROP_AUTH_PASSWORD - S_OK
|
|
int Variation_58();
|
|
// @cmember DBPROP is DBPROP_AUTH_PERSIST_ENCRYPTED - S_OK
|
|
int Variation_59();
|
|
// @cmember DBPROP is DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO - S_OK
|
|
int Variation_60();
|
|
// @cmember DBPROP is DBPROP_AUTH_USERID - S_OK
|
|
int Variation_61();
|
|
// @cmember DBPROP is DBPROP_INIT_ASYNCH - S_OK
|
|
int Variation_62();
|
|
// @cmember DBPROP is DBPROP_INIT_DATASOURCE - S_OK
|
|
int Variation_63();
|
|
// @cmember DBPROP is DBPROP_INIT_HWND - S_OK
|
|
int Variation_64();
|
|
// @cmember DBPROP is DBPROP_INIT_IMPERSONATION_LEVEL - S_OK
|
|
int Variation_65();
|
|
// @cmember DBPROP is DBPROP_INIT_LCID - S_OK
|
|
int Variation_66();
|
|
// @cmember DBPROP is DBPROP_INIT_LOCATION - S_OK
|
|
int Variation_67();
|
|
// @cmember DBPROP is DBPROP_INIT_MODE - S_OK
|
|
int Variation_68();
|
|
// @cmember DBPROP is DBPROP_INIT_PROMPT - S_OK
|
|
int Variation_69();
|
|
// @cmember DBPROP is DBPROP_INIT_PROTECTION_LEVEL - S_OK
|
|
int Variation_70();
|
|
// @cmember DBPROP is DBPROP_INIT_PROVIDERSTRING - S_OK
|
|
int Variation_71();
|
|
// @cmember DBPROP is DBPROP_INIT_TIMEOUT - S_OK
|
|
int Variation_72();
|
|
// @cmember DBPROP is DBPROP_COL_AUTOINCREMENT - S_OK
|
|
int Variation_73();
|
|
// @cmember DBPROP is DBPROP_COL_DEFAULT - S_OK
|
|
int Variation_74();
|
|
// @cmember DBPROP is DBPROP_COL_DESCRIPTION - S_OK
|
|
int Variation_75();
|
|
// @cmember DBPROP is DBPROP_COL_FIXEDLENGTH - S_OK
|
|
int Variation_76();
|
|
// @cmember DBPROP is DBPROP_COL_NULLABLE - S_OK
|
|
int Variation_77();
|
|
// @cmember DBPROP is DBPROP_COL_PRIMARYKEY - S_OK
|
|
int Variation_78();
|
|
// @cmember DBPROP is DBPROP_COL_UNIQUE - S_OK
|
|
int Variation_79();
|
|
// @cmember DBPROP is DBPROP_INDEX_AUTOUPDATE - S_OK
|
|
int Variation_80();
|
|
// @cmember DBPROP is DBPROP_INDEX_CLUSTERED - S_OK
|
|
int Variation_81();
|
|
// @cmember DBPROP is DBPROP_INDEX_FILLFACTOR - S_OK
|
|
int Variation_82();
|
|
// @cmember DBPROP is DBPROP_INDEX_INITIALSIZE - S_OK
|
|
int Variation_83();
|
|
// @cmember DBPROP is DBPROP_INDEX_NULLCOLLATION - S_OK
|
|
int Variation_84();
|
|
// @cmember DBPROP is DBPROP_INDEX_NULLS - S_OK
|
|
int Variation_85();
|
|
// @cmember DBPROP is DBPROP_INDEX_PRIMARYKEY - S_OK
|
|
int Variation_86();
|
|
// @cmember DBPROP is DBPROP_INDEX_SORTBOOKMARKS - S_OK
|
|
int Variation_87();
|
|
// @cmember DBPROP is DBPROP_INDEX_TEMPINDEX - S_OK
|
|
int Variation_88();
|
|
// @cmember DBPROP is DBPROP_INDEX_TYPE - S_OK
|
|
int Variation_89();
|
|
// @cmember DBPROP is DBPROP_INDEX_UNIQUE - S_OK
|
|
int Variation_90();
|
|
// @cmember DBPROP is DBPROP_SESS_AUTOCOMMITISOLEVELS - S_OK
|
|
int Variation_91();
|
|
// @cmember DBPROP is DBPROP_TBL_TEMPTABLE - S_OK
|
|
int Variation_92();
|
|
// @cmember DBPROP is DBPROP_ABORTPRESERVE - S_OK
|
|
int Variation_93();
|
|
// @cmember DBPROP is DBPROP_APPENDONLY - S_OK
|
|
int Variation_94();
|
|
// @cmember DBPROP is DBPROP_BLOCKINGSTORAGEOBJECTS - S_OK
|
|
int Variation_95();
|
|
// @cmember DBPROP is DBPROP_BOOKMARKS - S_OK
|
|
int Variation_96();
|
|
// @cmember DBPROP is DBPROP_BOOKMARKSKIPPED - S_OK
|
|
int Variation_97();
|
|
// @cmember DBPROP is DBPROP_BOOKMARKTYPE - S_OK
|
|
int Variation_98();
|
|
// @cmember DBPROP is DBPROP_CACHEDEFERRED - S_OK
|
|
int Variation_99();
|
|
// @cmember DBPROP is DBPROP_CANFETCHBACKWARDS - S_OK
|
|
int Variation_100();
|
|
// @cmember DBPROP is DBPROP_CANHOLDROWS - S_OK
|
|
int Variation_101();
|
|
// @cmember DBPROP is DBPROP_CANSCROLLBACKWARDS - S_OK
|
|
int Variation_102();
|
|
// @cmember DBPROP is DBPROP_CHANGEINSERTEDROWS - S_OK
|
|
int Variation_103();
|
|
// @cmember DBPROP is DBPROP_COLUMNRESTRICT - S_OK
|
|
int Variation_104();
|
|
// @cmember DBPROP is DBPROP_COMMANDTIMEOUT - S_OK
|
|
int Variation_105();
|
|
// @cmember DBPROP is DBPROP_COMMITPRESERVE - S_OK
|
|
int Variation_106();
|
|
// @cmember DBPROP is DBPROP_DEFERRED - S_OK
|
|
int Variation_107();
|
|
// @cmember DBPROP is DBPROP_DELAYSTORAGEOBJECTS - S_OK
|
|
int Variation_108();
|
|
// @cmember DBPROP is DBPROP_FILTERCOMPAREOPS - S_OK
|
|
int Variation_109();
|
|
// @cmember DBPROP is DBPROP_FINDCOMPAREOPS - S_OK
|
|
int Variation_110();
|
|
// @cmember DBPROP is DBPROP_IMMOBILEROWS - S_OK
|
|
int Variation_111();
|
|
// @cmember DBPROP is DBPROP_LITERALBOOKMARKS - S_OK
|
|
int Variation_112();
|
|
// @cmember DBPROP is DBPROP_LITERALIDENTITY - S_OK
|
|
int Variation_113();
|
|
// @cmember DBPROP is DBPROP_MAXOPENROWS - S_OK
|
|
int Variation_114();
|
|
// @cmember DBPROP is DBPROP_MAXPENDINGROWS - S_OK
|
|
int Variation_115();
|
|
// @cmember DBPROP is DBPROP_MAXROWS - S_OK
|
|
int Variation_116();
|
|
// @cmember DBPROP is DBPROP_MAYWRITECOLUMN - S_OK
|
|
int Variation_117();
|
|
// @cmember DBPROP is DBPROP_MEMORYUSAGE - S_OK
|
|
int Variation_118();
|
|
// @cmember DBPROP is DBPROP_NOTIFICATIONPHASES - S_OK
|
|
int Variation_119();
|
|
// @cmember DBPROP is DBPROP_NOTIFYCOLUMNSET - S_OK
|
|
int Variation_120();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWDELETE - S_OK
|
|
int Variation_121();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWFIRSTCHANGE - S_OK
|
|
int Variation_122();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWINSERT - S_OK
|
|
int Variation_123();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWRESYNCH - S_OK
|
|
int Variation_124();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWSETRELEASE - S_OK
|
|
int Variation_125();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWSETFETCHPOSITIONCHANGE - S_OK
|
|
int Variation_126();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWUNDOCHANGE - S_OK
|
|
int Variation_127();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWUNDODELETE - S_OK
|
|
int Variation_128();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWUNDOINSERT - S_OK
|
|
int Variation_129();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWUPDATE - S_OK
|
|
int Variation_130();
|
|
// @cmember DBPROP is DBPROP_ORDEREDBOOKMARKS - S_OK
|
|
int Variation_131();
|
|
// @cmember DBPROP is DBPROP_OTHERINSERT - S_OK
|
|
int Variation_132();
|
|
// @cmember DBPROP is DBPROP_OTHERUPDATEDELETE - S_OK
|
|
int Variation_133();
|
|
// @cmember DBPROP is DBPROP_OWNINSERT - S_OK
|
|
int Variation_134();
|
|
// @cmember DBPROP is DBPROP_OWNUPDATEDELETE - S_OK
|
|
int Variation_135();
|
|
// @cmember DBPROP is DBPROP_QUICKRESTART - S_OK
|
|
int Variation_136();
|
|
// @cmember DBPROP is DBPROP_REENTRANTEVENTS - S_OK
|
|
int Variation_137();
|
|
// @cmember DBPROP is DBPROP_REMOVEDELETED - S_OK
|
|
int Variation_138();
|
|
// @cmember DBPROP is DBPROP_REPORTMULTIPLECHANGES - S_OK
|
|
int Variation_139();
|
|
// @cmember DBPROP is DBPROP_RETURNPENDINGINSERTS - S_OK
|
|
int Variation_140();
|
|
// @cmember DBPROP is DBPROP_ROWRESTRICT - S_OK
|
|
int Variation_141();
|
|
// @cmember DBPROP is DBPROP_ROWSET_ASYNCH - S_OK
|
|
int Variation_142();
|
|
// @cmember DBPROP is DBPROP_ROWTHREADMODEL - S_OK
|
|
int Variation_143();
|
|
// @cmember DBPROP is DBPROP_SERVERCURSOR - S_OK
|
|
int Variation_144();
|
|
// @cmember DBPROP is DBPROP_TRANSACTEDOBJECT - S_OK
|
|
int Variation_145();
|
|
// @cmember DBPROP is DBPROP_UPDATABILITY - S_OK
|
|
int Variation_146();
|
|
// @cmember DBPROP is DBPROP_STRONGIDENTITY - S_OK
|
|
int Variation_147();
|
|
// @cmember DBPROP is DBPROP_IAccessor - S_OK
|
|
int Variation_148();
|
|
// @cmember DBPROP is DBPROP_IChapteredRowset - S_OK
|
|
int Variation_149();
|
|
// @cmember DBPROP is DBPROP_IColumnsInfo - S_OK
|
|
int Variation_150();
|
|
// @cmember DBPROP is DBPROP_IColumnsRowset - S_OK
|
|
int Variation_151();
|
|
// @cmember DBPROP is DBPROP_IConnectionPointContainer - S_OK
|
|
int Variation_152();
|
|
// @cmember DBPROP is DBPROP_IConvertType - S_OK
|
|
int Variation_153();
|
|
// @cmember DBPROP is DBPROP_IDBAsynchStatus - S_OK
|
|
int Variation_154();
|
|
// @cmember DBPROP is DBPROP_IRowset - S_OK
|
|
int Variation_155();
|
|
// @cmember DBPROP is DBPROP_IRowsetChange - S_OK
|
|
int Variation_156();
|
|
// @cmember DBPROP is DBPROP_IRowsetFind - S_OK
|
|
int Variation_157();
|
|
// @cmember DBPROP is DBPROP_IRowsetIdentity - S_OK
|
|
int Variation_158();
|
|
// @cmember DBPROP is DBPROP_IRowsetIndex - S_OK
|
|
int Variation_159();
|
|
// @cmember DBPROP is DBPROP_IRowsetInfo - S_OK
|
|
int Variation_160();
|
|
// @cmember DBPROP is DBPROP_IRowsetLocate - S_OK
|
|
int Variation_161();
|
|
// @cmember DBPROP is DBPROP_IRowsetResynch - S_OK
|
|
int Variation_162();
|
|
// @cmember DBPROP is DBPROP_IRowsetScroll - S_OK
|
|
int Variation_163();
|
|
// @cmember DBPROP is DBPROP_IRowsetUpdate - S_OK
|
|
int Variation_164();
|
|
// @cmember DBPROP is DBPROP_IRowsetView - S_OK
|
|
int Variation_165();
|
|
// @cmember DBPROP is DBPROP_IViewChapter - S_OK
|
|
int Variation_166();
|
|
// @cmember DBPROP is DBPROP_IViewFilter - S_OK
|
|
int Variation_167();
|
|
// @cmember DBPROP is DBPROP_IViewRowset - S_OK
|
|
int Variation_168();
|
|
// @cmember DBPROP is DBPROP_IViewSort - S_OK
|
|
int Variation_169();
|
|
// @cmember DBPROP is DBPROP_ILockBytes - S_OK
|
|
int Variation_170();
|
|
// @cmember DBPROP is DBPROP_ISequentialStream - S_OK
|
|
int Variation_171();
|
|
// @cmember DBPROP is DBPROP_IStorage - S_OK
|
|
int Variation_172();
|
|
// @cmember DBPROP is DBPROP_IStream - S_OK
|
|
int Variation_173();
|
|
// @cmember DBPROP is DBPROP_ISupportErrorInfo - S_OK
|
|
int Variation_174();
|
|
// @cmember DBPROP is DBPROP_ALTERCOLUMN - S_OK
|
|
int Variation_175();
|
|
// @cmember DBPROP is DBPROP_CONNECTIONSTATUS - S_OK
|
|
int Variation_176();
|
|
// @cmember DBPROP is DBPROP_PROVIDERFRIENDLYNAME - S_OK
|
|
int Variation_177();
|
|
// @cmember DBPROP is DBPROP_PROVIDERMEMORY - S_OK
|
|
int Variation_178();
|
|
// @cmember DBPROP is DBPROP_SERVERNAME - S_OK
|
|
int Variation_179();
|
|
// @cmember DBPROP is DBPROP_MULTIPLECONNECTIONS - S_OK
|
|
int Variation_180();
|
|
// @cmember DBPROP is DBPROP_RESETDATASOURCE - S_OK
|
|
int Variation_181();
|
|
// @cmember DBPROP is DBPROP_INIT_CATALOG - S_OK
|
|
int Variation_182();
|
|
// @cmember DBPROP is DBPROP_INIT_OLEDBSERVICES - S_OK
|
|
int Variation_183();
|
|
// @cmember DBPROP is DBPROP_COLUMNLCID - S_OK
|
|
int Variation_184();
|
|
// @cmember DBPROP is DBPROP_ACCESSORDER - S_OK
|
|
int Variation_185();
|
|
// @cmember DBPROP is DBPROP_BOOKMARKINFO - S_OK
|
|
int Variation_186();
|
|
// @cmember DBPROP is DBPROP_HIDDENCOLUMNS - S_OK
|
|
int Variation_187();
|
|
// @cmember DBPROP is DBPROP_LOCKMODE - S_OK
|
|
int Variation_188();
|
|
// @cmember DBPROP is DBPROP_NOTIFICATIONGRANULARITY - S_OK
|
|
int Variation_189();
|
|
// @cmember DBPROP is DBPROP_ROW_BULKOPS - S_OK
|
|
int Variation_190();
|
|
// @cmember DBPROP is DBPROP_SERVERDATAONINSERT - S_OK
|
|
int Variation_191();
|
|
// @cmember DBPROP is DBPROP_STORAGEFLAGS - S_OK
|
|
int Variation_192();
|
|
// @cmember DBPROP is DBPROP_UNIQUEROWS - S_OK
|
|
int Variation_193();
|
|
// @cmember DBPROP is DBPROP_IMultipleResults - S_OK
|
|
int Variation_194();
|
|
// @cmember DBPROP is DBPROP_IRowsetRefresh - S_OK
|
|
int Variation_195();
|
|
// @cmember DBPROP is DBPROP_IParentRowset - S_OK
|
|
int Variation_196();
|
|
// @cmember DBPROP is DBPROP_COL_INCREMENT - S_OK
|
|
int Variation_197();
|
|
// @cmember DBPROP is DBPROP_COL_ISLONG - S_OK
|
|
int Variation_198();
|
|
// @cmember DBPROP is DBPROP_COL_SEED - S_OK
|
|
int Variation_199();
|
|
// @cmember DBPROP is DBPROP_COMSERVICES - S_OK
|
|
int Variation_200();
|
|
// @cmember DBPROP is DBPROP_DATASOURCETYPE - S_OK
|
|
int Variation_201();
|
|
// @cmember DBPROP is DBPROP_GENERATEURL - S_OK
|
|
int Variation_202();
|
|
// @cmember DBPROP is DBPROP_OPENROWSETSUPPORT - S_OK
|
|
int Variation_203();
|
|
// @cmember DBPROP is DBPROP_INIT_BINDFLAGS - S_OK
|
|
int Variation_204();
|
|
// @cmember DBPROP is DBPROP_INIT_GENERALTIMEOUT - S_OK
|
|
int Variation_205();
|
|
// @cmember DBPROP is DBPROP_INIT_LOCKOWNER - S_OK
|
|
int Variation_206();
|
|
// @cmember DBPROP is DBPROP_CLIENTCURSOR - S_OK
|
|
int Variation_207();
|
|
// @cmember DBPROP is DBPROP_NOTIFYROWSETCHANGED - S_OK
|
|
int Variation_208();
|
|
// @cmember DBPROP is DBPROP_IBindResource - S_OK
|
|
int Variation_209();
|
|
// @cmember DBPROP is DBPROP_IColumnsInfo2 - S_OK
|
|
int Variation_210();
|
|
// @cmember DBPROP is DBPROP_ICreateRow - S_OK
|
|
int Variation_211();
|
|
// @cmember DBPROP is DBPROP_IGetRow - S_OK
|
|
int Variation_212();
|
|
// @cmember DBPROP is DBPROP_IGetSession - S_OK
|
|
int Variation_213();
|
|
// @cmember DBPROP is DBPROP_IGetSourceRow - S_OK
|
|
int Variation_214();
|
|
// @cmember DBPROP is DBPROP_IRow - S_OK
|
|
int Variation_215();
|
|
// @cmember DBPROP is DBPROP_IRowChange - S_OK
|
|
int Variation_216();
|
|
// @cmember DBPROP is DBPROP_IRowSchemaChange - S_OK
|
|
int Variation_217();
|
|
// @cmember DBPROP is DBPROP_IRowsetCurrentIndex - S_OK
|
|
int Variation_218();
|
|
// @cmember DBPROP is DBPROP_IScopedOperations - S_OK
|
|
int Variation_219();
|
|
// }} TCW_TESTVARS_END
|
|
};
|
|
|
|
// {{ TCW_TESTCASE(TCIDProperties_SetProperties)
|
|
#define THE_CLASS TCIDProperties_SetProperties
|
|
BEG_TEST_CASE(TCIDProperties_SetProperties, TCIDProperties, L"set all supported properties")
|
|
TEST_VARIATION(1, L"DBPROP is DBPROP_ACTIVESESSIONS - S_OK")
|
|
TEST_VARIATION(2, L"DBPROP is DBPROP_ASYNCTXNABORT - S_OK")
|
|
TEST_VARIATION(3, L"DBPROP is DBPROP_ASYNCTXNCOMMIT - S_OK")
|
|
TEST_VARIATION(4, L"DBPROP is DBPROP_BYREFACCESSORS - S_OK")
|
|
TEST_VARIATION(5, L"DBPROP is DBPROP_CATALOGLOCATION - S_OK")
|
|
TEST_VARIATION(6, L"DBPROP is DBPROP_CATALOGTERM - S_OK")
|
|
TEST_VARIATION(7, L"DBPROP is DBPROP_CATALOGUSAGE - S_OK")
|
|
TEST_VARIATION(8, L"DBPROP is DBPROP_COLUMNDEFINITION - S_OK")
|
|
TEST_VARIATION(9, L"DBPROP is DBPROP_CONCATNULLBEHAVIOR - S_OK")
|
|
TEST_VARIATION(10, L"DBPROP is DBPROP_DATASOURCENAME - S_OK")
|
|
TEST_VARIATION(11, L"DBPROP is DBPROP_DATASOURCEREADONLY - S_OK")
|
|
TEST_VARIATION(12, L"DBPROP is DBPROP_DBMSNAME - S_OK")
|
|
TEST_VARIATION(13, L"DBPROP is DBPROP_DBMSVER - S_OK")
|
|
TEST_VARIATION(14, L"DBPROP is DBPROP_DSOTHREADMODEL - S_OK")
|
|
TEST_VARIATION(15, L"DBPROP is DBPROP_GROUPBY - S_OK")
|
|
TEST_VARIATION(16, L"DBPROP is DBPROP_HETEROGENEOUSTABLES - S_OK")
|
|
TEST_VARIATION(17, L"DBPROP is DBPROP_IDENTIFIERCASE - S_OK")
|
|
TEST_VARIATION(18, L"DBPROP is DBPROP_MAXINDEXSIZE - S_OK")
|
|
TEST_VARIATION(19, L"DBPROP is DBPROP_MAXOPENCHAPTERS - S_OK")
|
|
TEST_VARIATION(20, L"DBPROP is DBPROP_MAXORSINFILTER - S_OK")
|
|
TEST_VARIATION(21, L"DBPROP is DBPROP_MAXROWSIZE - S_OK")
|
|
TEST_VARIATION(22, L"DBPROP is DBPROP_MAXROWSIZEINCLUDESBLOB - S_OK")
|
|
TEST_VARIATION(23, L"DBPROP is DBPROP_MAXSORTCOLUMNS - S_OK")
|
|
TEST_VARIATION(24, L"DBPROP is DBPROP_MAXTABLESINSELECT - S_OK")
|
|
TEST_VARIATION(25, L"DBPROP is DBPROP_MULTIPLEPARAMSETS - S_OK")
|
|
TEST_VARIATION(26, L"DBPROP is DBPROP_MULTIPLERESULTS - S_OK")
|
|
TEST_VARIATION(27, L"DBPROP is DBPROP_MULTIPLESTORAGEOBJECTS - S_OK")
|
|
TEST_VARIATION(28, L"DBPROP is DBPROP_MULTITABLEUPDATE - S_OK")
|
|
TEST_VARIATION(29, L"DBPROP is DBPROP_NULLCOLLATION - S_OK")
|
|
TEST_VARIATION(30, L"DBPROP is DBPROP_OLEOBJECTS - S_OK")
|
|
TEST_VARIATION(31, L"DBPROP is DBPROP_ORDERBYCOLUMNSINSELECT - S_OK")
|
|
TEST_VARIATION(32, L"DBPROP is DBPROP_OUTPUTPARAMETERAVAILABILITY - S_OK")
|
|
TEST_VARIATION(33, L"DBPROP is DBPROP_PERSISTENTIDTYPE - S_OK")
|
|
TEST_VARIATION(34, L"DBPROP is DBPROP_PREPAREABORTBEHAVIOR - S_OK")
|
|
TEST_VARIATION(35, L"DBPROP is DBPROP_PREPARECOMMITBEHAVIOR - S_OK")
|
|
TEST_VARIATION(36, L"DBPROP is DBPROP_PROCEDURETERM - S_OK")
|
|
TEST_VARIATION(37, L"DBPROP is DBPROP_PROVIDERNAME - S_OK")
|
|
TEST_VARIATION(38, L"DBPROP is DBPROP_PROVIDEROLEDBVER - S_OK")
|
|
TEST_VARIATION(39, L"DBPROP is DBPROP_PROVIDERVER - S_OK")
|
|
TEST_VARIATION(40, L"DBPROP is DBPROP_QUOTEDIDENTIFIERCASE - S_OK")
|
|
TEST_VARIATION(41, L"DBPROP is DBPROP_ROWSETCONVERSIONSONCOMMAND - S_OK")
|
|
TEST_VARIATION(42, L"DBPROP is DBPROP_SCHEMATERM - S_OK")
|
|
TEST_VARIATION(43, L"DBPROP is DBPROP_SCHEMAUSAGE - S_OK")
|
|
TEST_VARIATION(44, L"DBPROP is DBPROP_SORTONINDEX - S_OK")
|
|
TEST_VARIATION(45, L"DBPROP is DBPROP_SQLSUPPORT - S_OK")
|
|
TEST_VARIATION(46, L"DBPROP is DBPROP_STRUCTUREDSTORAGE - S_OK")
|
|
TEST_VARIATION(47, L"DBPROP is DBPROP_SUBQUERIES - S_OK")
|
|
TEST_VARIATION(48, L"DBPROP is DBPROP_SUPPORTEDTXNDDL - S_OK")
|
|
TEST_VARIATION(49, L"DBPROP is DBPROP_SUPPORTEDTXNISOLEVELS - S_OK")
|
|
TEST_VARIATION(50, L"DBPROP is DBPROP_SUPPORTEDTXNISORETAIN - S_OK")
|
|
TEST_VARIATION(51, L"DBPROP is DBPROP_TABLETERM - S_OK")
|
|
TEST_VARIATION(52, L"DBPROP is DBPROP_USERNAME - S_OK")
|
|
TEST_VARIATION(53, L"DBPROP is DBPROP_CURRENTCATALOG - S_OK")
|
|
TEST_VARIATION(54, L"DBPROP is DBPROP_AUTH_CACHE_AUTHINFO - S_OK")
|
|
TEST_VARIATION(55, L"DBPROP is DBPROP_AUTH_ENCRYPT_PASSWORD - S_OK")
|
|
TEST_VARIATION(56, L"DBPROP is DBPROP_AUTH_INTEGRATED - S_OK")
|
|
TEST_VARIATION(57, L"DBPROP is DBPROP_AUTH_MASK_PASSWORD - S_OK")
|
|
TEST_VARIATION(58, L"DBPROP is DBPROP_AUTH_PASSWORD - S_OK")
|
|
TEST_VARIATION(59, L"DBPROP is DBPROP_AUTH_PERSIST_ENCRYPTED - S_OK")
|
|
TEST_VARIATION(60, L"DBPROP is DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO - S_OK")
|
|
TEST_VARIATION(61, L"DBPROP is DBPROP_AUTH_USERID - S_OK")
|
|
TEST_VARIATION(62, L"DBPROP is DBPROP_INIT_ASYNCH - S_OK")
|
|
TEST_VARIATION(63, L"DBPROP is DBPROP_INIT_DATASOURCE - S_OK")
|
|
TEST_VARIATION(64, L"DBPROP is DBPROP_INIT_HWND - S_OK")
|
|
TEST_VARIATION(65, L"DBPROP is DBPROP_INIT_IMPERSONATION_LEVEL - S_OK")
|
|
TEST_VARIATION(66, L"DBPROP is DBPROP_INIT_LCID - S_OK")
|
|
TEST_VARIATION(67, L"DBPROP is DBPROP_INIT_LOCATION - S_OK")
|
|
TEST_VARIATION(68, L"DBPROP is DBPROP_INIT_MODE - S_OK")
|
|
TEST_VARIATION(69, L"DBPROP is DBPROP_INIT_PROMPT - S_OK")
|
|
TEST_VARIATION(70, L"DBPROP is DBPROP_INIT_PROTECTION_LEVEL - S_OK")
|
|
TEST_VARIATION(71, L"DBPROP is DBPROP_INIT_PROVIDERSTRING - S_OK")
|
|
TEST_VARIATION(72, L"DBPROP is DBPROP_INIT_TIMEOUT - S_OK")
|
|
TEST_VARIATION(73, L"DBPROP is DBPROP_COL_AUTOINCREMENT - S_OK")
|
|
TEST_VARIATION(74, L"DBPROP is DBPROP_COL_DEFAULT - S_OK")
|
|
TEST_VARIATION(75, L"DBPROP is DBPROP_COL_DESCRIPTION - S_OK")
|
|
TEST_VARIATION(76, L"DBPROP is DBPROP_COL_FIXEDLENGTH - S_OK")
|
|
TEST_VARIATION(77, L"DBPROP is DBPROP_COL_NULLABLE - S_OK")
|
|
TEST_VARIATION(78, L"DBPROP is DBPROP_COL_PRIMARYKEY - S_OK")
|
|
TEST_VARIATION(79, L"DBPROP is DBPROP_COL_UNIQUE - S_OK")
|
|
TEST_VARIATION(80, L"DBPROP is DBPROP_INDEX_AUTOUPDATE - S_OK")
|
|
TEST_VARIATION(81, L"DBPROP is DBPROP_INDEX_CLUSTERED - S_OK")
|
|
TEST_VARIATION(82, L"DBPROP is DBPROP_INDEX_FILLFACTOR - S_OK")
|
|
TEST_VARIATION(83, L"DBPROP is DBPROP_INDEX_INITIALSIZE - S_OK")
|
|
TEST_VARIATION(84, L"DBPROP is DBPROP_INDEX_NULLCOLLATION - S_OK")
|
|
TEST_VARIATION(85, L"DBPROP is DBPROP_INDEX_NULLS - S_OK")
|
|
TEST_VARIATION(86, L"DBPROP is DBPROP_INDEX_PRIMARYKEY - S_OK")
|
|
TEST_VARIATION(87, L"DBPROP is DBPROP_INDEX_SORTBOOKMARKS - S_OK")
|
|
TEST_VARIATION(88, L"DBPROP is DBPROP_INDEX_TEMPINDEX - S_OK")
|
|
TEST_VARIATION(89, L"DBPROP is DBPROP_INDEX_TYPE - S_OK")
|
|
TEST_VARIATION(90, L"DBPROP is DBPROP_INDEX_UNIQUE - S_OK")
|
|
TEST_VARIATION(91, L"DBPROP is DBPROP_SESS_AUTOCOMMITISOLEVELS - S_OK")
|
|
TEST_VARIATION(92, L"DBPROP is DBPROP_TBL_TEMPTABLE - S_OK")
|
|
TEST_VARIATION(93, L"DBPROP is DBPROP_ABORTPRESERVE - S_OK")
|
|
TEST_VARIATION(94, L"DBPROP is DBPROP_APPENDONLY - S_OK")
|
|
TEST_VARIATION(95, L"DBPROP is DBPROP_BLOCKINGSTORAGEOBJECTS - S_OK")
|
|
TEST_VARIATION(96, L"DBPROP is DBPROP_BOOKMARKS - S_OK")
|
|
TEST_VARIATION(97, L"DBPROP is DBPROP_BOOKMARKSKIPPED - S_OK")
|
|
TEST_VARIATION(98, L"DBPROP is DBPROP_BOOKMARKTYPE - S_OK")
|
|
TEST_VARIATION(99, L"DBPROP is DBPROP_CACHEDEFERRED - S_OK")
|
|
TEST_VARIATION(100, L"DBPROP is DBPROP_CANFETCHBACKWARDS - S_OK")
|
|
TEST_VARIATION(101, L"DBPROP is DBPROP_CANHOLDROWS - S_OK")
|
|
TEST_VARIATION(102, L"DBPROP is DBPROP_CANSCROLLBACKWARDS - S_OK")
|
|
TEST_VARIATION(103, L"DBPROP is DBPROP_CHANGEINSERTEDROWS - S_OK")
|
|
TEST_VARIATION(104, L"DBPROP is DBPROP_COLUMNRESTRICT - S_OK")
|
|
TEST_VARIATION(105, L"DBPROP is DBPROP_COMMANDTIMEOUT - S_OK")
|
|
TEST_VARIATION(106, L"DBPROP is DBPROP_COMMITPRESERVE - S_OK")
|
|
TEST_VARIATION(107, L"DBPROP is DBPROP_DEFERRED - S_OK")
|
|
TEST_VARIATION(108, L"DBPROP is DBPROP_DELAYSTORAGEOBJECTS - S_OK")
|
|
TEST_VARIATION(109, L"DBPROP is DBPROP_FILTERCOMPAREOPS - S_OK")
|
|
TEST_VARIATION(110, L"DBPROP is DBPROP_FINDCOMPAREOPS - S_OK")
|
|
TEST_VARIATION(111, L"DBPROP is DBPROP_IMMOBILEROWS - S_OK")
|
|
TEST_VARIATION(112, L"DBPROP is DBPROP_LITERALBOOKMARKS - S_OK")
|
|
TEST_VARIATION(113, L"DBPROP is DBPROP_LITERALIDENTITY - S_OK")
|
|
TEST_VARIATION(114, L"DBPROP is DBPROP_MAXOPENROWS - S_OK")
|
|
TEST_VARIATION(115, L"DBPROP is DBPROP_MAXPENDINGROWS - S_OK")
|
|
TEST_VARIATION(116, L"DBPROP is DBPROP_MAXROWS - S_OK")
|
|
TEST_VARIATION(117, L"DBPROP is DBPROP_MAYWRITECOLUMN - S_OK")
|
|
TEST_VARIATION(118, L"DBPROP is DBPROP_MEMORYUSAGE - S_OK")
|
|
TEST_VARIATION(119, L"DBPROP is DBPROP_NOTIFICATIONPHASES - S_OK")
|
|
TEST_VARIATION(120, L"DBPROP is DBPROP_NOTIFYCOLUMNSET - S_OK")
|
|
TEST_VARIATION(121, L"DBPROP is DBPROP_NOTIFYROWDELETE - S_OK")
|
|
TEST_VARIATION(122, L"DBPROP is DBPROP_NOTIFYROWFIRSTCHANGE - S_OK")
|
|
TEST_VARIATION(123, L"DBPROP is DBPROP_NOTIFYROWINSERT - S_OK")
|
|
TEST_VARIATION(124, L"DBPROP is DBPROP_NOTIFYROWRESYNCH - S_OK")
|
|
TEST_VARIATION(125, L"DBPROP is DBPROP_NOTIFYROWSETRELEASE - S_OK")
|
|
TEST_VARIATION(126, L"DBPROP is DBPROP_NOTIFYROWSETFETCHPOSITIONCHANGE - S_OK")
|
|
TEST_VARIATION(127, L"DBPROP is DBPROP_NOTIFYROWUNDOCHANGE - S_OK")
|
|
TEST_VARIATION(128, L"DBPROP is DBPROP_NOTIFYROWUNDODELETE - S_OK")
|
|
TEST_VARIATION(129, L"DBPROP is DBPROP_NOTIFYROWUNDOINSERT - S_OK")
|
|
TEST_VARIATION(130, L"DBPROP is DBPROP_NOTIFYROWUPDATE - S_OK")
|
|
TEST_VARIATION(131, L"DBPROP is DBPROP_ORDEREDBOOKMARKS - S_OK")
|
|
TEST_VARIATION(132, L"DBPROP is DBPROP_OTHERINSERT - S_OK")
|
|
TEST_VARIATION(133, L"DBPROP is DBPROP_OTHERUPDATEDELETE - S_OK")
|
|
TEST_VARIATION(134, L"DBPROP is DBPROP_OWNINSERT - S_OK")
|
|
TEST_VARIATION(135, L"DBPROP is DBPROP_OWNUPDATEDELETE - S_OK")
|
|
TEST_VARIATION(136, L"DBPROP is DBPROP_QUICKRESTART - S_OK")
|
|
TEST_VARIATION(137, L"DBPROP is DBPROP_REENTRANTEVENTS - S_OK")
|
|
TEST_VARIATION(138, L"DBPROP is DBPROP_REMOVEDELETED - S_OK")
|
|
TEST_VARIATION(139, L"DBPROP is DBPROP_REPORTMULTIPLECHANGES - S_OK")
|
|
TEST_VARIATION(140, L"DBPROP is DBPROP_RETURNPENDINGINSERTS - S_OK")
|
|
TEST_VARIATION(141, L"DBPROP is DBPROP_ROWRESTRICT - S_OK")
|
|
TEST_VARIATION(142, L"DBPROP is DBPROP_ROWSET_ASYNCH - S_OK")
|
|
TEST_VARIATION(143, L"DBPROP is DBPROP_ROWTHREADMODEL - S_OK")
|
|
TEST_VARIATION(144, L"DBPROP is DBPROP_SERVERCURSOR - S_OK")
|
|
TEST_VARIATION(145, L"DBPROP is DBPROP_TRANSACTEDOBJECT - S_OK")
|
|
TEST_VARIATION(146, L"DBPROP is DBPROP_UPDATABILITY - S_OK")
|
|
TEST_VARIATION(147, L"DBPROP is DBPROP_STRONGIDENTITY - S_OK")
|
|
TEST_VARIATION(148, L"DBPROP is DBPROP_IAccessor - S_OK")
|
|
TEST_VARIATION(149, L"DBPROP is DBPROP_IChapteredRowset - S_OK")
|
|
TEST_VARIATION(150, L"DBPROP is DBPROP_IColumnsInfo - S_OK")
|
|
TEST_VARIATION(151, L"DBPROP is DBPROP_IColumnsRowset - S_OK")
|
|
TEST_VARIATION(152, L"DBPROP is DBPROP_IConnectionPointContainer - S_OK")
|
|
TEST_VARIATION(153, L"DBPROP is DBPROP_IConvertType - S_OK")
|
|
TEST_VARIATION(154, L"DBPROP is DBPROP_IDBAsynchStatus - S_OK")
|
|
TEST_VARIATION(155, L"DBPROP is DBPROP_IRowset - S_OK")
|
|
TEST_VARIATION(156, L"DBPROP is DBPROP_IRowsetChange - S_OK")
|
|
TEST_VARIATION(157, L"DBPROP is DBPROP_IRowsetFind - S_OK")
|
|
TEST_VARIATION(158, L"DBPROP is DBPROP_IRowsetIdentity - S_OK")
|
|
TEST_VARIATION(159, L"DBPROP is DBPROP_IRowsetIndex - S_OK")
|
|
TEST_VARIATION(160, L"DBPROP is DBPROP_IRowsetInfo - S_OK")
|
|
TEST_VARIATION(161, L"DBPROP is DBPROP_IRowsetLocate - S_OK")
|
|
TEST_VARIATION(162, L"DBPROP is DBPROP_IRowsetResynch - S_OK")
|
|
TEST_VARIATION(163, L"DBPROP is DBPROP_IRowsetScroll - S_OK")
|
|
TEST_VARIATION(164, L"DBPROP is DBPROP_IRowsetUpdate - S_OK")
|
|
TEST_VARIATION(165, L"DBPROP is DBPROP_IRowsetView - S_OK")
|
|
TEST_VARIATION(166, L"DBPROP is DBPROP_IViewChapter - S_OK")
|
|
TEST_VARIATION(167, L"DBPROP is DBPROP_IViewFilter - S_OK")
|
|
TEST_VARIATION(168, L"DBPROP is DBPROP_IViewRowset - S_OK")
|
|
TEST_VARIATION(169, L"DBPROP is DBPROP_IViewSort - S_OK")
|
|
TEST_VARIATION(170, L"DBPROP is DBPROP_ILockBytes - S_OK")
|
|
TEST_VARIATION(171, L"DBPROP is DBPROP_ISequentialStream - S_OK")
|
|
TEST_VARIATION(172, L"DBPROP is DBPROP_IStorage - S_OK")
|
|
TEST_VARIATION(173, L"DBPROP is DBPROP_IStream - S_OK")
|
|
TEST_VARIATION(174, L"DBPROP is DBPROP_ISupportErrorInfo - S_OK")
|
|
TEST_VARIATION(175, L"DBPROP is DBPROP_ALTERCOLUMN - S_OK")
|
|
TEST_VARIATION(176, L"DBPROP is DBPROP_CONNECTIONSTATUS - S_OK")
|
|
TEST_VARIATION(177, L"DBPROP is DBPROP_PROVIDERFRIENDLYNAME - S_OK")
|
|
TEST_VARIATION(178, L"DBPROP is DBPROP_PROVIDERMEMORY - S_OK")
|
|
TEST_VARIATION(179, L"DBPROP is DBPROP_SERVERNAME - S_OK")
|
|
TEST_VARIATION(180, L"DBPROP is DBPROP_MULTIPLECONNECTIONS - S_OK")
|
|
TEST_VARIATION(181, L"DBPROP is DBPROP_RESETDATASOURCE - S_OK")
|
|
TEST_VARIATION(182, L"DBPROP is DBPROP_INIT_CATALOG - S_OK")
|
|
TEST_VARIATION(183, L"DBPROP is DBPROP_INIT_OLEDBSERVICES - S_OK")
|
|
TEST_VARIATION(184, L"DBPROP is DBPROP_COLUMNLCID - S_OK")
|
|
TEST_VARIATION(185, L"DBPROP is DBPROP_ACCESSORDER - S_OK")
|
|
TEST_VARIATION(186, L"DBPROP is DBPROP_BOOKMARKINFO - S_OK")
|
|
TEST_VARIATION(187, L"DBPROP is DBPROP_HIDDENCOLUMNS - S_OK")
|
|
TEST_VARIATION(188, L"DBPROP is DBPROP_LOCKMODE - S_OK")
|
|
TEST_VARIATION(189, L"DBPROP is DBPROP_NOTIFICATIONGRANULARITY - S_OK")
|
|
TEST_VARIATION(190, L"DBPROP is DBPROP_ROW_BULKOPS - S_OK")
|
|
TEST_VARIATION(191, L"DBPROP is DBPROP_SERVERDATAONINSERT - S_OK")
|
|
TEST_VARIATION(192, L"DBPROP is DBPROP_STORAGEFLAGS - S_OK")
|
|
TEST_VARIATION(193, L"DBPROP is DBPROP_UNIQUEROWS - S_OK")
|
|
TEST_VARIATION(194, L"DBPROP is DBPROP_IMultipleResults - S_OK")
|
|
TEST_VARIATION(195, L"DBPROP is DBPROP_IRowsetRefresh - S_OK")
|
|
TEST_VARIATION(196, L"DBPROP is DBPROP_IParentRowset - S_OK")
|
|
TEST_VARIATION(197, L"DBPROP is DBPROP_COL_INCREMENT - S_OK")
|
|
TEST_VARIATION(198, L"DBPROP is DBPROP_COL_ISLONG - S_OK")
|
|
TEST_VARIATION(199, L"DBPROP is DBPROP_COL_SEED - S_OK")
|
|
TEST_VARIATION(200, L"DBPROP is DBPROP_COMSERVICES - S_OK")
|
|
TEST_VARIATION(201, L"DBPROP is DBPROP_DATASOURCETYPE - S_OK")
|
|
TEST_VARIATION(202, L"DBPROP is DBPROP_GENERATEURL - S_OK")
|
|
TEST_VARIATION(203, L"DBPROP is DBPROP_OPENROWSETSUPPORT - S_OK")
|
|
TEST_VARIATION(204, L"DBPROP is DBPROP_INIT_BINDFLAGS - S_OK")
|
|
TEST_VARIATION(205, L"DBPROP is DBPROP_INIT_GENERALTIMEOUT - S_OK")
|
|
TEST_VARIATION(206, L"DBPROP is DBPROP_INIT_LOCKOWNER - S_OK")
|
|
TEST_VARIATION(207, L"DBPROP is DBPROP_CLIENTCURSOR - S_OK")
|
|
TEST_VARIATION(208, L"DBPROP is DBPROP_NOTIFYROWSETCHANGED - S_OK")
|
|
TEST_VARIATION(209, L"DBPROP is DBPROP_IBindResource - S_OK")
|
|
TEST_VARIATION(210, L"DBPROP is DBPROP_IColumnsInfo2 - S_OK")
|
|
TEST_VARIATION(211, L"DBPROP is DBPROP_ICreateRow - S_OK")
|
|
TEST_VARIATION(212, L"DBPROP is DBPROP_IGetRow - S_OK")
|
|
TEST_VARIATION(213, L"DBPROP is DBPROP_IGetSession - S_OK")
|
|
TEST_VARIATION(214, L"DBPROP is DBPROP_IGetSourceRow - S_OK")
|
|
TEST_VARIATION(215, L"DBPROP is DBPROP_IRow - S_OK")
|
|
TEST_VARIATION(216, L"DBPROP is DBPROP_IRowChange - S_OK")
|
|
TEST_VARIATION(217, L"DBPROP is DBPROP_IRowSchemaChange - S_OK")
|
|
TEST_VARIATION(218, L"DBPROP is DBPROP_IRowsetCurrentIndex - S_OK")
|
|
TEST_VARIATION(219, L"DBPROP is DBPROP_IScopedOperations - S_OK")
|
|
END_TEST_CASE()
|
|
#undef THE_CLASS
|
|
// }} TCW_TESTCASE_END
|
|
// }} TCW_TEST_CASE_MAP_END
|
|
|
|
|
|
// {{ TCW_TEST_CASE_MAP(TCZombie)
|
|
//--------------------------------------------------------------------
|
|
// @class Induce zombie states on the Session
|
|
//
|
|
class TCZombie : public CTransaction {
|
|
private:
|
|
// @cmember Static array of variations
|
|
DECLARE_TEST_CASE_DATA();
|
|
|
|
public:
|
|
// {{ TCW_DECLARE_FUNCS
|
|
// @cmember Execution Routine
|
|
DECLARE_TEST_CASE_FUNCS(TCZombie,CTransaction);
|
|
// }} TCW_DECLARE_FUNCS_END
|
|
|
|
// @cmember Initialization Routine
|
|
virtual BOOL Init();
|
|
// @cmember Termination Routine
|
|
virtual BOOL Terminate();
|
|
// @cmember TestTxn
|
|
int TestTxn(ETXN eTxn, BOOL fRetaining);
|
|
|
|
// {{ TCW_TESTVARS()
|
|
// @cmember S_OK - Abort ISessionProperties with fRetaining=TRUE
|
|
int Variation_1();
|
|
// @cmember S_OK - Abort ISessionProperties with fRetaining=FALSE
|
|
int Variation_2();
|
|
// @cmember S_OK - Commit ISessionProperties with fRetaining=TRUE
|
|
int Variation_3();
|
|
// @cmember S_OK - Commit ISessionProperties with fRetaining=FALSE
|
|
int Variation_4();
|
|
// }} TCW_TESTVARS_END
|
|
};
|
|
|
|
// {{ TCW_TESTCASE(TCZombie)
|
|
#define THE_CLASS TCZombie
|
|
BEG_TEST_CASE(TCZombie, CTransaction, L"Induce zombie states on the Session")
|
|
TEST_VARIATION(1, L"S_OK - Abort ISessionProperties with fRetaining=TRUE")
|
|
TEST_VARIATION(2, L"S_OK - Abort ISessionProperties with fRetaining=FALSE")
|
|
TEST_VARIATION(3, L"S_OK - Commit ISessionProperties with fRetaining=TRUE")
|
|
TEST_VARIATION(4, L"S_OK - Commit ISessionProperties with fRetaining=FALSE")
|
|
END_TEST_CASE()
|
|
#undef THE_CLASS
|
|
// }} TCW_TESTCASE_END
|
|
// }} TCW_TEST_CASE_MAP_END
|
|
|
|
|
|
// {{ TCW_TEST_CASE_MAP(TCExtendedErrors)
|
|
//--------------------------------------------------------------------
|
|
// @class Extended Errors
|
|
//
|
|
class TCExtendedErrors : public TCIDProperties {
|
|
private:
|
|
// @cmember Static array of variations
|
|
DECLARE_TEST_CASE_DATA();
|
|
|
|
public:
|
|
// {{ TCW_DECLARE_FUNCS
|
|
// @cmember Execution Routine
|
|
DECLARE_TEST_CASE_FUNCS(TCExtendedErrors,TCIDProperties);
|
|
// }} TCW_DECLARE_FUNCS_END
|
|
|
|
// @cmember Initialization Routine
|
|
virtual BOOL Init();
|
|
// @cmember Termination Routine
|
|
virtual BOOL Terminate();
|
|
|
|
// {{ TCW_TESTVARS()
|
|
// @cmember Valid GetProperties call with previous error object existing.
|
|
int Variation_1();
|
|
// @cmember DB_E_ERRORSOCCURRED GetProperties call with previous error object existing.
|
|
int Variation_2();
|
|
// @cmember E_INVALIDARG GetProperties call with previous error object existing.
|
|
int Variation_3();
|
|
// }} TCW_TESTVARS_END
|
|
};
|
|
|
|
// {{ TCW_TESTCASE(TCExtendedErrors)
|
|
#define THE_CLASS TCExtendedErrors
|
|
BEG_TEST_CASE(TCExtendedErrors, TCIDProperties, L"Extended Errors")
|
|
TEST_VARIATION(1, L"Valid GetProperties call with previous error object existing.")
|
|
TEST_VARIATION(2, L"DB_E_ERRORSOCCURRED GetProperties call with previous error object existing.")
|
|
TEST_VARIATION(3, L"E_INVALIDARG GetProperties call with previous error object existing.")
|
|
END_TEST_CASE()
|
|
#undef THE_CLASS
|
|
// }} TCW_TESTCASE_END
|
|
// }} TCW_TEST_CASE_MAP_END
|
|
|
|
// }} END_DECLARE_TEST_CASES()
|
|
|
|
// {{ TCW_TESTMODULE(ThisModule)
|
|
TEST_MODULE(4, ThisModule, gwszModuleDescrip)
|
|
TEST_CASE(1, TCIDProperties_Parameters)
|
|
TEST_CASE(2, TCIDProperties_SetProperties)
|
|
TEST_CASE(3, TCZombie)
|
|
TEST_CASE(4, TCExtendedErrors)
|
|
END_TEST_MODULE()
|
|
// }} TCW_TESTMODULE_END
|
|
|
|
|
|
// {{ TCW_TC_PROTOTYPE(TCIDProperties_Parameters)
|
|
//*-----------------------------------------------------------------------
|
|
//| Test Case: TCIDProperties_Parameters - ISessionProperties::Parameters
|
|
//| Created: 08/12/96
|
|
//| Updated: 04/25/98
|
|
//*-----------------------------------------------------------------------
|
|
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Initialization Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
BOOL TCIDProperties_Parameters::Init()
|
|
{
|
|
// {{ TCW_INIT_BASECLASS_CHECK
|
|
if( TCIDProperties::Init() )
|
|
// }}
|
|
{
|
|
//Get a IDBProperties pointer
|
|
TESTC(VerifyInterface(m_pThisTestModule->m_pIUnknown, IID_IDBProperties,
|
|
DATASOURCE_INTERFACE, (IUnknown **)&m_pIDBProperties));
|
|
|
|
//Get a ISessionProperties pointer
|
|
TESTC(VerifyInterface(m_pThisTestModule->m_pIUnknown2, IID_ISessionProperties,
|
|
SESSION_INTERFACE, (IUnknown **)&m_pISessionProperties));
|
|
|
|
//Initialize
|
|
m_cPropertyIDSets = 1;
|
|
m_rgPropertyIDSets->cPropertyIDs = 1;
|
|
m_rgPropertyIDSets->rgPropertyIDs = m_rgPropertyIDs;
|
|
m_rgPropertyIDSets->guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
//Get the default values if we have not done it already
|
|
if( !g_fInitGetPropDefault )
|
|
{
|
|
TESTC(InitGetPropDefault());
|
|
g_fInitGetPropDefault = TRUE;
|
|
}
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(1)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with a NULL pcPropertySets - E_INVALIDARG
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_1()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
//Null pcPropertySets should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, NULL, &m_prgPropertySets), E_INVALIDARG);
|
|
|
|
//Needs to be NULL on output
|
|
TESTC(!m_prgPropertySets);
|
|
|
|
CLEANUP:
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(2)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with a NULL prgPropertySets - E_INVALIDARG
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_2()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
//Null pcPropertySets should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, NULL), E_INVALIDARG);
|
|
|
|
//Needs to be NULL on output
|
|
TESTC(!m_pcPropertySets);
|
|
|
|
CLEANUP:
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(3)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with cPropertyIDSets!=0, rgPropertyIDSets=NULL - E_INVALIDARG
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_3()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
//Null pcPropertySets should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(2, NULL,
|
|
&m_pcPropertySets, &m_prgPropertySets), E_INVALIDARG);
|
|
|
|
//Needs to be NULL on output
|
|
TESTC(!m_pcPropertySets);
|
|
TESTC(!m_prgPropertySets);
|
|
|
|
CLEANUP:
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(4)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with cPropertyIDs!=0, rgPropertyIDs=NULL - E_INVALIDARG
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_4()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets->rgPropertyIDs = NULL;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets, m_rgPropertyIDSets,
|
|
&m_pcPropertySets, &m_prgPropertySets), E_INVALIDARG);
|
|
|
|
//Needs to be NULL on output
|
|
TESTC(!m_pcPropertySets);
|
|
TESTC(!m_prgPropertySets);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(5)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties DBPROPSET_PROPERTIESINERROR with cPropertyIDs>0 - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_5()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets->cPropertyIDs = 0;
|
|
m_rgPropertyIDSets->guidPropertySet = DBPROPSET_PROPERTIESINERROR;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(1, m_rgPropertyIDSets,
|
|
&m_pcPropertySets, &m_prgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Count of cPropertySets sets
|
|
TESTC(m_pcPropertySets == 1);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_prgPropertySets->cProperties == 0);
|
|
TESTC(m_prgPropertySets->rgProperties == NULL);
|
|
TESTC(m_prgPropertySets->guidPropertySet == DBPROPSET_PROPERTIESINERROR);
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(6)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties DBPROPSET_PROPERTIESINERROR with rgPropertyIDs != NULL - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_6()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets->cPropertyIDs = 0;
|
|
m_rgPropertyIDSets->guidPropertySet = DBPROPSET_PROPERTIESINERROR;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(1, m_rgPropertyIDSets,
|
|
&m_pcPropertySets, &m_prgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Count of cPropertySets sets
|
|
TESTC(m_pcPropertySets == 1);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_prgPropertySets->cProperties == 0);
|
|
TESTC(m_prgPropertySets->rgProperties == NULL);
|
|
TESTC(m_prgPropertySets->guidPropertySet == DBPROPSET_PROPERTIESINERROR);
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(7)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties DBPROPSET_PROPERTIESINERROR with 2 PropertyIDSets - DB_S_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_7()
|
|
{
|
|
TBEGIN
|
|
|
|
HRESULT Exphr = DB_S_ERRORSOCCURRED;
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = NULL;
|
|
m_rgPropertyIDSets[0].guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
m_rgPropertyIDSets[1].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[1].rgPropertyIDs = NULL;
|
|
m_rgPropertyIDSets[1].guidPropertySet = DBPROPSET_PROPERTIESINERROR;
|
|
|
|
//Check to see if the Session Property is Supported
|
|
if( !g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported )
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(2, m_rgPropertyIDSets,
|
|
&m_pcPropertySets, &m_prgPropertySets), Exphr);
|
|
|
|
//Count of cPropertySets sets
|
|
TESTC(m_pcPropertySets == 2);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
//Verify that the element of the array
|
|
if( SUCCEEDED(Exphr) )
|
|
{
|
|
TESTC(m_prgPropertySets[0].cProperties == 1);
|
|
TESTC(m_prgPropertySets[0].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
TESTC(m_prgPropertySets[0].rgProperties->colid.eKind == 0);
|
|
TESTC(V_VT(&m_prgPropertySets[0].rgProperties->vValue) == VT_I4);
|
|
}
|
|
else
|
|
{
|
|
TESTC(m_prgPropertySets[0].cProperties == 0);
|
|
TESTC(m_prgPropertySets[0].rgProperties == NULL);
|
|
TESTC(m_prgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
}
|
|
|
|
TESTC(m_prgPropertySets[1].cProperties == 0);
|
|
TESTC(m_prgPropertySets[1].rgProperties == NULL);
|
|
TESTC(m_prgPropertySets[1].guidPropertySet == DBPROPSET_PROPERTIESINERROR);
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(8)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with a supported and unsupported PropertySet - DB_S_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_8()
|
|
{
|
|
TBEGIN
|
|
|
|
HRESULT Exphr = DB_S_ERRORSOCCURRED;
|
|
DBPROPID rgPropertyIDs1 = 0;
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
//Get a settable DBInit or DataSourceInfo property
|
|
if( DBSessionNotSupported(&m_rgPropertyIDs[0]) )
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
|
|
// Assignments
|
|
m_cPropertyIDSets = 2;
|
|
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 1;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = &rgPropertyIDs1;
|
|
m_rgPropertyIDSets[0].guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
m_rgPropertyIDSets[1].cPropertyIDs = 1;
|
|
m_rgPropertyIDSets[1].rgPropertyIDs = &m_rgPropertyIDs[0];
|
|
m_rgPropertyIDSets[1].guidPropertySet = DBPROPSET_SESSION;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), Exphr);
|
|
|
|
//Count of cPropertySets sets
|
|
TESTC(m_pcPropertySets == 2);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_prgPropertySets[0].cProperties == 1);
|
|
TESTC(m_prgPropertySets[0].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwPropertyID == 0);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(m_prgPropertySets[0].rgProperties->colid.eKind == 0);
|
|
TESTC(V_VT(&m_prgPropertySets[0].rgProperties->vValue) == VT_EMPTY);
|
|
|
|
TESTC(m_prgPropertySets[1].cProperties == 1);
|
|
TESTC(m_prgPropertySets[1].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[1].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
if( SUCCEEDED(Exphr) )
|
|
{
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
TESTC(m_prgPropertySets[1].rgProperties->colid.eKind == 0);
|
|
}
|
|
else
|
|
{
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(m_prgPropertySets[1].rgProperties->colid.eKind == 0);
|
|
TESTC(V_VT(&m_prgPropertySets[1].rgProperties->vValue) == VT_EMPTY);
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(9)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with an unsupported PropertySet - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_9()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
//Get a settable DBInit or DataSourceInfo property
|
|
if( !DBSessionNotSupported(&m_rgPropertyIDs[0]) )
|
|
m_rgPropertyIDs[0] = 0;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Count of cPropertySets sets
|
|
TESTC(m_pcPropertySets == 1);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_prgPropertySets[0].cProperties == 1);
|
|
TESTC(m_prgPropertySets[0].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwPropertyID == m_rgPropertyIDs[0]);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(m_prgPropertySets[0].rgProperties->colid.eKind == 0);
|
|
TESTC(V_VT(&m_prgPropertySets[0].rgProperties->vValue) == VT_EMPTY);
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(10)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with cPropertyIDs!=0, rgPropertyID=NULL - E_INVALIDARG
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_10()
|
|
{
|
|
TBEGIN
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->SetProperties(1, NULL), E_INVALIDARG);
|
|
|
|
CLEANUP:
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(11)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with cProperties!=0, rgProperties=NULL - E_INVALIDARG
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_11()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets->rgProperties = NULL;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), E_INVALIDARG);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(12)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with a supported and unsupported PropertySet - DB_S_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_12()
|
|
{
|
|
TBEGIN
|
|
|
|
HRESULT Exphr = DB_S_ERRORSOCCURRED;
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].guidPropertySet = DBPROPSET_DBINIT;
|
|
|
|
//Get a not supported property
|
|
if( !DBInitNotSupported(&m_rgProperties[0].dwPropertyID) )
|
|
m_rgProperties[0].dwPropertyID = 0;
|
|
|
|
//Get a settable Session property
|
|
if( !g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported )
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
|
|
//Call SetProperties
|
|
TESTC_(m_pISessionProperties->SetProperties(2, m_rgPropertySets), Exphr);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwPropertyID == m_rgProperties[0].dwPropertyID);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(V_VT(&m_rgPropertySets[0].rgProperties->vValue) == VT_EMPTY);
|
|
TESTC(m_rgPropertySets[0].guidPropertySet == DBPROPSET_DBINIT);
|
|
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwPropertyID == m_rgProperties[1].dwPropertyID);
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported ) {
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
}
|
|
else {
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
}
|
|
TESTC(V_VT(&m_rgPropertySets[1].rgProperties->vValue) == VT_EMPTY);
|
|
TESTC(m_rgPropertySets[1].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(13)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with an unsupported PropertySet - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_13()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].guidPropertySet = DBPROPSET_DBINIT;
|
|
|
|
//Get a not supported property
|
|
if( !DBInitNotSupported(&m_rgProperties[0].dwPropertyID) )
|
|
m_rgProperties[0].dwPropertyID = 0;
|
|
|
|
//Call SetProperties
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwPropertyID == m_rgProperties[0].dwPropertyID);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(V_VT(&m_rgPropertySets[0].rgProperties->vValue) == VT_EMPTY);
|
|
TESTC(m_rgPropertySets[0].guidPropertySet == DBPROPSET_DBINIT);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(14)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc Compare DBPROP_SUPPORTEDTXNISOLEVELS with DBPROP_SESS_AUTOCOMMITISOLEVELS
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_14()
|
|
{
|
|
TBEGIN
|
|
|
|
ULONG_PTR ulSupportedTxnIsoLevels = 0;
|
|
ULONG_PTR ulAutocommitIsoLevels = 0;
|
|
|
|
//Call GetProperties
|
|
GetProperty(DBPROP_SUPPORTEDTXNISOLEVELS, DBPROPSET_DATASOURCEINFO,
|
|
m_pIDBProperties, &ulSupportedTxnIsoLevels);
|
|
|
|
//Call GetProperties
|
|
GetProperty(DBPROP_SESS_AUTOCOMMITISOLEVELS, DBPROPSET_SESSION,
|
|
m_pISessionProperties, &ulAutocommitIsoLevels);
|
|
|
|
//Compare both values should be the same
|
|
if( ulSupportedTxnIsoLevels || ulAutocommitIsoLevels )
|
|
TESTC(!!(ulSupportedTxnIsoLevels & ulAutocommitIsoLevels));
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(15)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with 0 for cPropertySets - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_15()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].guidPropertySet = DBPROPSET_DBINIT;
|
|
|
|
//Zero cPropertyIDSets should return S_OK
|
|
TESTC_(m_pISessionProperties->SetProperties(0, m_rgPropertySets), S_OK);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwPropertyID == m_rgProperties[0].dwPropertyID);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(V_VT(&m_rgPropertySets[0].rgProperties->vValue) == VT_EMPTY);
|
|
TESTC(m_rgPropertySets[0].guidPropertySet == DBPROPSET_DBINIT);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(16)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties and GetProperties with all Isolation Levels - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_16()
|
|
{
|
|
TBEGIN
|
|
|
|
ULONG_PTR ulSupportedTxnIsoLevels = 0;
|
|
ULONG ulTxnIsolations[] = {0, DBPROPVAL_TI_CHAOS, DBPROPVAL_TI_READUNCOMMITTED,
|
|
DBPROPVAL_TI_READCOMMITTED, DBPROPVAL_TI_REPEATABLEREAD,
|
|
DBPROPVAL_TI_SERIALIZABLE};
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
//Call GetProperties
|
|
GetProperty(DBPROP_SUPPORTEDTXNISOLEVELS, DBPROPSET_DATASOURCEINFO,
|
|
m_pIDBProperties, &ulSupportedTxnIsoLevels);
|
|
|
|
//Loop thru all of the ISO Levels
|
|
for(ULONG i=0; i < (sizeof(ulTxnIsolations)/sizeof(ulTxnIsolations[0])); i++)
|
|
{
|
|
//Assignments
|
|
m_rgPropertySets[0].rgProperties->vValue.vt = VT_I4;
|
|
m_rgPropertySets[0].rgProperties->vValue.lVal = ulTxnIsolations[i];
|
|
|
|
//Set all of the Isolation Levels
|
|
if( (!g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported) ||
|
|
((ulSupportedTxnIsoLevels != ulTxnIsolations[i]) &&
|
|
(!(ulSupportedTxnIsoLevels & ulTxnIsolations[i]))) )
|
|
{
|
|
TESTC_(m_hr=m_pISessionProperties->SetProperties(1, m_rgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
// Check the Status
|
|
if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported &&
|
|
g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSettable ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_BADVALUE);
|
|
}
|
|
else if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSETTABLE);
|
|
}
|
|
else {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
TESTC_(m_hr=m_pISessionProperties->SetProperties(1, m_rgPropertySets), S_OK);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
}
|
|
|
|
//Get all of the Isolation Levels
|
|
if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported )
|
|
{
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), S_OK);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
|
|
// If the SetProperties Succeeded
|
|
if( m_hr )
|
|
TESTC(m_prgPropertySets[0].rgProperties->vValue.lVal != (long)ulTxnIsolations[i]);
|
|
}
|
|
else
|
|
{
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), DB_E_ERRORSOCCURRED);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
}
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(17)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with cProperties=0, rgProperties=NULL - S_OK or DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_17()
|
|
{
|
|
TBEGIN
|
|
|
|
HRESULT Exphr = S_OK;
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = NULL;
|
|
|
|
if( !g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported )
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), Exphr);
|
|
|
|
//Count of cPropertySets sets
|
|
TESTC(m_pcPropertySets == 1);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
if( SUCCEEDED(Exphr) )
|
|
{
|
|
TESTC(m_prgPropertySets->cProperties == 1);
|
|
TESTC(m_prgPropertySets->rgProperties != NULL);
|
|
TESTC(m_prgPropertySets->guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
TESTC(m_prgPropertySets->rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets->rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
TESTC(m_prgPropertySets->rgProperties->colid.eKind == 0);
|
|
}
|
|
else
|
|
{
|
|
COMPARE(m_prgPropertySets->cProperties, 0);
|
|
COMPARE(m_prgPropertySets->rgProperties, NULL);
|
|
COMPARE(m_prgPropertySets->guidPropertySet, DBPROPSET_SESSION);
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(18)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with 0, NULL PropSets first - S_OK or DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_18()
|
|
{
|
|
TBEGIN
|
|
|
|
HRESULT Exphr = S_OK;
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_cPropertyIDSets=2;
|
|
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = NULL;
|
|
|
|
//Assignments
|
|
if( !g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported )
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), Exphr);
|
|
|
|
//Count of cPropertySets sets
|
|
TESTC(m_pcPropertySets == 2);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
//Verify that the element of the array
|
|
if( SUCCEEDED(Exphr) )
|
|
{
|
|
TESTC(m_prgPropertySets[0].cProperties == 1);
|
|
TESTC(m_prgPropertySets[0].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
TESTC(m_prgPropertySets[0].rgProperties->colid.eKind == 0);
|
|
}
|
|
else
|
|
{
|
|
TESTC(m_prgPropertySets[0].cProperties == 0);
|
|
TESTC(m_prgPropertySets[0].rgProperties == NULL);
|
|
TESTC(m_prgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
}
|
|
|
|
TESTC(m_prgPropertySets[1].cProperties == 1);
|
|
TESTC(m_prgPropertySets[1].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[1].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets[1].rgProperties->colid.eKind == 0);
|
|
|
|
if( SUCCEEDED(Exphr) )
|
|
{
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
}
|
|
else
|
|
{
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(V_VT(&m_prgPropertySets[1].rgProperties->vValue) == VT_EMPTY);
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(19)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with 0, NULL PropSets second - S_OK or DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_19()
|
|
{
|
|
TBEGIN
|
|
|
|
HRESULT Exphr = S_OK;
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_cPropertyIDSets = 2;
|
|
|
|
m_rgPropertyIDSets[1].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[1].rgPropertyIDs = NULL;
|
|
|
|
//Assignments
|
|
if( !g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported )
|
|
Exphr = DB_E_ERRORSOCCURRED;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), Exphr);
|
|
|
|
// Check the return values
|
|
TESTC(m_pcPropertySets == 2);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_prgPropertySets[0].cProperties == 1);
|
|
TESTC(m_prgPropertySets[0].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets[0].rgProperties->colid.eKind == 0);
|
|
|
|
if( SUCCEEDED(Exphr) ) {
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
|
|
TESTC(m_prgPropertySets[1].cProperties == 1);
|
|
TESTC(m_prgPropertySets[1].rgProperties != NULL);
|
|
TESTC(m_prgPropertySets[1].guidPropertySet == DBPROPSET_SESSION);
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
TESTC(m_prgPropertySets[1].rgProperties->dwPropertyID == DBPROP_SESS_AUTOCOMMITISOLEVELS);
|
|
TESTC(m_prgPropertySets[1].rgProperties->colid.eKind == 0);
|
|
}
|
|
else{
|
|
TESTC(m_prgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
|
|
TESTC(m_prgPropertySets[1].cProperties == 0);
|
|
TESTC(m_prgPropertySets[1].rgProperties == NULL);
|
|
TESTC(m_prgPropertySets[1].guidPropertySet == DBPROPSET_SESSION);
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(20)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with 0, NULL for cProperties and rgProperties - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_20()
|
|
{
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
//Assignments
|
|
m_rgPropertySets[0].cProperties = 0;
|
|
m_rgPropertySets[0].rgProperties = NULL;
|
|
|
|
//Call SetProperties
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), S_OK);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].cProperties == 0);
|
|
TESTC(m_rgPropertySets[0].rgProperties == NULL);
|
|
TESTC(m_rgPropertySets[0].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(21)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties DBPROPSET_SESSIONALL as the PropertySet - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_21()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = NULL;
|
|
m_rgPropertyIDSets->guidPropertySet = DBPROPSET_SESSIONALL;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
// Check the return values
|
|
TESTC(m_pcPropertySets == 1);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
TESTC(m_prgPropertySets->cProperties == 0);
|
|
TESTC(m_prgPropertySets->rgProperties == NULL);
|
|
TESTC(m_prgPropertySets->guidPropertySet == DBPROPSET_SESSIONALL);
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(22)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with DBPROPOPTIONS_OPTIONAL - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_22()
|
|
{
|
|
TBEGIN
|
|
|
|
HRESULT ExpHR = DB_E_ERRORSOCCURRED;
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].rgProperties->dwOptions = DBPROPOPTIONS_OPTIONAL;
|
|
m_rgPropertySets[0].guidPropertySet = DBPROPSET_DBINIT;
|
|
|
|
m_rgPropertySets[1].rgProperties->dwOptions = DBPROPOPTIONS_OPTIONAL;
|
|
|
|
//Get a not supported property
|
|
if( !DBInitNotSupported(&m_rgProperties[0].dwPropertyID) )
|
|
m_rgProperties[0].dwPropertyID = 0;
|
|
|
|
//Figure out the return code
|
|
if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported )
|
|
ExpHR = DB_S_ERRORSOCCURRED;
|
|
|
|
//Call SetProperties
|
|
TESTC_(m_pISessionProperties->SetProperties(2, m_rgPropertySets), ExpHR);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwPropertyID == m_rgProperties[0].dwPropertyID);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_OPTIONAL);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(V_VT(&m_rgPropertySets[0].rgProperties->vValue) == VT_EMPTY);
|
|
TESTC(m_rgPropertySets[0].guidPropertySet == DBPROPSET_DBINIT);
|
|
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwPropertyID == m_rgProperties[1].dwPropertyID);
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwOptions == DBPROPOPTIONS_OPTIONAL);
|
|
if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported ) {
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_OK);
|
|
}
|
|
else {
|
|
TESTC(m_rgPropertySets[1].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
}
|
|
TESTC(V_VT(&m_rgPropertySets[1].rgProperties->vValue) == VT_EMPTY);
|
|
TESTC(m_rgPropertySets[1].guidPropertySet == DBPROPSET_SESSION);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(23)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with an unsupported PropertySet with DBPROPOPTIONS_OPTIONAL - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_23()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].rgProperties->dwOptions = DBPROPOPTIONS_OPTIONAL;
|
|
m_rgPropertySets[0].guidPropertySet = DBPROPSET_DBINIT;
|
|
|
|
//Get a not supported property
|
|
if( !DBInitNotSupported(&m_rgProperties[0].dwPropertyID) )
|
|
m_rgProperties[0].dwPropertyID = 0;
|
|
|
|
//Call SetProperties
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwPropertyID == m_rgProperties[0].dwPropertyID);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_OPTIONAL);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
TESTC(V_VT(&m_rgPropertySets[0].rgProperties->vValue) == VT_EMPTY);
|
|
TESTC(m_rgPropertySets[0].guidPropertySet == DBPROPSET_DBINIT);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(24)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with 0, NULL, DBPROPSET_DBINIT - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_24()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = NULL;
|
|
m_rgPropertyIDSets[0].guidPropertySet = DBPROPSET_DBINIT;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
// Check the return values
|
|
TESTC(m_pcPropertySets == 1);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
TESTC(m_prgPropertySets->cProperties == 0);
|
|
TESTC(m_prgPropertySets->rgProperties == NULL);
|
|
TESTC(m_prgPropertySets->guidPropertySet == DBPROPSET_DBINIT);
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(25)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc GetProperties with 0, NULL, DBPROPSET_DBINITALL - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_25()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertyIDSets[0].cPropertyIDs = 0;
|
|
m_rgPropertyIDSets[0].rgPropertyIDs = NULL;
|
|
m_rgPropertyIDSets[0].guidPropertySet = DBPROPSET_DBINITALL;
|
|
|
|
//Should fail gracefully
|
|
TESTC_(m_pISessionProperties->GetProperties(m_cPropertyIDSets,
|
|
m_rgPropertyIDSets, &m_pcPropertySets, &m_prgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
// Check the return values
|
|
TESTC(m_pcPropertySets == 1);
|
|
TESTC(m_prgPropertySets != NULL);
|
|
|
|
TESTC(m_prgPropertySets->cProperties == 0);
|
|
TESTC(m_prgPropertySets->rgProperties == NULL);
|
|
TESTC(m_prgPropertySets->guidPropertySet == DBPROPSET_DBINITALL);
|
|
|
|
CLEANUP:
|
|
|
|
//Free the memory
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(26)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with invalid value - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_26()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].rgProperties->vValue.vt = VT_I4;
|
|
m_rgPropertySets[0].rgProperties->vValue.lVal = LONG_MAX;
|
|
|
|
//Zero cPropertyIDSets should return S_OK
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
|
|
if( !g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
}
|
|
else if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSettable ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_BADVALUE);
|
|
}
|
|
else if( m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSETTABLE ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSETTABLE);
|
|
}
|
|
else {
|
|
// Could be either DBPROPSTATUS_BADVALUE or DBPROPSTATUS_NOTSETTABLE
|
|
if( m_rgPropertySets[0].rgProperties->dwStatus != DBPROPSTATUS_NOTSETTABLE ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_BADVALUE);
|
|
}
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(27)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with Optional invalid value - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_27()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].rgProperties->dwOptions = DBPROPOPTIONS_OPTIONAL;
|
|
m_rgPropertySets[0].rgProperties->vValue.vt = VT_I4;
|
|
m_rgPropertySets[0].rgProperties->vValue.lVal = LONG_MAX;
|
|
|
|
//Zero cPropertyIDSets should return S_OK
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_OPTIONAL);
|
|
|
|
if( !g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSupported ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
}
|
|
else if( g_rgDBProperties[IDX_SESS_AUTOCOMMITISOLEVELS].fSettable ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_BADVALUE);
|
|
}
|
|
else if( m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSET ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSET);
|
|
}
|
|
else {
|
|
// Could be either DBPROPSTATUS_BADVALUE or DBPROPSTATUS_NOTSETTABLE
|
|
if( m_rgPropertySets[0].rgProperties->dwStatus != DBPROPSTATUS_NOTSET ) {
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_BADVALUE);
|
|
}
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(28)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc SetProperties with invalid propid - DB_E_ERRORSOCCURRED
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_Parameters::Variation_28()
|
|
{
|
|
TBEGIN
|
|
|
|
//Reset the Property Structures
|
|
ResetProperties();
|
|
|
|
// Assignments
|
|
m_rgProperties[0].dwPropertyID = 0;
|
|
|
|
//Zero cPropertyIDSets should return S_OK
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_REQUIRED);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
|
|
// Assignments
|
|
m_rgPropertySets[0].rgProperties->dwOptions = DBPROPOPTIONS_OPTIONAL;
|
|
|
|
//Zero cPropertyIDSets should return S_OK
|
|
TESTC_(m_pISessionProperties->SetProperties(1, m_rgPropertySets), DB_E_ERRORSOCCURRED);
|
|
|
|
//Verify that the element of the array
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwOptions == DBPROPOPTIONS_OPTIONAL);
|
|
TESTC(m_rgPropertySets[0].rgProperties->dwStatus == DBPROPSTATUS_NOTSUPPORTED);
|
|
|
|
CLEANUP:
|
|
|
|
TRETURN
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_TERMINATE_METHOD
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Termination Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
BOOL TCIDProperties_Parameters::Terminate()
|
|
{
|
|
// Release the Interfaces
|
|
SAFE_RELEASE(m_pISessionProperties);
|
|
SAFE_RELEASE(m_pIDBProperties);
|
|
|
|
// {{ TCW_TERM_BASECLASS_CHECK2
|
|
return(TCIDProperties::Terminate());
|
|
} // }}
|
|
// }}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_TC_PROTOTYPE(TCIDProperties_SetProperties)
|
|
//*-----------------------------------------------------------------------
|
|
//| Test Case: TCIDProperties_SetProperties - set all supported properties
|
|
//| Created: 09/19/96
|
|
//| Updated: 04/25/98
|
|
//*-----------------------------------------------------------------------
|
|
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Initialization Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
BOOL TCIDProperties_SetProperties::Init()
|
|
{
|
|
// {{ TCW_INIT_BASECLASS_CHECK
|
|
if( TCIDProperties::Init() )
|
|
// }}
|
|
{
|
|
//Get a IDBProperties pointer
|
|
TESTC(VerifyInterface(m_pThisTestModule->m_pIUnknown, IID_IDBProperties,
|
|
DATASOURCE_INTERFACE, (IUnknown **)&m_pIDBProperties));
|
|
|
|
//Get a ISessionProperties pointer
|
|
TESTC(VerifyInterface(m_pThisTestModule->m_pIUnknown2, IID_ISessionProperties,
|
|
SESSION_INTERFACE, (IUnknown **)&m_pISessionProperties));
|
|
|
|
// Get the default values if we have not done it already
|
|
if( !g_fInitGetPropDefault )
|
|
{
|
|
TESTC(InitGetPropDefault());
|
|
g_fInitGetPropDefault = TRUE;
|
|
}
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
CLEANUP:
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(1)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ACTIVESESSIONS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_1()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ACTIVESESSIONS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(2)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ASYNCTXNABORT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_2()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ASYNCTXNABORT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(3)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ASYNCTXNCOMMIT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_3()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ASYNCTXNCOMMIT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(4)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_BYREFACCESSORS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_4()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_BYREFACCESSORS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(5)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CATALOGLOCATION - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_5()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CATALOGLOCATION));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(6)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CATALOGTERM - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_6()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CATALOGTERM));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(7)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CATALOGUSAGE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_7()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CATALOGUSAGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(8)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COLUMNDEFINITION - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_8()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COLUMNDEFINITION));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(9)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CONCATNULLBEHAVIOR - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_9()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CONCATNULLBEHAVIOR));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(10)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DATASOURCENAME - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_10()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DATASOURCENAME));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(11)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DATASOURCEREADONLY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_11()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DATASOURCEREADONLY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(12)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DBMSNAME - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_12()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DBMSNAME));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(13)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DBMSVER - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_13()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DBMSVER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(14)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DSOTHREADMODEL - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_14()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DSOTHREADMODEL));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(15)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_GROUPBY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_15()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_GROUPBY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(16)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_HETEROGENEOUSTABLES - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_16()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_HETEROGENEOUSTABLES));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(17)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IDENTIFIERCASE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_17()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IDENTIFIERCASE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(18)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXINDEXSIZE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_18()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXINDEXSIZE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(19)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXOPENCHAPTERS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_19()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXOPENCHAPTERS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(20)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXORSINFILTER - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_20()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXORSINFILTER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(21)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXROWSIZE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_21()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXROWSIZE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(22)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXROWSIZEINCLUDESBLOB - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_22()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXROWSIZEINCLUDESBLOB));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(23)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXSORTCOLUMNS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_23()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXSORTCOLUMNS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(24)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXTABLESINSELECT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_24()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXTABLESINSELECT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(25)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MULTIPLEPARAMSETS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_25()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MULTIPLEPARAMSETS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(26)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MULTIPLERESULTS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_26()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MULTIPLERESULTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(27)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MULTIPLESTORAGEOBJECTS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_27()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MULTIPLESTORAGEOBJECTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(28)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MULTITABLEUPDATE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_28()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MULTITABLEUPDATE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(29)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NULLCOLLATION - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_29()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NULLCOLLATION));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(30)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_OLEOBJECTS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_30()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_OLEOBJECTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(31)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ORDERBYCOLUMNSINSELECT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_31()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ORDERBYCOLUMNSINSELECT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(32)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_OUTPUTPARAMETERAVAILABILITY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_32()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_OUTPUTPARAMETERAVAILABILITY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(33)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PERSISTENTIDTYPE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_33()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PERSISTENTIDTYPE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(34)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PREPAREABORTBEHAVIOR - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_34()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PREPAREABORTBEHAVIOR));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(35)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PREPARECOMMITBEHAVIOR - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_35()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PREPARECOMMITBEHAVIOR));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(36)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PROCEDURETERM - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_36()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PROCEDURETERM));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(37)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PROVIDERNAME - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_37()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PROVIDERFILENAME));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(38)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PROVIDEROLEDBVER - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_38()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PROVIDEROLEDBVER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(39)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PROVIDERVER - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_39()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PROVIDERVER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(40)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_QUOTEDIDENTIFIERCASE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_40()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_QUOTEDIDENTIFIERCASE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(41)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ROWSETCONVERSIONSONCOMMAND - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_41()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ROWSETCONVERSIONSONCOMMAND));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(42)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SCHEMATERM - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_42()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SCHEMATERM));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(43)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SCHEMAUSAGE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_43()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SCHEMAUSAGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(44)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SORTONINDEX - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_44()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SORTONINDEX));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(45)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SQLSUPPORT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_45()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SQLSUPPORT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(46)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_STRUCTUREDSTORAGE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_46()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_STRUCTUREDSTORAGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(47)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SUBQUERIES - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_47()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SUBQUERIES));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(48)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SUPPORTEDTXNDDL - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_48()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SUPPORTEDTXNDDL));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(49)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SUPPORTEDTXNISOLEVELS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_49()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SUPPORTEDTXNISOLEVELS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(50)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SUPPORTEDTXNISORETAIN - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_50()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SUPPORTEDTXNISORETAIN));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(51)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_TABLETERM - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_51()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_TABLETERM));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(52)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_USERNAME - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_52()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_USERNAME));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(53)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CURRENTCATALOG - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_53()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CURRENTCATALOG));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(54)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_CACHE_AUTHINFO - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_54()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_CACHE_AUTHINFO));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(55)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_ENCRYPT_PASSWORD - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_55()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_ENCRYPT_PASSWORD));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(56)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_INTEGRATED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_56()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_INTEGRATED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(57)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_MASK_PASSWORD - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_57()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_MASK_PASSWORD));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(58)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_PASSWORD - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_58()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_PASSWORD));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(59)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_PERSIST_ENCRYPTED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_59()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_PERSIST_ENCRYPTED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(60)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_60()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_PERSIST_SENSITIVE_AUTHINFO));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(61)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_AUTH_USERID - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_61()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_AUTH_USERID));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(62)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_ASYNCH - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_62()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_ASYNCH));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(63)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_DATASOURCE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_63()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_DATASOURCE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(64)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_HWND - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_64()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_HWND));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(65)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_IMPERSONATION_LEVEL - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_65()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_IMPERSONATION_LEVEL));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(66)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_LCID - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_66()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_LCID));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(67)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_LOCATION - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_67()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_LOCATION));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(68)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_MODE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_68()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_MODE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(69)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_PROMPT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_69()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_PROMPT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(70)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_PROTECTION_LEVEL - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_70()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_PROTECTION_LEVEL));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(71)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_PROVIDERSTRING - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_71()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_PROVIDERSTRING));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(72)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_TIMEOUT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_72()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_TIMEOUT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(73)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_AUTOINCREMENT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_73()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_AUTOINCREMENT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(74)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_DEFAULT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_74()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_DEFAULT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(75)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_DESCRIPTION - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_75()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_DESCRIPTION));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(76)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_FIXEDLENGTH - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_76()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_FIXEDLENGTH));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(77)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_NULLABLE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_77()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_NULLABLE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(78)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_PRIMARYKEY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_78()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_PRIMARYKEY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(79)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_UNIQUE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_79()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_UNIQUE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(80)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_AUTOUPDATE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_80()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_AUTOUPDATE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(81)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_CLUSTERED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_81()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_CLUSTERED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(82)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_FILLFACTOR - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_82()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_FILLFACTOR));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(83)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_INITIALSIZE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_83()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_INITIALSIZE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(84)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_NULLCOLLATION - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_84()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_NULLCOLLATION));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(85)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_NULLS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_85()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_NULLS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(86)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_PRIMARYKEY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_86()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_PRIMARYKEY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(87)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_SORTBOOKMARKS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_87()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_SORTBOOKMARKS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(88)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_TEMPINDEX - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_88()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_TEMPINDEX));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(89)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_TYPE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_89()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_TYPE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(90)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INDEX_UNIQUE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_90()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INDEX_UNIQUE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(91)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SESS_AUTOCOMMITISOLEVELS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_91()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SESS_AUTOCOMMITISOLEVELS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(92)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_TBL_TEMPTABLE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_92()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_TBL_TEMPTABLE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(93)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ABORTPRESERVE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_93()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ABORTPRESERVE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(94)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_APPENDONLY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_94()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_APPENDONLY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(95)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_BLOCKINGSTORAGEOBJECTS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_95()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_BLOCKINGSTORAGEOBJECTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(96)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_BOOKMARKS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_96()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_BOOKMARKS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(97)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_BOOKMARKSKIPPED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_97()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_BOOKMARKSKIPPED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(98)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_BOOKMARKTYPE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_98()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_BOOKMARKTYPE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(99)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CACHEDEFERRED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_99()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CACHEDEFERRED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(100)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CANFETCHBACKWARDS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_100()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CANFETCHBACKWARDS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(101)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CANHOLDROWS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_101()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CANHOLDROWS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(102)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CANSCROLLBACKWARDS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_102()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CANSCROLLBACKWARDS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(103)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CHANGEINSERTEDROWS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_103()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CHANGEINSERTEDROWS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(104)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COLUMNRESTRICT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_104()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COLUMNRESTRICT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(105)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COMMANDTIMEOUT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_105()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COMMANDTIMEOUT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(106)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COMMITPRESERVE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_106()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COMMITPRESERVE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(107)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DEFERRED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_107()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DEFERRED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(108)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DELAYSTORAGEOBJECTS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_108()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DELAYSTORAGEOBJECTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(109)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_FILTERCOMPAREOPS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_109()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_FILTERCOMPAREOPS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(110)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_FINDCOMPAREOPS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_110()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_FINDCOMPAREOPS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(111)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IMMOBILEROWS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_111()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IMMOBILEROWS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(112)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_LITERALBOOKMARKS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_112()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_LITERALBOOKMARKS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(113)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_LITERALIDENTITY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_113()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_LITERALIDENTITY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(114)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXOPENROWS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_114()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXOPENROWS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(115)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXPENDINGROWS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_115()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXPENDINGROWS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(116)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAXROWS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_116()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAXROWS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(117)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MAYWRITECOLUMN - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_117()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MAYWRITECOLUMN));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(118)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MEMORYUSAGE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_118()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MEMORYUSAGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(119)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFICATIONPHASES - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_119()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFICATIONPHASES));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(120)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYCOLUMNSET - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_120()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYCOLUMNSET));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(121)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWDELETE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_121()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWDELETE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(122)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWFIRSTCHANGE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_122()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWFIRSTCHANGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(123)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWINSERT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_123()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWINSERT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(124)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWRESYNCH - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_124()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWRESYNCH));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(125)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWSETRELEASE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_125()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWSETRELEASE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(126)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWSETFETCHPOSITIONCHANGE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_126()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWSETFETCHPOSITIONCHANGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(127)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWUNDOCHANGE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_127()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWUNDOCHANGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(128)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWUNDODELETE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_128()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWUNDODELETE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(129)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWUNDOINSERT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_129()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWUNDOINSERT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(130)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWUPDATE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_130()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWUPDATE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(131)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ORDEREDBOOKMARKS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_131()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ORDEREDBOOKMARKS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(132)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_OTHERINSERT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_132()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_OTHERINSERT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(133)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_OTHERUPDATEDELETE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_133()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_OTHERUPDATEDELETE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(134)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_OWNINSERT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_134()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_OWNINSERT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(135)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_OWNUPDATEDELETE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_135()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_OWNUPDATEDELETE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(136)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_QUICKRESTART - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_136()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_QUICKRESTART));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(137)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_REENTRANTEVENTS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_137()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_REENTRANTEVENTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(138)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_REMOVEDELETED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_138()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_REMOVEDELETED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(139)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_REPORTMULTIPLECHANGES - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_139()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_REPORTMULTIPLECHANGES));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(140)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_RETURNPENDINGINSERTS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_140()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_RETURNPENDINGINSERTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(141)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ROWRESTRICT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_141()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ROWRESTRICT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(142)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ROWSET_ASYNCH - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_142()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ROWSET_ASYNCH));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(143)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ROWTHREADMODEL - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_143()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ROWTHREADMODEL));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(144)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SERVERCURSOR - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_144()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SERVERCURSOR));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(145)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_TRANSACTEDOBJECT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_145()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_TRANSACTEDOBJECT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(146)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_UPDATABILITY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_146()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_UPDATABILITY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(147)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_STRONGIDENTITY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_147()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_STRONGIDENTITY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(148)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IAccessor - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_148()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IACCESSOR));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(149)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IChapteredRowset - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_149()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ICHAPTEREDROWSET));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(150)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IColumnsInfo - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_150()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ICOLUMNSINFO));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(151)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IColumnsRowset - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_151()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ICOLUMNSROWSET));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(152)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IConnectionPointContainer - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_152()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ICONNECTIONPOINTCONTAINER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(153)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IConvertType - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_153()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ICONVERTTYPE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(154)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IDBAsynchStatus - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_154()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IDBASYNCHSTATUS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(155)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowset - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_155()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSET));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(156)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetChange - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_156()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETCHANGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(157)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetFind - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_157()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETFIND));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(158)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetIdentity - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_158()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETIDENTITY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(159)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetIndex - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_159()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETINDEX));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(160)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetInfo - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_160()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETINFO));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(161)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetLocate - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_161()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETLOCATE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(162)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetResynch - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_162()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETRESYNCH));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(163)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetScroll - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_163()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETSCROLL));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(164)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetUpdate - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_164()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETUPDATE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(165)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetView - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_165()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETVIEW));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(166)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IViewChapter - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_166()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IVIEWCHAPTER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(167)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IViewFilter - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_167()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IVIEWFILTER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(168)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IViewRowset - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_168()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IVIEWROWSET));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(169)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IViewSort - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_169()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IVIEWSORT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(170)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ILockBytes - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_170()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ILOCKBYTES));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(171)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ISequentialStream - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_171()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ISEQUENTIALSTREAM));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(172)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IStorage - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_172()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ISTORAGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(173)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IStream - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_173()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ISTREAM));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(174)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ISupportErrorInfo - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_174()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ISUPPORTERRORINFO));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(175)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ALTERCOLUMN - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_175()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ALTERCOLUMN));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(176)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CONNECTIONSTATUS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_176()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CONNECTIONSTATUS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(177)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PROVIDERFRIENDLYNAME - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_177()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PROVIDERFRIENDLYNAME));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(178)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_PROVIDERMEMORY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_178()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_PROVIDERMEMORY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(179)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SERVERNAME - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_179()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SERVERNAME));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(180)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_MULTIPLECONNECTIONS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_180()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_MULTIPLECONNECTIONS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(181)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_RESETDATASOURCE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_181()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_RESETDATASOURCE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(182)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_CATALOG - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_182()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_CATALOG));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(183)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_OLEDBSERVICES - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_183()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_OLEDBSERVICES));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(184)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COLUMNLCID - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_184()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COLUMNLCID));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(185)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ACCESSORDER - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_185()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ACCESSORDER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(186)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_BOOKMARKINFO - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_186()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_BOOKMARKINFO));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(187)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_HIDDENCOLUMNS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_187()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_HIDDENCOLUMNS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(188)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_LOCKMODE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_188()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_LOCKMODE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(189)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFICATIONGRANULARITY - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_189()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFICATIONGRANULARITY));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(190)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ROW_BULKOPS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_190()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ROW_BULKOPS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(191)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_SERVERDATAONINSERT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_191()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_SERVERDATAONINSERT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(192)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_STORAGEFLAGS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_192()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_STORAGEFLAGS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(193)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_UNIQUEROWS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_193()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_UNIQUEROWS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(194)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IMultipleResults - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_194()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IMULTIPLERESULTS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(195)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetRefresh - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_195()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETREFRESH));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(196)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IParentRowset - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_196()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IPARENTROWSET));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(197)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_INCREMENT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_197()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_INCREMENT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(198)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_ISLONG - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_198()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_ISLONG));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(199)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COL_SEED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_199()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COL_SEED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(200)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_COMSERVICES - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_200()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_COMSERVICES));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(201)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_DATASOURCETYPE - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_201()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_DATASOURCETYPE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(202)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_GENERATEURL - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_202()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_GENERATEURL));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(203)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_OPENROWSETSUPPORT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_203()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_OPENROWSETSUPPORT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(204)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_BINDFLAGS - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_204()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_BINDFLAGS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(205)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_GENERALTIMEOUT - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_205()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_GENERALTIMEOUT));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(206)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_INIT_LOCKOWNER - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_206()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_INIT_LOCKOWNER));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(207)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_CLIENTCURSOR - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_207()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_CLIENTCURSOR));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(208)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_NOTIFYROWSETCHANGED - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_208()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_NOTIFYROWSETCHANGED));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(209)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IBindResource - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_209()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IBINDRESOURCE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(210)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IColumnsInfo2 - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_210()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ICOLUMNSINFO2));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(211)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_ICreateRow - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_211()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ICREATEROW));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(212)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IGetRow - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_212()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IGETROW));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(213)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IGetSession - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_213()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IGETSESSION));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(214)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IGetSourceRow - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_214()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IGETSOURCEROW));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(215)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRow - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_215()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROW));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(216)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowChange - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_216()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWCHANGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(217)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowSchemaChange - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_217()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSCHEMACHANGE));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(218)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IRowsetCurrentIndex - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_218()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_IROWSETCURRENTINDEX));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(219)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DBPROP is DBPROP_IScopedOperations - S_OK
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCIDProperties_SetProperties::Variation_219()
|
|
{
|
|
TBEGIN;
|
|
|
|
// Verify this property
|
|
TESTC(VerifyProperty(IDX_ISCOPEDOPERATIONS));
|
|
|
|
CLEANUP:
|
|
TRETURN;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_TERMINATE_METHOD
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Termination Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
BOOL TCIDProperties_SetProperties::Terminate()
|
|
{
|
|
// Release the Interfaces
|
|
SAFE_RELEASE(m_pIDBProperties)
|
|
SAFE_RELEASE(m_pISessionProperties);
|
|
|
|
// {{ TCW_TERM_BASECLASS_CHECK2
|
|
return (TCIDProperties::Terminate());
|
|
} // }}
|
|
// }}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_TC_PROTOTYPE(TCZombie)
|
|
//*-----------------------------------------------------------------------
|
|
//| Test Case: TCZombie - Induce zombie states on the Session
|
|
//| Created: 08/15/96
|
|
//| Updated: 04/25/98
|
|
//*-----------------------------------------------------------------------
|
|
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Initialization Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
BOOL TCZombie::Init()
|
|
{
|
|
// Check to see if Transactions are usable
|
|
if(!IsUsableInterface(SESSION_INTERFACE, IID_ITransactionLocal))
|
|
return TEST_SKIPPED;
|
|
|
|
// Initialize to a invalid pointer
|
|
m_pITransactionLocal = INVALID(ITransactionLocal*);
|
|
|
|
// {{ TCW_INIT_BASECLASS_CHECK
|
|
if(CTransaction::Init())
|
|
// }}
|
|
{
|
|
// Register Interface with Zombie
|
|
if(RegisterInterface(SESSION_INTERFACE, IID_ISessionProperties, 0, NULL))
|
|
return TRUE;
|
|
}
|
|
|
|
// Check to see if ITransaction is supported
|
|
if(!m_pITransactionLocal)
|
|
return TEST_SKIPPED;
|
|
|
|
// Clear the bad pointer value
|
|
if(m_pITransactionLocal == INVALID(ITransactionLocal*))
|
|
m_pITransactionLocal = NULL;
|
|
|
|
return FALSE;
|
|
}
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(1)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc S_OK - Abort ISessionProperties with fRetaining=TRUE
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCZombie::Variation_1()
|
|
{
|
|
// S_OK - Abort ISessionProperties::GetProperties with fRetaining=TRUE
|
|
return TestTxn(ETXN_ABORT, TRUE);
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(2)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc S_OK - Abort ISessionProperties with fRetaining=FALSE
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCZombie::Variation_2()
|
|
{
|
|
// S_OK - Abort ISessionProperties::GetProperties with fRetaining=FALSE
|
|
return TestTxn(ETXN_ABORT, FALSE);
|
|
}
|
|
// }}
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(3)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc S_OK - Commit ISessionProperties with fRetaining=TRUE
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCZombie::Variation_3()
|
|
{
|
|
// S_OK - Commit ISessionProperties::GetProperties with fRetaining=TRUE
|
|
return TestTxn(ETXN_COMMIT, TRUE);
|
|
}
|
|
// }}
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(4)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc S_OK - Commit ISessionProperties with fRetaining=FALSE
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCZombie::Variation_4()
|
|
{
|
|
// S_OK - Commit ISessionProperties::GetProperties with fRetaining=FALSE
|
|
return TestTxn(ETXN_COMMIT, FALSE);
|
|
}
|
|
// }}
|
|
|
|
// {{ TCW_TERMINATE_METHOD
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Termination Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
BOOL TCZombie::Terminate()
|
|
{
|
|
// {{ TCW_TERM_BASECLASS_CHECK2
|
|
return(CTransaction::Terminate());
|
|
} // }}
|
|
// }}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_TC_PROTOTYPE(TCExtendedErrors)
|
|
//*-----------------------------------------------------------------------
|
|
//| Test Case: TCExtendedErrors - Extended Errors
|
|
//| Created: 07/04/96
|
|
//| Updated: 04/25/98
|
|
//*-----------------------------------------------------------------------
|
|
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Initialization Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
|
|
BOOL TCExtendedErrors::Init()
|
|
{
|
|
// {{ TCW_INIT_BASECLASS_CHECK
|
|
if(TCIDProperties::Init())
|
|
// }}
|
|
{
|
|
//Get a ISessionProperties pointer
|
|
if(!SUCCEEDED(((IDBCreateCommand *)(m_pThisTestModule->m_pIUnknown2))->
|
|
QueryInterface(IID_ISessionProperties,(LPVOID *)&m_pISessionProperties)))
|
|
return FALSE;
|
|
|
|
m_cPropertyIDSets=1;
|
|
m_rgPropertyIDSets->rgPropertyIDs=m_rgPropertyIDs;
|
|
m_rgPropertyIDSets->cPropertyIDs=1;
|
|
m_rgPropertyIDSets->guidPropertySet=DBPROPSET_SESSION;
|
|
|
|
return TRUE;
|
|
}
|
|
return FALSE;
|
|
}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(1)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc Valid GetProperties call with previous error object existing.
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCExtendedErrors::Variation_1()
|
|
{
|
|
// For method GetProperties of the interface, first create an error object on
|
|
// the current thread, then try get S_OK from the method.
|
|
// We then check extended errors to verify nothing is set since an
|
|
// error object shouldn't exist following a successful call.
|
|
|
|
// Assignments
|
|
m_fSuccess = TEST_FAIL;
|
|
|
|
//Create an error object
|
|
m_pExtError->CauseError();
|
|
|
|
//All properties
|
|
m_hr=m_pISessionProperties->GetProperties(0, NULL,
|
|
&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
if(m_hr==ResultFromScode(S_OK))
|
|
{
|
|
//Do extended check following GetProperties
|
|
m_fSuccess = XCHECK(m_pISessionProperties, IID_ISessionProperties, m_hr);
|
|
}
|
|
|
|
//Free memory from GetProperties
|
|
FreeProperties(&m_pcPropertySets, &m_prgPropertySets);
|
|
return m_fSuccess;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(2)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc DB_E_ERRORSOCCURRED GetProperties call with previous error object existing.
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCExtendedErrors::Variation_2()
|
|
{
|
|
//For method GetProperties of the interface, first create an error object on
|
|
//the current thread, then try get an failure from the method.
|
|
//We then check extended errors to verify the right extended error behavior.
|
|
|
|
//Assignments
|
|
m_rgPropertyIDs[0] = DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO;
|
|
m_rgPropertyIDSets->guidPropertySet=DBPROPSET_DBINIT;
|
|
m_fSuccess = TEST_FAIL;
|
|
|
|
//Create an error object
|
|
m_pExtError->CauseError();
|
|
|
|
//DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO
|
|
m_hr=m_pISessionProperties->GetProperties(m_cPropertyIDSets, m_rgPropertyIDSets,
|
|
&m_pcPropertySets, &m_prgPropertySets);
|
|
|
|
if(m_hr==ResultFromScode(DB_E_ERRORSOCCURRED))
|
|
{
|
|
//Do extended check following GetProperties
|
|
m_fSuccess = XCHECK(m_pISessionProperties, IID_ISessionProperties, m_hr);
|
|
}
|
|
|
|
//Free memory from GetProperties
|
|
FreeProperties( &m_pcPropertySets, &m_prgPropertySets);
|
|
return m_fSuccess;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_VAR_PROTOTYPE(3)
|
|
//*-----------------------------------------------------------------------
|
|
// @mfunc E_INVALIDARG GetProperties call with previous error object existing.
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCExtendedErrors::Variation_3()
|
|
{
|
|
//For method GetProperties of the interface, with no error object on
|
|
//the current thread, then try get an failure from the method.
|
|
//We then check extended errors to verify the right extended error behavior.
|
|
|
|
//Assignments
|
|
m_fSuccess = TEST_FAIL;
|
|
|
|
//Null pcPropertySets should fail gracefully
|
|
if(CHECK(m_hr=m_pISessionProperties->GetProperties(0, NULL,
|
|
NULL, &m_prgPropertySets), E_INVALIDARG))
|
|
{
|
|
//Do extended check following GetProperties
|
|
m_fSuccess = XCHECK(m_pISessionProperties, IID_ISessionProperties, m_hr);
|
|
if(!m_prgPropertySets)
|
|
m_fSuccess &= TEST_PASS;
|
|
}
|
|
|
|
return m_fSuccess;
|
|
}
|
|
// }}
|
|
|
|
|
|
// {{ TCW_TERMINATE_METHOD
|
|
//--------------------------------------------------------------------
|
|
// @mfunc TestCase Termination Routine
|
|
//
|
|
// @rdesc TRUE or FALSE
|
|
//
|
|
BOOL TCExtendedErrors::Terminate()
|
|
{
|
|
// Release IDBInitialize Pointer
|
|
SAFE_RELEASE(m_pISessionProperties);
|
|
|
|
// {{ TCW_TERM_BASECLASS_CHECK2
|
|
return(TCIDProperties::Terminate());
|
|
} // }}
|
|
|
|
// }}
|
|
|
|
//--------------------------------------------------------------------
|
|
// @mfunc Test Zombie cases
|
|
//
|
|
// @rdesc TEST_PASS or TEST_FAIL
|
|
//
|
|
int TCZombie::TestTxn(ETXN eTxn, BOOL fRetaining)
|
|
{
|
|
TBEGIN;
|
|
|
|
int fPassFail = TEST_FAIL; // ReturnValue
|
|
HRESULT ExpectedHr = E_UNEXPECTED; // Expected HRESULT
|
|
DBCOUNTITEM cRowsObtained = 0; // Number of rows returned, should be 1
|
|
HROW * rghRows = NULL; // Array of Row Handles
|
|
ISessionProperties* pISessionProperties = NULL; // ISessionProperties Pointer
|
|
ULONG cPropertySets = 0;
|
|
DBPROPSET * pPropertySets = NULL;
|
|
|
|
// Retrieve an Interface pointer to ISessionProperties within a Transaction
|
|
TESTC(StartTransaction(SELECT_ALLFROMTBL, (IUnknown**)&pISessionProperties));
|
|
|
|
// Obtain the ABORT or COMMIT PRESERVE flag and adjust ExpectedHr
|
|
if( ((eTxn == ETXN_COMMIT) && (m_fCommitPreserve)) ||
|
|
((eTxn == ETXN_ABORT) && (m_fAbortPreserve)) )
|
|
ExpectedHr = S_OK;
|
|
|
|
// Commit or Abort the transaction, with retention as specified
|
|
if( ((eTxn == ETXN_COMMIT) && (!GetCommit(fRetaining))) ||
|
|
((eTxn == ETXN_ABORT) && (!GetAbort(fRetaining))) )
|
|
goto CLEANUP;
|
|
|
|
// Test zombie
|
|
TESTC_(m_pIRowset->GetNextRows(0,0,1,&cRowsObtained,&rghRows), ExpectedHr);
|
|
|
|
// Call ISessionProperties::GetProperties
|
|
TESTC_(pISessionProperties->GetProperties(0,NULL,&cPropertySets,&pPropertySets),S_OK);
|
|
|
|
CLEANUP:
|
|
|
|
// Release the row handle on the 1st rowset
|
|
CHECK(m_pIRowset->ReleaseRows(cRowsObtained, rghRows, NULL, NULL, NULL), S_OK);
|
|
PROVIDER_FREE(rghRows);
|
|
|
|
// Cleanup Transactions
|
|
CleanUpTransaction(fRetaining ? S_OK : XACT_E_NOTRANSACTION);
|
|
|
|
// Release the ISessionProperties
|
|
SAFE_RELEASE(pISessionProperties);
|
|
FreeProperties(&cPropertySets,&pPropertySets);
|
|
|
|
TRETURN;
|
|
}
|