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

List:       kde-commits
Subject:    KDE/kdelibs/kdecore
From:       David Faure <faure () kde ! org>
Date:       2010-11-13 1:32:38
Message-ID: 20101113013238.640D2AC89E () svn ! kde ! org
[Download RAW message or body]

SVN commit 1196329 by dfaure:

Fix KMimeType::mainExtension() returning an empty string if patterns hadn't been called before.


 M  +1 -1      services/kmimetype.cpp  
 M  +30 -18    tests/kmimetypetest.cpp  
 M  +1 -0      tests/kmimetypetest.h  


--- trunk/KDE/kdelibs/kdecore/services/kmimetype.cpp #1196328:1196329
@@ -755,7 +755,7 @@
     }
 #endif // HACK END
 
-     Q_FOREACH(const QString& pattern, d->m_lstPatterns) {
+     Q_FOREACH(const QString& pattern, patterns()) {
         // Skip if if looks like: README or *. or *.*
         // or *.JP*G or *.JP?
         if (pattern.startsWith(QLatin1String("*.")) &&
--- trunk/KDE/kdelibs/kdecore/tests/kmimetypetest.cpp #1196328:1196329
@@ -103,6 +103,8 @@
     KService::Ptr fakeApp = KService::serviceByStorageId("fake_nonkde_application.desktop");
     QVERIFY(fakeApp); // it should be found.
     QVERIFY(KService::serviceByDesktopPath(m_nonKdeApp)); // the desktoppath is the full path nowadays
+
+    KGlobal::locale();
 }
 
 void KMimeTypeTest::cleanupTestCase()
@@ -883,24 +885,6 @@
     testBuffer.close();
 }
 
-void KMimeTypeTest::testThreads()
-{
-    QThreadPool::globalInstance()->setMaxThreadCount(10);
-    // Note that data-based tests cannot be used here (QTest::fetchData asserts).
-    QList<QFuture<void> > futures;
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByUrl);
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByFileContent);
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByNameAndContent);
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByPathWithContent);
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testAllMimeTypes);
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testAlias);
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testMimeTypeParent);
-    futures << QtConcurrent::run(this, &KMimeTypeTest::testPreferredService);
-    kDebug() << "Joining all threads";
-    Q_FOREACH(QFuture<void> f, futures)
-        f.waitForFinished();
-}
-
 void KMimeTypeTest::testHelperProtocols()
 {
     QVERIFY(KProtocolInfo::isKnownProtocol("mailto"));
@@ -919,4 +903,32 @@
     }
 }
 
+void KMimeTypeTest::testFromThread()
+{
+    // Some simple tests to test more API from testThreads without using _data()
+    KMimeType::Ptr mime = KMimeType::mimeType("application/pdf");
+    QVERIFY(mime);
+    QCOMPARE(mime->mainExtension(), QString::fromLatin1(".pdf"));
+}
+
+void KMimeTypeTest::testThreads()
+{
+    QThreadPool::globalInstance()->setMaxThreadCount(20);
+    // Note that data-based tests cannot be used here (QTest::fetchData asserts).
+    QList<QFuture<void> > futures;
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByUrl);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByFileContent);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByNameAndContent);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testFindByPathWithContent);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testAllMimeTypes);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testAlias);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testMimeTypeParent);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testPreferredService);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testFromThread);
+    futures << QtConcurrent::run(this, &KMimeTypeTest::testHelperProtocols);
+    kDebug() << "Joining all threads";
+    Q_FOREACH(QFuture<void> f, futures)
+        f.waitForFinished();
+}
+
 #include "kmimetypetest.moc"
--- trunk/KDE/kdelibs/kdecore/tests/kmimetypetest.h #1196328:1196329
@@ -59,6 +59,7 @@
     void testParseMagicFile_data();
     void testParseMagicFile();
     void testHelperProtocols();
+    void testFromThread();
 
     void testThreads();
 private:
[prev in list] [next in list] [prev in thread] [next in thread] 

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