aboutsummaryrefslogtreecommitdiffstats
path: root/src/m_email/test
Commit message (Collapse)AuthorAgeFilesLines
* refactor(email): use Qt string literal operatorssaturneric29 hours3-19/+24
| | | | | - replace QStringLiteral with u""_s and QLatin1String with ""_L1 - import Qt::StringLiterals per file, as modules have no host PCH
* fix(email): show an unauthorized signing key as its own verdictsaturneric4 days3-0/+43
| | | | | | | | - map host validity 10 (key not authorized) to a new badge state - rank it between "could not be checked" and "bad signature" - word it on the badge, security view and report, not as BAD - carry it through the verification payload by name - translate the new strings in every shipped locale
* feat(email): redesign action and attachment barssaturneric2026-09-291-0/+228
| | | | | | | | - centralize message commands as reusable actions with shared shortcuts - add compact attachment summaries, menus, and expandable lists - move secondary commands into More and show read-only status separately - centralize action, attachment, security, and surface layout decisions - enable compact Status Panel behavior for the email editor
* refactor(email): simplify crypto SDK test stubssaturneric2026-09-241-17/+1
| | | | | - remove unused byte buffer duplication helper - update the crypto entry point section comment
* feat(im): add instant messaging token modulesaturneric2026-09-241-0/+3
| | | | | | | | - add encrypted Base58 token encoding with shared book phrases - provide IM encrypt and encrypt-and-sign editor commands - add settings UI for phrase management and fingerprints - register the module and its SDK-free codec tests - register existing email module tests with CTest
* feat(email): migrate UI to host command modelsaturneric2026-09-231-0/+41
| | | | | | | | | - register native document, settings, and IMAP widgets through the SDK - add Lua mounts and commands for email actions and navigation - move document opening, saving, and message creation to host commands - use module-scoped settings APIs for account and view state - implement the document widget interface for email message handling - update SDK stubs and module metadata for the new integrations
* refactor(email): migrate to context-based SDKsaturneric2026-09-224-157/+451
| | | | | | | | | - pass SDK contexts through crypto, storage, UI, and buffer APIs - replace legacy ownership helpers with RAII-style buffer handling - preserve secure credential storage and wiping semantics - update analysis, key, recipient, and import integrations - migrate tests to fake host API tables and real SDK wrappers - add storage capability to the email module manifest
* refactor(gpg-info): migrate to module logging macrossaturneric2026-09-212-11/+29
| | | | | | | - replace legacy MLogDebug calls with structured logging macros - preserve diagnostic context while using stream-style log formatting - add logging API stubs and C++ module ID definitions for tests - apply formatting updates to email SDK test stubs
* build(modules): standardize module test output directoriessaturneric2026-09-201-4/+4
| | | | | | - route module tests and fuzzers to the shared module-tests directory - remove global runtime and install directory redirects - prevent duplicated module install paths and discovery strays
* refactor(modules): migrate modules to runtime APIsaturneric2026-09-191-2/+2
| | | | | | | | - replace legacy bootstrap and event macros with versioned hooks - register event handlers through explicit GFEventBinding tables - use GFEvent responses and runtime UI object helpers - declare handled events in each module manifest - update email test include paths for module runtime headers
* refactor(email): remove obsolete crypto SDK stubssaturneric2026-09-141-160/+2
| | | | | | | - delete unused GPG verify, decrypt, sign, and encrypt stubs - remove the obsolete result-freeing stub - update analysis error type to uint32_t - include cstdint for the fixed-width type definition
* test(email): use portable error type in crypto testssaturneric2026-09-141-13/+14
| | | | | | - include cstdint for the fixed-width error type - replace gpgme_error_t with uint32_t in test cases - align test variables with updated crypto API expectations
* refactor(email): migrate crypto to RAII SDK handlessaturneric2026-09-141-0/+264
| | | | | | | | - replace manual result cleanup with GFGpgResult ownership - use managed buffers for encryption, signing, verification, and decryption - preserve SDK failure messages through handle-based results - keep key ID memory alive for the duration of SDK calls - add handle-based SDK stubs with ownership and leak tracking
* fix(test): align crypto SDK stubs with borrowed argumentssaturneric2026-09-141-4/+7
| | | | | | - stop freeing borrowed key and capsule identifiers - update stub signatures to accept const identifiers - prevent allocator violations during correct SDK calls
* test(imap): cover folder status validationsaturneric2026-09-143-9/+153
| | | | | | | | - add tests for STATUS-based folder validation without fetching messages - verify listing validators detect mailbox recreation and message changes - cover unknown folders and optional mod-sequence handling - extend the fake IMAP server with STATUS and UIDVALIDITY support - reformat affected corpus test expressions consistently
* test(email): cover encrypted messages and reply renderingsaturneric2026-09-141-0/+177
| | | | | | | - verify ciphertext discovery in direct and nested MIME structures - cover decryption verdicts for secret, public-only, hidden, and unresolved recipients - test subject-based tab titles, sanitization, elision, and empty fallbacks - validate localized reply attribution and RFC 5322 forward dates
* feat(email): unify message verification resultssaturneric2026-09-136-76/+736
| | | | | | | | - add end-to-end tests for one verification result across all surfaces - cover per-region verdict aggregation, nesting, and engine failures - verify exact bytes, staleness anchors, payload encoding, and findings - update crypto tests to use the unified verification API - fix EMailHelper filename references and add the new test target
* test(email): cover security boundary regressionssaturneric2026-09-137-11/+1130
| | | | | | | | | | - test export risk checks and bounded regular-file reads - verify MIME transfer decoding and Content-Type parameters - cover failed crypto result cleanup and error propagation - validate failure payload preservation and security badge states - test IMAP UID fetching, size limits, quoting, and TLS pins - cover secure secret conversion and non-ASCII passwords - extend crypto stubs to model SDK failure allocations
* feat(email): preserve decrypted unsigned messagessaturneric2026-09-132-10/+318
| | | | | | | | | - distinguish unsigned, unreadable, and signed plaintext - verify only top-level multipart/signed messages - merge verification metadata without duplicating content - retain decrypted headers, body, and attachments - report unsigned messages as successfully decrypted - add coverage for decrypt-and-verify planning and metadata merging
* test(email): cover fuzzing and view layout rulessaturneric2026-09-133-1/+238
| | | | | | | - replay public and golden corpora through the email fuzz harness - exercise degenerate inputs and truncated messages - test details sizing, tab selection, action density, and security refresh - add email secret tests and required production sources to the build
* test(email): cover crypto boundary hardeningsaturneric2026-09-124-3/+443
| | | | | | | | - test rejection of oversized decrypted plaintext - test bounded signature verification and exact region bytes - test hostile MIME nesting, part counts, and boundaries - add lifecycle and wiping tests for EMailSecret - update network tests to use secure secret values
* test(email): cover targeted request cancellationsaturneric2026-09-121-3/+39
| | | | | | | - target cancellation calls at specific operation identifiers - verify queued requests stop without affecting later operations - ensure idle cancellation does not cancel the next request - update SMTP cancellation tests to use explicit operation IDs
* test(email): cover ambiguous SMTP submission outcomessaturneric2026-09-123-1/+280
| | | | | | | | - add fake server modes for acceptance, disconnect, and stalled responses - verify cancellation after DATA is classified as ambiguous - verify cancellation before submission remains a clean stop - assert ambiguous outcomes are never marked retryable - cover ambiguity precedence across SMTP exception types
* fix(email): preserve binary data across cryptosaturneric2026-09-128-38/+788
| | | | | | | - use QByteArray for MIME, signing, encryption, and decryption data - call sized SDK APIs to preserve embedded NULs and non-UTF-8 bytes - hash and verify the exact serialized octets - add crypto boundary tests for binary data and output sizes
* test(email): expand coverage for search and account behaviorsaturneric2026-09-124-22/+264
| | | | | | | - enhance the fake IMAP server for multi-message fetch responses - verify batched searches return all matches in newest-first order - cover safe suggested email filenames and reserved device names - test account labels and pinned certificate persistence and normalization
* test(email): cover safe attachment opening rulessaturneric2026-09-121-0/+81
| | | | | | | - verify ordinary document extensions are allowed - reject executables, archives, scripts, and unknown types - test sanitized filenames and final-extension handling - ensure sender-provided MIME types do not affect decisions
* test(email): add regression coverage for message handlingsaturneric2026-09-124-0/+111
| | | | | | | - cover preservation of raw UTF-8 bytes in signed entities - verify missing or invalid signature validity is not fully valid - ensure cancelled IMAP operations do not poison later requests - add an 8-bit signed email fixture and document its manifest entry
* feat(email): preserve message identity before sendingsaturneric2026-09-121-0/+44
| | | | | | | | - prioritize configured account labels in sender completion - mint and retain Message-ID during compose field collection - remove the unverifiable delivery status from send results - preserve identities through protected message serialization - add tests for supplied and encrypted Message-ID handling
* feat(email): save sent messages to IMAP Sentsaturneric2026-09-122-8/+178
| | | | | | | | - append sent messages byte-for-byte through a writable folder - avoid duplicate copies when the server already filed the message - report unresolved, failed, and unverified save outcomes - update dialog status text to distinguish send and filing results - extend fake IMAP coverage for APPEND literals and save behavior
* test(email): cover outgoing message behaviorsaturneric2026-09-121-0/+189
| | | | | | | - test plausible and invalid recipient address handling - verify source-byte reuse rules for loaded and forensic messages - validate frozen confirmation summaries and attachment counts - cover encoded, folded, and header-scoped subject extraction
* test(email): add transport and MIME regression coveragesaturneric2026-09-127-3/+1265
| | | | | | | | | - add fake IMAP and SMTP servers for wire-level worker tests - verify SMTP authentication, TLS handling, and credential rejection - cover IMAP read-only access, PEEK fetches, progress, and decoding - test removing nested OpenPGP signatures while preserving user attachments - validate legacy port and page-size settings are ignored - add SDK allocator and logging stubs for network test builds
* test(m_email): add security behavior coveragesaturneric2026-09-122-0/+460
| | | | | | | | - cover protected-layer unwrapping and byte preservation - verify nested signatures, encrypted parts, and malformed offsets - test raw header splitting, folding, duplicates, and malformed lines - validate security classification before decryption - verify composite status precedence and plain-message no-ops
* feat(email): store mail passwords without opt-insaturneric2026-09-121-1/+0
| | | | | | | | - remove the remember-password setting from account configuration and UI - always save newly entered passwords to the credential store - warn when credentials are stored with an unprotected application key - replace send-time password prompts with a missing-password notice - update account serialization tests for the removed setting
* test(email): cover transport decision logicsaturneric2026-09-122-3/+579
| | | | | | | | | - add account policy and security configuration tests - test envelope construction, BCC handling, and Message-ID behavior - verify Sent-folder ranking and message size policy - cover VMime error classification and retry semantics - link network support and transport sources into the test target - enable static VMime compilation for transport tests
* feat(email): add adversarial corpus coveragesaturneric2026-09-1236-49/+1393
| | | | | | | | | - add public MIME fixtures with deterministic parsing and limit tests - organize existing fixtures into golden and public corpus buckets - test ciphertext-only signature containment without implying authentication - preserve fixture line endings with binary Git attributes - document corpus provenance, licenses, and upstream hashes - update fuzzing guidance to use malformed public seeds
* test(email): add MIME corpus tests and fuzz harnesssaturneric2026-09-1221-2/+2212
| | | | | | | | - add comprehensive corpus coverage for MIME parsing and security behavior - compare tree extraction against the legacy MIME walker - test signatures, recipients, headers, attachments, and message derivation - add opt-in Clang libFuzzer coverage for hostile email inputs - update tests for Bcc metadata and signed-part coverage semantics
* test(email): cover unaddressed draft round tripssaturneric2026-09-121-10/+39
| | | | | | - clarify parsing-path comments for raw and structured content - verify unaddressed drafts retain headers and attachments - ensure message serialization remains valid without recipients
* test(email): add MIME regression testssaturneric2026-09-122-0/+754
- add opt-in GoogleTest target for SDK-free e-mail MIME code - cover parsing, metadata, attachments, and filename sanitization - verify parse limits and signed-part classification - test encrypted inner-part header preservation - validate structured and raw message handling