summaryrefslogtreecommitdiffstats
path: root/kwallet/tests
diff options
context:
space:
mode:
authortoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
committertoma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2009-11-25 17:56:58 +0000
commitce4a32fe52ef09d8f5ff1dd22c001110902b60a2 (patch)
tree5ac38a06f3dde268dc7927dc155896926aaf7012 /kwallet/tests
downloadtdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.tar.gz
tdelibs-ce4a32fe52ef09d8f5ff1dd22c001110902b60a2.zip
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdelibs@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kwallet/tests')
-rw-r--r--kwallet/tests/Makefile.am20
-rw-r--r--kwallet/tests/README5
-rw-r--r--kwallet/tests/kwalletasync.cpp59
-rw-r--r--kwallet/tests/kwalletboth.cpp81
-rw-r--r--kwallet/tests/kwalletsync.cpp39
-rw-r--r--kwallet/tests/kwallettest.cpp2
-rw-r--r--kwallet/tests/kwallettest.h15
7 files changed, 221 insertions, 0 deletions
diff --git a/kwallet/tests/Makefile.am b/kwallet/tests/Makefile.am
new file mode 100644
index 000000000..cdcec5859
--- /dev/null
+++ b/kwallet/tests/Makefile.am
@@ -0,0 +1,20 @@
+AM_CPPFLAGS = -DKDE_NO_COMPAT -DQT_NO_COMPAT -DQT_NO_ASCII_CAST $(all_includes)
+
+METASOURCES = AUTO
+check_PROGRAMS = kwalletasync kwalletsync kwalletboth
+
+kwalletasync_SOURCES = kwalletasync.cpp kwallettest.cpp
+kwalletasync_LDFLAGS = -no-undefined $(KDE_RPATH) $(all_libraries)
+kwalletasync_LDADD = $(top_builddir)/kwallet/client/libkwalletclient.la \
+ $(LIB_KDECORE) $(LIB_QT)
+
+kwalletsync_SOURCES = kwalletsync.cpp
+kwalletsync_LDFLAGS = -no-undefined $(KDE_RPATH) $(all_libraries)
+kwalletsync_LDADD = $(top_builddir)/kwallet/client/libkwalletclient.la \
+ $(LIB_KDECORE) $(LIB_QT)
+
+kwalletboth_SOURCES = kwalletboth.cpp kwallettest.cpp
+kwalletboth_LDFLAGS = -no-undefined $(KDE_RPATH) $(all_libraries)
+kwalletboth_LDADD = $(top_builddir)/kwallet/client/libkwalletclient.la \
+ $(LIB_KDECORE) $(LIB_QT)
+INCLUDES = -I$(top_srcdir)/kwallet/client
diff --git a/kwallet/tests/README b/kwallet/tests/README
new file mode 100644
index 000000000..73c3ad1db
--- /dev/null
+++ b/kwallet/tests/README
@@ -0,0 +1,5 @@
+Tests for opening the wallet synchronously and asynchronously
+
+kwalletsync - open synchronously
+kwalletasync - open asynchronously
+kwalletboth - start opening asynchronously, then, during the async call, open synchronously
diff --git a/kwallet/tests/kwalletasync.cpp b/kwallet/tests/kwalletasync.cpp
new file mode 100644
index 000000000..0992c6e7d
--- /dev/null
+++ b/kwallet/tests/kwalletasync.cpp
@@ -0,0 +1,59 @@
+#include <qtextstream.h>
+#include <qtimer.h>
+
+#include <kaboutdata.h>
+#include <kapplication.h>
+#include <kcmdlineargs.h>
+#include <kdebug.h>
+#include <kglobal.h>
+#include <kstandarddirs.h>
+#include <dcopclient.h>
+#include <kwallet.h>
+
+#include "kwallettest.h"
+
+static QTextStream _out( stdout, IO_WriteOnly );
+
+void openWallet()
+{
+ _out << "About to ask for wallet async" << endl;
+
+ // we have no wallet: ask for one.
+ KWallet::Wallet *wallet = KWallet::Wallet::openWallet( KWallet::Wallet::NetworkWallet(), 0, KWallet::Wallet::Asynchronous );
+
+ WalletReceiver r;
+ r.connect( wallet, SIGNAL( walletOpened(bool) ), SLOT( walletOpened(bool) ) );
+
+ _out << "About to start 30 second event loop" << endl;
+
+ QTimer::singleShot( 30000, qApp, SLOT( quit() ) );
+ int ret = qApp->exec();
+
+ if ( ret == 0 )
+ _out << "Timed out!" << endl;
+ else
+ _out << "Success!" << endl;
+}
+
+void WalletReceiver::walletOpened( bool got )
+{
+ _out << "Got async wallet: " << got << endl;
+ qApp->exit( 1 );
+}
+
+int main( int argc, char *argv[] )
+{
+ KAboutData aboutData( "kwalletasync", "kwalletasync", "version" );
+ KCmdLineArgs::init( argc, argv, &aboutData );
+ KApplication app( "kwalletasync" );
+
+ // register with DCOP
+ _out << "DCOP registration returned " << app.dcopClient()->registerAs(app.name()) << endl;
+
+ openWallet();
+
+ return 0;
+}
+
+// vim: set noet ts=4 sts=4 sw=4:
+
diff --git a/kwallet/tests/kwalletboth.cpp b/kwallet/tests/kwalletboth.cpp
new file mode 100644
index 000000000..736be72cb
--- /dev/null
+++ b/kwallet/tests/kwalletboth.cpp
@@ -0,0 +1,81 @@
+#include <qtextstream.h>
+#include <qtimer.h>
+
+#include <kaboutdata.h>
+#include <kapplication.h>
+#include <kcmdlineargs.h>
+#include <kdebug.h>
+#include <kglobal.h>
+#include <kstandarddirs.h>
+#include <dcopclient.h>
+#include <kwallet.h>
+
+#include "kwallettest.h"
+
+static QTextStream _out( stdout, IO_WriteOnly );
+
+void openWallet()
+{
+ _out << "About to ask for wallet async" << endl;
+
+ // we have no wallet: ask for one.
+ KWallet::Wallet *wallet = KWallet::Wallet::openWallet( KWallet::Wallet::NetworkWallet(), 0, KWallet::Wallet::Asynchronous );
+
+ WalletReceiver r;
+ r.connect( wallet, SIGNAL( walletOpened(bool) ), SLOT( walletOpened(bool) ) );
+
+ _out << "About to ask for wallet sync" << endl;
+
+ wallet = KWallet::Wallet::openWallet( KWallet::Wallet::NetworkWallet(), 0, KWallet::Wallet::Synchronous );
+
+ _out << "Got sync wallet: " << (wallet != 0) << endl;
+ _out << "About to start 30 second event loop" << endl;
+
+ QTimer::singleShot( 30000, qApp, SLOT( quit() ) );
+ int ret = qApp->exec();
+
+
+ if ( ret == 0 )
+ _out << "Timed out!" << endl;
+ else
+ _out << "Success!" << endl;
+
+ QMap<QString,QString> p;
+ ret = wallet->readPasswordList("*", p);
+ _out << "readPasswordList returned: " << ret << endl;
+ _out << "readPasswordList returned " << p.keys().count() << " entries" << endl;
+ QMap<QString, QMap<QString, QString> > q;
+ ret = wallet->readMapList("*", q);
+ _out << "readMapList returned: " << ret << endl;
+ _out << "readMapList returned " << q.keys().count() << " entries" << endl;
+
+ QMap<QString, QByteArray> s;
+ ret = wallet->readEntryList("*", s);
+ _out << "readEntryList returned: " << ret << endl;
+ _out << "readEntryList returned " << s.keys().count() << " entries" << endl;
+
+ delete wallet;
+}
+
+void WalletReceiver::walletOpened( bool got )
+{
+ _out << "Got async wallet: " << got << endl;
+ qApp->exit( 1 );
+}
+
+int main( int argc, char *argv[] )
+{
+ KAboutData aboutData( "kwalletboth", "kwalletboth", "version" );
+ KCmdLineArgs::init( argc, argv, &aboutData );
+ KApplication app( "kwalletboth" );
+
+ // register with DCOP
+ _out << "DCOP registration returned " << app.dcopClient()->registerAs(app.name()) << endl;
+
+ openWallet();
+
+ return 0;
+}
+
+// vim: set noet ts=4 sts=4 sw=4:
+
diff --git a/kwallet/tests/kwalletsync.cpp b/kwallet/tests/kwalletsync.cpp
new file mode 100644
index 000000000..d5eae13a3
--- /dev/null
+++ b/kwallet/tests/kwalletsync.cpp
@@ -0,0 +1,39 @@
+#include <qtextstream.h>
+#include <qtimer.h>
+
+#include <kaboutdata.h>
+#include <kapplication.h>
+#include <kcmdlineargs.h>
+#include <kdebug.h>
+#include <kglobal.h>
+#include <kstandarddirs.h>
+#include <dcopclient.h>
+#include <kwallet.h>
+
+static QTextStream _out( stdout, IO_WriteOnly );
+
+void openWallet()
+{
+ _out << "About to ask for wallet sync" << endl;
+
+ KWallet::Wallet *w = KWallet::Wallet::openWallet( KWallet::Wallet::NetworkWallet(), 0, KWallet::Wallet::Synchronous );
+
+ _out << "Got sync wallet: " << (w != 0) << endl;
+}
+
+int main( int argc, char *argv[] )
+{
+ KAboutData aboutData( "kwalletsync", "kwalletsync", "version" );
+ KCmdLineArgs::init( argc, argv, &aboutData );
+ KApplication app( "kwalletsync" );
+
+ // register with DCOP
+ _out << "DCOP registration returned " << app.dcopClient()->registerAs(app.name()) << endl;
+
+ openWallet();
+
+ return 0;
+}
+
+// vim: set noet ts=4 sts=4 sw=4:
+
diff --git a/kwallet/tests/kwallettest.cpp b/kwallet/tests/kwallettest.cpp
new file mode 100644
index 000000000..a17644cfb
--- /dev/null
+++ b/kwallet/tests/kwallettest.cpp
@@ -0,0 +1,2 @@
+#include "kwallettest.h"
+#include "kwallettest.moc"
diff --git a/kwallet/tests/kwallettest.h b/kwallet/tests/kwallettest.h
new file mode 100644
index 000000000..e3fe834f2
--- /dev/null
+++ b/kwallet/tests/kwallettest.h
@@ -0,0 +1,15 @@
+#ifndef KWALLETASYNC_H
+#define KWALLETASYNC_H
+
+#include <qobject.h>
+
+namespace KWallet { class Wallet; }
+
+class WalletReceiver : public QObject
+{
+ Q_OBJECT
+public slots:
+ void walletOpened( bool );
+};
+
+#endif