diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-01-27 01:04:16 -0600 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-01-27 01:04:16 -0600 |
commit | 5159cd2beb2e87806a5b54e9991b7895285c9d3e (patch) | |
tree | 9b70e8be47a390f8f4d56ead812ab0c9dad88709 /tdeio/tests/kdirwatchunittest.cpp | |
parent | c17cb900dcf52b8bd6dc300d4f103392900ec2b4 (diff) | |
download | tdelibs-5159cd2beb2e87806a5b54e9991b7895285c9d3e.tar.gz tdelibs-5159cd2beb2e87806a5b54e9991b7895285c9d3e.zip |
Rename a number of libraries and executables to avoid conflicts with KDE4
Diffstat (limited to 'tdeio/tests/kdirwatchunittest.cpp')
-rw-r--r-- | tdeio/tests/kdirwatchunittest.cpp | 180 |
1 files changed, 180 insertions, 0 deletions
diff --git a/tdeio/tests/kdirwatchunittest.cpp b/tdeio/tests/kdirwatchunittest.cpp new file mode 100644 index 000000000..3d7505a3f --- /dev/null +++ b/tdeio/tests/kdirwatchunittest.cpp @@ -0,0 +1,180 @@ + /* + This file is or will be part of KDE desktop environment + + (c) 2006 Dirk Mueller <mueller@kde.org> + + It is licensed under GPL version 2. + + If it is part of KDE libraries than this file is licensed under + LGPL version 2. + */ + +#include <unistd.h> + +#include <tqfile.h> +#include <tqdir.h> + +#include <kdebug.h> + +#include "kdirwatchunittest.h" + +void KDirWatchTest::VERIFY_NOTHING() +{ + unsigned m_s[3]; + for(int i = 0; i < 3; ++i) + m_s[i] = m_signals[i]; + + for (int i = 0; i < 20; ++i) { + usleep(100*1000); + tqApp->processEvents(); + } + + bool nothing_failed = true; + for (int i = 0; i < 3; ++i) + if (m_s[i] != m_signals[i]) + nothing_failed = false; + + KDirWatch::statistics(); + + VERIFY (nothing_failed); +} + +void KDirWatchTest::VERIFY_DIRTY(const TQString& alert) +{ + unsigned m_s[3]; + for(int i = 0; i < 3; ++i) + m_s[i] = m_signals[i]; + + for (int i = 0; i < 20; ++i) { + usleep(100*1000); + tqApp->processEvents(); + } + + VERIFY (m_s[sigCreated] == m_signals[sigCreated] && + m_s[sigDeleted] == m_signals[sigDeleted] && + m_s[sigDirty] + 1 == m_signals[sigDirty] && + m_lastSignal == alert); +} + +void KDirWatchTest::VERIFY_CREATED(const TQString& alert) +{ + unsigned m_s[3]; + for(int i = 0; i < 3; ++i) + m_s[i] = m_signals[i]; + + for (int i = 0; i < 20; ++i) { + usleep(100*1000); + tqApp->processEvents(); + } + + VERIFY (m_s[sigDirty] == m_signals[sigDirty] && + m_s[sigDeleted] == m_signals[sigDeleted] && + m_s[sigCreated] + 1 == m_signals[sigCreated] && + m_lastSignal == alert); +} + +void KDirWatchTest::VERIFY_DELETED(const TQString& alert) +{ + unsigned m_s[3]; + for(int i = 0; i < 3; ++i) + m_s[i] = m_signals[i]; + + for (int i = 0; i < 20; ++i) { + usleep(100*1000); + tqApp->processEvents(); + } + + VERIFY (m_s[sigDirty] == m_signals[sigDirty] && + m_s[sigCreated] == m_signals[sigCreated] && + m_s[sigDeleted] + 1 == m_signals[sigDeleted] && + m_lastSignal == alert); +} + +void KDirWatchTest::remove_file (const TQString& file) +{ + ::unlink (TQFile::encodeName(file)); +} + +void KDirWatchTest::touch_file (const TQString& file) +{ + TQFile f(file); + f.open(IO_WriteOnly); +} + +void KDirWatchTest::rename_file(const TQString& from, const TQString& to) +{ + ::rename(TQFile::encodeName(from), TQFile::encodeName(to)); +} + +KUNITTEST_MODULE ( tdeunittest_kdirwatch, "KDirWatchTest" ) +KUNITTEST_MODULE_REGISTER_TESTER (KDirWatchTest) + +#define SLEEP() TQApplication::processEvents(); + +void KDirWatchTest::allTests() +{ + for(int loop=0; loop<3; ++loop) { + d = new KDirWatch; + VERIFY (d != 0); + + TQDir* dir = new TQDir(m_workingDir); + VERIFY (dir != 0); + + connect(d, TQT_SIGNAL (dirty( const TQString &)), TQT_SLOT( slotDirty( const TQString &)) ); + connect(d, TQT_SIGNAL (created( const TQString &)), TQT_SLOT( slotCreated( const TQString &)) ); + connect(d, TQT_SIGNAL (deleted( const TQString &)), TQT_SLOT( slotDeleted( const TQString &)) ); + + VERIFY (dir->mkdir (m_workingDir)); + + d->addDir (m_workingDir); + VERIFY_NOTHING(); + dir->mkdir ("does"); + VERIFY_DIRTY (m_workingDir); + touch_file (m_workingDir + "/file"); + VERIFY_DIRTY (m_workingDir); + VERIFY_NOTHING (); + remove_file (m_workingDir + "/file"); + d->addDir (m_workingDir + "/does/not/exist"); + d->removeDir (m_workingDir); + VERIFY_NOTHING(); + + dir->mkdir ("does/not"); + VERIFY_NOTHING(); + dir->mkdir ("does/not/exist"); + VERIFY_CREATED (m_workingDir + "/does/not/exist"); + + dir->rmdir ("does/not/exist"); + VERIFY_DELETED (m_workingDir + "/does/not/exist"); + dir->rmdir ("does/not"); + VERIFY_NOTHING(); + dir->rmdir ("does"); + VERIFY_NOTHING(); + + d->addFile(m_workingDir + "/a"); + touch_file(m_workingDir + "/a"); + VERIFY_CREATED (m_workingDir + "/a"); + + rename_file (m_workingDir + "/a", m_workingDir + "/b"); + VERIFY_DELETED (m_workingDir + "/a"); + VERIFY_NOTHING(); + + touch_file (m_workingDir + "/a"); + VERIFY_CREATED (m_workingDir + "/a"); + VERIFY_NOTHING(); + + touch_file (m_workingDir + "/a"); + VERIFY_DIRTY (m_workingDir + "/a"); + + remove_file (m_workingDir + "/b"); + VERIFY_NOTHING(); + + d->removeFile(m_workingDir + "/a"); + + remove_file(m_workingDir + "/a"); + + VERIFY (dir->rmdir (m_workingDir)); + delete d; + } +} + +#include "kdirwatchunittest.moc" |