Added:
MYODBCIns/MYODBCInsTest/MYODBCInsTest.cpp
Removed:
MYODBCIns/MYODBCInsTest/MYODBCInsTest.c
Modified:
MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp
MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp
MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro
MYODBCIns/MYODBCInsTest/MYODBCInsTest.vpj
MYODBCIns/include/MYODBCInsDataSource.h
MYODBCIns/include/MYODBCInsDriver.h
Log:
UNICODE: code from Linux/64 - time to do some, brief, testing on XP/32
Modified: MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp
===================================================================
--- MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp 2005-12-26 20:17:46 UTC (rev 16)
+++ MYODBCIns/MYODBCInsLib/MYODBCInsDataSource.cpp 2005-12-27 03:12:31 UTC (rev 17)
@@ -605,6 +605,11 @@
stringUSER = QString::null;
}
+bool MYODBCInsDataSource::doDelete( const QString &stringDataSourceName )
+{
+ return SQLRemoveDSNFromIni( stringDataSourceName.toLocal8Bit() );
+}
+
MYODBCInsDataSource MYODBCInsDataSource::operator=( MYODBCInsDataSource rval )
{
stringDATABASE = rval.stringDATABASE;
@@ -624,20 +629,20 @@
return *this;
}
-QTextStream &operator<<( QTextStream &stream, MYODBCInsDataSource rval )
+QTextStream &operator<<( QTextStream &stream, const MYODBCInsDataSource
&rval )
{
- stream << "DATABASE : " << rval.getDATABASE() << endl;
- stream << "DESCRIPTION : " << rval.getDESCRIPTION() << endl;
- stream << "DRIVER : " << rval.getDRIVER() << endl;
- stream << "DriverFileName: " << rval.getDriverFileName() << endl;
- stream << "DSN : " << rval.getDSN() << endl;
- stream << "OPTION : " << rval.getOPTION() << endl;
- stream << "PASSWORD : " << rval.getPASSWORD() << endl;
- stream << "PORT : " << rval.getPORT() << endl;
- stream << "SERVER : " << rval.getSERVER() << endl;
- stream << "SOCKET : " << rval.getSOCKET() << endl;
- stream << "STMT : " << rval.getSTMT() << endl;
- stream << "USER : " << rval.getUSER() << endl;
+ stream << "DATABASE : " << rval.stringDATABASE << endl;
+ stream << "DESCRIPTION : " << rval.stringDESCRIPTION << endl;
+ stream << "DRIVER : " << rval.stringDRIVER << endl;
+ stream << "DriverFileName: " << rval.stringDriverFileName << endl;
+ stream << "DSN : " << rval.stringDSN << endl;
+ stream << "OPTION : " << rval.stringOPTION << endl;
+ stream << "PASSWORD : " << rval.stringPASSWORD << endl;
+ stream << "PORT : " << rval.stringPORT << endl;
+ stream << "SERVER : " << rval.stringSERVER << endl;
+ stream << "SOCKET : " << rval.stringSOCKET << endl;
+ stream << "STMT : " << rval.stringSTMT << endl;
+ stream << "USER : " << rval.stringUSER << endl;
return stream;
}
Modified: MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp
===================================================================
--- MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp 2005-12-26 20:17:46 UTC (rev 16)
+++ MYODBCIns/MYODBCInsLib/MYODBCInsDriver.cpp 2005-12-27 03:12:31 UTC (rev 17)
@@ -187,6 +187,11 @@
stringSETUP = QString::null;
}
+bool MYODBCInsDriver::doDelete( const QString &stringDriverName, bool
bRemoveDataSourceNames, LPDWORD pnUsageCount )
+{
+ return SQLRemoveDriver( stringDriverName.toLocal8Bit(), bRemoveDataSourceNames,
pnUsageCount );
+}
+
MYODBCInsDriver MYODBCInsDriver::operator=( MYODBCInsDriver rval )
{
stringFriendlyName = rval.stringFriendlyName;
@@ -204,13 +209,12 @@
\param pDriver A pointer to a valid MYODBC_INS_DRIVER (may be null).
*/
-QTextStream &operator<<( QTextStream &stream, MYODBCInsDriver rval )
+QTextStream &operator<<( QTextStream &stream, const MYODBCInsDriver
&rval )
{
- stream << "FriendlyName: " << rval.getFriendlyName() << endl;
- stream << "DRIVER : " << rval.getDRIVER() << endl;
- stream << "SETUP : " << rval.getSETUP() << endl;
+ stream << "FriendlyName: " << rval.stringFriendlyName << endl;
+ stream << "DRIVER : " << rval.stringDRIVER << endl;
+ stream << "SETUP : " << rval.stringSETUP << endl;
return stream;
}
-
Deleted: MYODBCIns/MYODBCInsTest/MYODBCInsTest.c
===================================================================
--- MYODBCIns/MYODBCInsTest/MYODBCInsTest.c 2005-12-26 20:17:46 UTC (rev 16)
+++ MYODBCIns/MYODBCInsTest/MYODBCInsTest.c 2005-12-27 03:12:31 UTC (rev 17)
@@ -1,43 +0,0 @@
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-#include <MYODBCIns.h>
-
-typedef struct tTEST
-{
- char * name;
- int (*pfunc)();
-} TEST;
-
-int test1()
-{
-
- return 1;
-}
-
-int main()
-{
- TEST tests[2]=
- {
- {"test1", test1},
- {NULL, NULL}
- };
- int n;
-
- for ( n = 0; tests[n].name; n++ )
- {
- printf( "%-40s", tests[n].name );
- if ( tests[n].pfunc() )
- printf( "[ OK ]\n" );
- else
- {
- printf( "[FAILED]\n" );
- exit( 1 );
- }
- }
-
- return 0;
-}
-
-
Copied: MYODBCIns/MYODBCInsTest/MYODBCInsTest.cpp (from rev 13,
MYODBCIns/MYODBCInsTest/MYODBCInsTest.c)
===================================================================
--- MYODBCIns/MYODBCInsTest/MYODBCInsTest.c 2005-12-24 06:04:53 UTC (rev 13)
+++ MYODBCIns/MYODBCInsTest/MYODBCInsTest.cpp 2005-12-27 03:12:31 UTC (rev 17)
@@ -0,0 +1,174 @@
+#include <MYODBCIns.h>
+
+typedef struct tTEST
+{
+ char * name;
+ int (*pfunc)();
+} TEST;
+
+QString stringOutput;
+
+/* create new DRIVER */
+int test1()
+{
+ MYODBCInsDriver driver;
+
+ driver.setFriendlyName( "mytestDRIVER" );
+ driver.setDRIVER( "mytestDriver.so" );
+ driver.setSETUP( "mytestSetup.so" );
+
+ if ( !driver.doWrite() )
+ return 0;
+
+ QTextStream textstream( &stringOutput );
+ textstream << driver;
+
+ return 1;
+}
+
+/* verify new DRIVER */
+int test2()
+{
+ MYODBCInsDriver driver;
+
+ if ( !driver.doRead( "mytest Friendly Name" ) )
+ return 0;
+
+ QString stringResult;
+ QTextStream textstream( &stringResult );
+ textstream << driver;
+
+ if ( stringResult != stringOutput )
+ return 0;
+
+ return 1;
+}
+
+/* create new DSN */
+int test3()
+{
+ QStringList stringlistDataSourceNames = MYODBCInsDataSource::getDataSourceNames(
MYODBC_INS_DATASOURCE_SCOPE_USER );
+
+ if ( stringlistDataSourceNames.contains( "mytestDSN" ) )
+ return 0;
+
+ MYODBCInsDataSource datasource( MYODBC_INS_DATASOURCE_MODE_DSN_ADD );
+
+ datasource.setScope( MYODBC_INS_DATASOURCE_SCOPE_USER );
+ datasource.setDATABASE( "mytestDATABASE" );
+ datasource.setDESCRIPTION( "mytestDESCRIPTION" );
+ datasource.setDRIVER( "mytestDRIVER" );
+ datasource.setDriverFileName( "mytestDriver.so" );
+ datasource.setDSN( "mytestDSN" );
+ datasource.setOPTION( "3" );
+ datasource.setPASSWORD( "mytestPASSWORD" );
+ datasource.setPORT( "99" );
+ datasource.setSERVER( "mytestSERVER" );
+ datasource.setSOCKET( "100" );
+ datasource.setSTMT( "" );
+
+ if ( !datasource.doWrite() )
+ return 0;
+
+ QTextStream textstream( &stringOutput );
+ textstream << datasource;
+
+ return 1;
+}
+
+/* verify new DSN */
+int test4()
+{
+ MYODBCInsDataSource datasource( MYODBC_INS_DATASOURCE_MODE_DSN_EDIT );
+
+ datasource.setScope( MYODBC_INS_DATASOURCE_SCOPE_USER );
+ if ( !datasource.doRead( "mytestDSN" ) )
+ return 0;
+
+ QString stringResult;
+ QTextStream textstream( &stringResult );
+ textstream << datasource;
+
+ if ( stringResult != stringOutput )
+ return 0;
+
+ return 1;
+}
+
+/* delete DSN */
+int test5()
+{
+ if ( !MYODBCInsDataSource::doDelete( "mytestDSN" ) )
+ return 0;
+
+ return 1;
+}
+
+/* verify delete DSN */
+int test6()
+{
+ QStringList stringlistDataSourceNames = MYODBCInsDataSource::getDataSourceNames(
MYODBC_INS_DATASOURCE_SCOPE_USER );
+
+ if ( stringlistDataSourceNames.contains( "mytestDSN" ) )
+ return 0;
+
+ return 1;
+}
+
+/* delete DRIVER */
+int test7()
+{
+ DWORD nUsage = 0;
+
+ if ( !MYODBCInsDriver::doDelete( "mytestDRIVER", true, &nUsage ) )
+ return 0;
+
+ if ( nUsage != 0 )
+ return 0;
+
+ return 1;
+}
+
+/* verify delete DRIVER */
+int test8()
+{
+ QStringList stringlistDriverNames = MYODBCInsDriver::getDriverNames();
+
+ if ( stringlistDriverNames.contains( "mytestDRIVER" ) )
+ return 0;
+
+ return 1;
+}
+
+int main()
+{
+ TEST tests[9]=
+ {
+ {"test1", test1},
+ {"test2", test2},
+ {"test3", test3},
+ {"test4", test4},
+ {"test5", test5},
+ {"test6", test6},
+ {"test7", test7},
+ {"test8", test8},
+ {NULL, NULL}
+ };
+ int n;
+
+ for ( n = 0; tests[n].name; n++ )
+ {
+ printf( "%-40s", tests[n].name );
+ if ( tests[n].pfunc() )
+ printf( "[ OK ]\n" );
+ else
+ {
+ printf( "[FAILED]\n" );
+ exit( 1 );
+ }
+ }
+
+ return 0;
+}
+
+
Modified: MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro
===================================================================
--- MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro 2005-12-26 20:17:46 UTC (rev 16)
+++ MYODBCIns/MYODBCInsTest/MYODBCInsTest.pro 2005-12-27 03:12:31 UTC (rev 17)
@@ -6,11 +6,13 @@
DESTDIR = ../../bin
include( ../../common.pri )
include( ../../config.pri )
+include( ../../defines.pri )
+include( ../../odbc.pri )
CONFIG += console
INCLUDEPATH += ../../MYODBCC/include
INCLUDEPATH += ../include
LIBS += -L../../lib
-LIBS += -lMYODBCIns -lMYODBCC
+LIBS += -lMYODBCIns
# #########################################################
# FILES
@@ -18,5 +20,5 @@
HEADERS =
SOURCES = \
- MYODBCInsTest.c
+ MYODBCInsTest.cpp
Modified: MYODBCIns/MYODBCInsTest/MYODBCInsTest.vpj
===================================================================
--- MYODBCIns/MYODBCInsTest/MYODBCInsTest.vpj 2005-12-26 20:17:46 UTC (rev 16)
+++ MYODBCIns/MYODBCInsTest/MYODBCInsTest.vpj 2005-12-27 03:12:31 UTC (rev 17)
@@ -184,7 +184,7 @@
<Folder
Name="Source Files"
Filters="*.c;*.C;*.cc;*.cpp;*.cp;*.cxx;*.prg;*.pas;*.dpr;*.asm;*.s;*.bas;*.java;*.cs;*.sc;*.e;*.cob;*.html;*.rc;*.tcl;*.py;*.pl">
- <F N="MYODBCInsTest.c"/>
+ <F N="MYODBCInsTest.cpp"/>
</Folder>
<Folder
Name="Header Files"
Modified: MYODBCIns/include/MYODBCInsDataSource.h
===================================================================
--- MYODBCIns/include/MYODBCInsDataSource.h 2005-12-26 20:17:46 UTC (rev 16)
+++ MYODBCIns/include/MYODBCInsDataSource.h 2005-12-27 03:12:31 UTC (rev 17)
@@ -73,9 +73,10 @@
bool doWrite( MYODBC_INS_DATASOURCE_SCOPE nScope );
bool doWrite();
void doClear();
+ static bool doDelete( const QString &stringDataSourceName );
MYODBCInsDataSource operator=( MYODBCInsDataSource rval );
- QTextStream &operator<<( MYODBCInsDataSource rval );
+ friend QTextStream &operator<<( QTextStream &stream, const
MYODBCInsDataSource &rval );
protected:
/*!
Modified: MYODBCIns/include/MYODBCInsDriver.h
===================================================================
--- MYODBCIns/include/MYODBCInsDriver.h 2005-12-26 20:17:46 UTC (rev 16)
+++ MYODBCIns/include/MYODBCInsDriver.h 2005-12-27 03:12:31 UTC (rev 17)
@@ -2,6 +2,7 @@
#define MYODBC_INS_DRIVER_H
#include <MYODBCC.h>
+
#include <QString>
#include <QStringList>
#include <QTextStream>
@@ -22,9 +23,10 @@
bool doRead( const QString &stringFriendlyName );
bool doWrite();
void doClear();
+ static bool doDelete( const QString &stringDriverName, bool
bRemoveDataSourceNames, LPDWORD pnUsageCount );
MYODBCInsDriver operator=( MYODBCInsDriver rval );
- QTextStream &operator<<( MYODBCInsDriver rval );
+ friend QTextStream &operator<<( QTextStream &stream, const
MYODBCInsDriver &rval );
protected:
/*!
@@ -37,5 +39,6 @@
QString stringSETUP; /* File name - typically complete abs path. (ie
"/usr/lib/libmyodbc3S.so") */
};
+
#endif
| Thread |
|---|
| • Connector/ODBC 5 commit: r17 - in MYODBCIns: MYODBCInsLib MYODBCInsTest include | pharvey | 27 Dec |