From f69606156411bf5a362dcc3510d74435b6b376c6 Mon Sep 17 00:00:00 2001 From: Montel Laurent Date: Thu, 23 Jun 2016 07:53:18 +0200 Subject: [PATCH] Extract emails --- .../autotests/checkduplicateemailsjobtest.cpp | 40 +++++++++---------- .../checkduplicateemailsjob.cpp | 11 +++-- 2 files changed, 28 insertions(+), 23 deletions(-) diff --git a/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkduplicateemailsjobtest.cpp b/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkduplicateemailsjobtest.cpp index 116ebeff..99d41a2c 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkduplicateemailsjobtest.cpp +++ b/kmail/editorsendcheckplugins/checkbeforesend/autotests/checkduplicateemailsjobtest.cpp @@ -55,38 +55,38 @@ void CheckDuplicateEmailsJobTest::shouldReturnEmails_data() QTest::newRow("empty") << QStringList() << QMap(); QStringList lst; - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("bla")); - lst.append(QStringLiteral("blo")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("bla@kde.org")); + lst.append(QStringLiteral("blo@kde.org")); QTest::newRow("emptyresultbutnotemptylist") << lst << QMap(); lst.clear(); - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("blo")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("blo@kde.org")); QMap result; - result.insert(QStringLiteral("foo"), 2); + result.insert(QStringLiteral("foo@kde.org"), 2); QTest::newRow("oneduplicateemails") << lst << result; lst.clear(); - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("blo")); - lst.append(QStringLiteral("blo")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("blo@kde.org")); + lst.append(QStringLiteral("blo@kde.org")); result.clear(); - result.insert(QStringLiteral("foo"), 2); - result.insert(QStringLiteral("blo"), 2); + result.insert(QStringLiteral("foo@kde.org"), 2); + result.insert(QStringLiteral("blo@kde.org"), 2); QTest::newRow("twoduplicateemails") << lst << result; lst.clear(); - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("foo")); - lst.append(QStringLiteral("blo")); - lst.append(QStringLiteral("blo")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("foo@kde.org")); + lst.append(QStringLiteral("blo@kde.org")); + lst.append(QStringLiteral("blo@kde.org")); result.clear(); - result.insert(QStringLiteral("foo"), 3); - result.insert(QStringLiteral("blo"), 2); + result.insert(QStringLiteral("foo@kde.org"), 3); + result.insert(QStringLiteral("blo@kde.org"), 2); QTest::newRow("twoduplicateemailswithdifferentvalue") << lst << result; } diff --git a/kmail/editorsendcheckplugins/checkbeforesend/checkduplicateemailsjob.cpp b/kmail/editorsendcheckplugins/checkbeforesend/checkduplicateemailsjob.cpp index 17d286ae..0726666b 100644 --- a/kmail/editorsendcheckplugins/checkbeforesend/checkduplicateemailsjob.cpp +++ b/kmail/editorsendcheckplugins/checkbeforesend/checkduplicateemailsjob.cpp @@ -17,6 +17,8 @@ Boston, MA 02110-1301, USA. */ #include "checkduplicateemailsjob.h" +#include +#include CheckDuplicateEmailsJob::CheckDuplicateEmailsJob() { @@ -36,11 +38,14 @@ void CheckDuplicateEmailsJob::start() } QMap results; Q_FOREACH(const QString &email, mEmails) { - int val = results.value(email, 0); + QString tname, temail; + KEmailAddress::extractEmailAddressAndName(email, temail, tname); // ignore return value + + int val = results.value(temail, 0); if (val == 0) { - results.insert(email, val+1); + results.insert(temail, val+1); } else { - results[email] = val+1; + results[temail] = val+1; } } QMapIterator i(results); -- GitLab