[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdepimlibs/akonadi
From:       Javier Goday <jgoday () gmail ! com>
Date:       2009-07-20 14:15:00
Message-ID: 1248099300.519007.13322.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 999859 by jgoday:

Postgresql error details in akonadi selftestdialog

 M  +36 -3     selftestdialog.cpp  
 M  +1 -0      selftestdialog_p.h  


--- trunk/KDE/kdepimlibs/akonadi/selftestdialog.cpp #999858:999859
@@ -41,6 +41,7 @@
 #include <QtGui/QClipboard>
 #include <QtGui/QStandardItemModel>
 #include <QtSql/QSqlDatabase>
+#include <QtSql/QSqlError>
 
 // @cond PRIVATE
 
@@ -131,10 +132,16 @@
 
 void SelfTestDialog::runTests()
 {
+  const QString driver = serverSetting( QLatin1String("General"), "Driver", \
QLatin1String("QMYSQL") ).toString();  testSQLDriver();
-  testMySQLServer();
-  testMySQLServerLog();
-  testMySQLServerConfig();
+  if (driver == QLatin1String( "QPSQL" )) {
+    testPSQLServer();
+  }
+  else {
+    testMySQLServer();
+    testMySQLServerLog();
+    testMySQLServerConfig();
+  }
   testAkonadiCtl();
   testServerStatus();
   testProtocolVersion();
@@ -329,6 +336,32 @@
   }
 }
 
+void SelfTestDialog::testPSQLServer()
+{
+  const QString dbname = serverSetting( QLatin1String( "QPSQL" ), "Name", \
QLatin1String( "akonadi" )).toString(); +  const QString hostname = serverSetting( \
QLatin1String( "QPSQL" ), "Host", QLatin1String( "localhost" )).toString(); +  const \
QString username = serverSetting( QLatin1String( "QPSQL" ), "User", QLatin1String( \
"akonadi" )).toString(); +  const QString password = serverSetting( QLatin1String( \
"QPSQL" ), "Password", QLatin1String( "akonadi" )).toString(); +  const int port = \
serverSetting( QLatin1String( "QPSQL" ), "Port", 5432).toInt(); +
+  QSqlDatabase db = QSqlDatabase::addDatabase( QLatin1String( "QPSQL" ) );
+  db.setHostName( hostname );
+  db.setDatabaseName( dbname );
+  db.setUserName( username );
+  db.setPassword( password );
+  db.setPort( port );
+
+  if ( !db.open() ) {
+    const KLocalizedString details = ki18n( db.lastError().text().toLatin1() );
+    report( Error, ki18n( "Cannot connect to PostgreSQL server." ),  details);
+  }
+  else {
+    report( Success, ki18n( "PostgreSQL server found." ),
+                   ki18n( "The PostgreSQL server was found and connection is \
working.")); +  }
+  db.close();
+}
+
 void SelfTestDialog::testAkonadiCtl()
 {
   const QString path = KStandardDirs::findExe( QLatin1String("akonadictl") );
--- trunk/KDE/kdepimlibs/akonadi/selftestdialog_p.h #999858:999859
@@ -80,6 +80,7 @@
     void testMySQLServer();
     void testMySQLServerLog();
     void testMySQLServerConfig();
+    void testPSQLServer();
     void testAkonadiCtl();
     void testServerStatus();
     void testProtocolVersion();


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic