diff options
Diffstat (limited to 'tdewallet/tests/tdewalletasync.cpp')
-rw-r--r-- | tdewallet/tests/tdewalletasync.cpp | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/tdewallet/tests/tdewalletasync.cpp b/tdewallet/tests/tdewalletasync.cpp new file mode 100644 index 000000000..3512cc799 --- /dev/null +++ b/tdewallet/tests/tdewalletasync.cpp @@ -0,0 +1,59 @@ +#include <tqtextstream.h> +#include <tqtimer.h> + +#include <kaboutdata.h> +#include <kapplication.h> +#include <kcmdlineargs.h> +#include <kdebug.h> +#include <kglobal.h> +#include <kstandarddirs.h> +#include <dcopclient.h> +#include <tdewallet.h> + +#include "tdewallettest.h" + +static TQTextStream _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, TQT_SIGNAL( walletOpened(bool) ), TQT_SLOT( walletOpened(bool) ) ); + + _out << "About to start 30 second event loop" << endl; + + TQTimer::singleShot( 30000, tqApp, TQT_SLOT( quit() ) ); + int ret = tqApp->exec(); + + if ( ret == 0 ) + _out << "Timed out!" << endl; + else + _out << "Success!" << endl; +} + +void WalletReceiver::walletOpened( bool got ) +{ + _out << "Got async wallet: " << got << endl; + tqApp->exit( 1 ); +} + +int main( int argc, char *argv[] ) +{ + TDEAboutData aboutData( "tdewalletasync", "tdewalletasync", "version" ); + TDECmdLineArgs::init( argc, argv, &aboutData ); + TDEApplication app( "tdewalletasync" ); + + // 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: + |