MailJDTourDownloadDocsQualityTestsCoverage

Which source lines and branches the tests execute. Lines 91.5 %, branches 75.0 % (minimum 85 % and 72 %). main @ 399ffe3d · 21 October 2026 · pipeline 7238.

GCC Code Coverage Report


Directory: src/
Coverage: low: ≥ 0% medium: ≥ 75.0% high: ≥ 90.0%
Coverage Exec / Excl / Total
Lines: 100.0% 28 / 0 / 28
Functions: 100.0% 8 / 0 / 8
Branches: 85.7% 12 / 0 / 14

presentation/QuickMailBackendConflicts.cpp
Line Branch Exec Source
1 // Sprint 107: the sources of the conflict resolver and the conflict list,
2 // resolved on use (the session's coordinators outlive the backend).
3 #include "QuickMailBackend.h"
4
5 #include "app/core/CalendarSyncCoordinator.h"
6 #include "app/core/ContactSyncCoordinator.h"
7 #include "app/core/MailSessionCore.h"
8
9 1590 QuickConflictResolver::Deps QuickMailBackend::resolverDeps() {
10 1590 QuickConflictResolver::Deps deps;
11 4225 deps.calendarOutbox = [this]() -> CalendarOutbox * {
12
2/2
✓ Branch 3 → 4 taken 1044 times.
✓ Branch 3 → 6 taken 1 time.
1045 return m_session.calendarSync() ? m_session.calendarSync()->outbox() : nullptr;
13 1590 };
14 4107 deps.calendarStore = [this]() -> CalendarStore * {
15
1/2
✓ Branch 3 → 4 taken 927 times.
✗ Branch 3 → 6 not taken.
927 return m_session.calendarSync() ? m_session.calendarSync()->store() : nullptr;
16 1590 };
17 4075 deps.contactOutbox = [this]() -> ContactOutbox * {
18
2/2
✓ Branch 3 → 4 taken 894 times.
✓ Branch 3 → 6 taken 1 time.
895 return m_session.contactSync() ? m_session.contactSync()->outbox() : nullptr;
19 1590 };
20 4063 deps.contactStore = [this]() -> ContactStore * {
21
1/2
✓ Branch 3 → 4 taken 883 times.
✗ Branch 3 → 6 not taken.
883 return m_session.contactSync() ? m_session.contactSync()->store() : nullptr;
22 1590 };
23 3364 deps.rules = [this] { return &m_rules; };
24 3364 deps.settings = [this] { return m_session.settingsSync(); };
25 1590 return deps;
26 }
27
28 795 ConflictCenter::Deps QuickMailBackend::conflictDeps() {
29 795 const QuickConflictResolver::Deps sources = resolverDeps();
30 795 ConflictCenter::Deps deps;
31
1/1
✓ Branch 4 → 5 taken 795 times.
795 deps.calendarStore = sources.calendarStore;
32
1/1
✓ Branch 5 → 6 taken 795 times.
795 deps.calendarOutbox = sources.calendarOutbox;
33
1/1
✓ Branch 6 → 7 taken 795 times.
795 deps.contactStore = sources.contactStore;
34
1/1
✓ Branch 7 → 8 taken 795 times.
795 deps.contactOutbox = sources.contactOutbox;
35
1/1
✓ Branch 8 → 9 taken 795 times.
795 deps.rules = sources.rules;
36
1/1
✓ Branch 9 → 10 taken 795 times.
795 deps.settings = sources.settings;
37 795 return deps;
38 795 }
39