copilot-swe-agent[bot]
01c2e623bb
Improve tests: consolidate imports, use context managers, add subTest, add backward compat and coverage tests
...
Co-authored-by: seanthegeek <44679+seanthegeek@users.noreply.github.com >
2026-02-21 19:56:33 +00:00
copilot-swe-agent[bot]
68ccb0eb35
Add 89 comprehensive tests covering core parsing and utilities
...
Tests cover:
- _bucket_interval_by_day: all validation branches and distribution logic
- _append_parsed_record: normalize=True/False paths
- _parse_report_record: None source_ip, missing auth results, reason handling,
identities/identifiers mapping, human_result, envelope_from fallback, alignment
- _parse_smtp_tls_failure_details: required/optional fields, missing field errors
- _parse_smtp_tls_report_policy: valid/invalid types, policy_strings, failure details
- parse_smtp_tls_report_json: valid/bytes/missing fields/non-list policies
- Aggregate report: invalid np/testing/discovery_method, pass disposition,
multiple records, XML recovery, schema versions, generator, errors, defaults,
normalization, MAGIC_XML_TAG detection
- utils: timestamp conversions, IP geo lookup, reverse DNS service lookup,
IP address info with cache, email address parsing, filename safe strings,
mbox/outlook msg detection
- Output modules: WebhookClient, KafkaClient static methods, HECClient,
SyslogClient, LogAnalyticsConfig/Client, backward-compatible aliases
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-02-21 19:39:16 +00:00
copilot-swe-agent[bot]
bb4be6e609
Make pct and fo default to None when not provided (DMARCbis reports)
...
Co-authored-by: seanthegeek <44679+seanthegeek@users.noreply.github.com >
2026-02-21 18:50:37 +00:00
copilot-swe-agent[bot]
195fdaf7b2
Add DMARCbis field validation, preserve pass disposition, add comprehensive tests
...
Co-authored-by: seanthegeek <44679+seanthegeek@users.noreply.github.com >
2026-02-20 21:03:23 +00:00
Copilot
4d97bd25aa
Skip DNS lookups in GitHub Actions to prevent test timeouts ( #657 )
...
* Add offline mode for tests in GitHub Actions to skip DNS lookups
Co-authored-by: seanthegeek <44679+seanthegeek@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: seanthegeek <44679+seanthegeek@users.noreply.github.com >
2026-02-18 18:19:28 -05:00
Sean Whalen
7b842740f5
Change file permissions for tests.py to make it executable
2025-12-25 16:02:33 -05:00
Sean Whalen
7d58abc67b
Add shebang and encoding declaration to tests.py
2025-12-04 10:21:53 -05:00
Sean Whalen
cf3b7f2c29
## 9.0.2
...
## Improvements
- Type hinting is now used properly across the entire library. (#445 )
## Fixes
- Decompress report files as needed when passed via the CLI.
- Fixed incomplete removal of the ability for `parsedmarc.utils.extract_report` to accept a file path directly in `8.15.0`.
## Breaking changes
This version of the library requires consumers to pass certain arguments as keyword-only. Internally, the API uses a bare `*` in the function signature. This is standard per [PEP 3102](https://peps.python.org/pep-3102/ ) and as documented in the Python Language Reference.
.
2025-12-02 19:41:14 -05:00
Sean Whalen
17bdc3a134
More tests cleanup
2025-11-21 09:10:59 -05:00
Sean Whalen
597ca64f9f
Clean up tests
2025-11-21 00:09:28 -05:00
Sean Whalen
c5dbe2c4dc
8.10.9
...
- Complete fix for #687 and more robust report type detection
2025-11-20 23:50:42 -05:00
Sean Whalen
1ef3057110
8.15.1
...
- Proper IMAP namespace fix (Closes issue #557 and issue #563 )
- Require `mailsuite>=1.9.17`
- Revert PR #552
- Add pre-flight check for nameservers (PR #562 closes issue #543 )
- Reformat code with `ruff`
2024-10-02 21:19:57 -04:00
Sean Whalen
e967778f25
8.15.0
...
- Fix processing of SMTP-TLS reports ([#549 ](https://github.com/domainaware/parsedmarc/issues/549 )), which broke in commit [410663d ](https://github.com/domainaware/parsedmarc/commit/410663dbcaba019ca3d3744946348b56a635480b )(PR [#530 ](https://github.com/domainaware/parsedmarc/pull/530 ))
- This PR enforced a stricter check for base64-encoded strings, which SMTP TLS reports from Google did not pass
- Removing the check introduced its own issue, because some file paths were treated as base64-encoded strings
- Create a separate `extract_report_from_file_path()` function for processioning reports based on a file path
- Remove report extraction based on a file path from `extract_report()`
2024-09-04 16:31:41 -04:00
Sean Whalen
e9f0cdef1f
Update tests.py
...
Fix code style
2024-07-16 15:14:40 -04:00
pphillips99
410663dbca
fixup and tests to extract_report() to handle documented inputs ( #530 )
2024-07-16 14:53:27 -04:00
Sean Whalen
6e96b88a27
Always use local files when testing
2024-05-22 08:30:12 -04:00
cgoIT
f3206dcdab
[SMTP TLS] some minor bug fixes ( #477 )
...
* fix minor bugs during smtp-tls parsing, add docker-compose for local elasticsearch, add smtp-tls tests
* fix wrong log message parameter
* fix wrong log message
* add contact-info to smtp tls report, fix wrong fieldnames
* fix wrong fieldnames
* fix wrong index name for search
* at least for some reporting organizations the field sending-mta-ip is optional...
* add missing fields to elasticsearch for smtp tls
* failure_details is a list, add more test cases
* fix wrong name in ci.ini
2024-03-04 10:06:47 -05:00
Sean Whalen
b8088505b1
Add support for SMTP TLS reports ( #453 )
2024-02-19 18:45:38 -05:00
Sean Whalen
6c84cfb7c4
Fix output in tests.py
2023-06-27 15:56:33 -04:00
Sean Whalen
89872d78ac
Fix testing
2023-06-27 15:43:09 -04:00
Jed Laundry
a06fdc586f
Change publicsuffix2 to publicsuffixlist ( #406 )
...
* change to publicsuffixlist
* update publicsuffixlist (now auto-updating)
* Fix unused imports
2023-05-09 08:49:41 -04:00
Dave Rawks
84a7386726
Handle unexpected xml parsing errors more gracefully ( #349 )
...
* updates `parse_aggregate_report_xml` to not raise an unhandled
exception on parsing errors
* adds an empty xml file to the aggregate test samples
* adds test for coverage
* Resolves #348
2022-09-08 18:23:34 -04:00
Sean Whalen
06371dfe9b
Expand test coverage
2019-04-04 20:15:55 -04:00
Sean Whalen
e588845f23
6.1.0 - Fix aggregate report email parsing regression
...
Fix aggregate report email parsing regression in 6.0.3 (closes issues #57 and #58 )
2019-02-13 10:30:25 -05:00
Sean Whalen
49387d9033
4.3.0 release
2018-10-12 12:02:55 -04:00
Sean Whalen
f45ab94e06
Update test suitw
2018-10-11 19:01:02 -04:00
Sean Whalen
2c7002d3cc
Fix testing automation
2018-05-14 19:39:14 -04:00
Sean Whalen
d900ebf0eb
2.1.2
2018-03-06 10:01:27 -05:00
Sean Whalen
6b9e36ed77
First commit
2018-02-05 20:23:07 -05:00