Jonathan Hall
44cafde7d4
More complete clamdcscan tests
...
* construct our own Qpsmtpd::Transaction object for testing, so we're sure
to have a pristine state
* Move some logic into a should_scan() sub, to help separate scan_all from
is_not_multipart (since the multipart state of a message has nothing to
do with any configuration parameters)
2014-09-16 13:48:19 -05:00
Jonathan Hall
8344bf8439
Working toward functional virus/clamdscan tests.
2014-09-16 12:56:32 -05:00
Matt Simerson
a473c2732d
updated Config::defaults() to behave as before
...
and added additional tests for it
2014-09-16 09:52:05 -07:00
Matt Simerson
b153c0ab99
more tests for Qpsmtpd::Config
...
* fix for cache clearing that didn't work
* imported a sample .cdb file for testing
2014-09-16 00:54:47 -07:00
Matt Simerson
75cb416b62
added diagnostics for failed spool_dir test
...
likely due to config caching
2014-09-16 00:03:28 -07:00
Matt Simerson
ebdb25a4bd
extracted config*() from Qpsmtpd.pm -> Config.pm
...
* includes full test converage for Qpsmtpd::Config
* folded t/config.t into t/qpsmtpd-config.t
* includes additional tests for Qpsmtpd
* folded t/tempstuff into t/qpsmtpd.t
* PBP adjustments here and there
* other tweaks to handle test warnings
2014-09-15 23:41:31 -07:00
Matt Simerson
f8e2fdb966
more tests for Qpsmtpd.pm
2014-09-15 18:54:10 -07:00
Matt Simerson
b60c14a7c1
t/q-base, s/utils/base/
2014-09-15 18:53:30 -07:00
Matt Simerson
710894cd49
moved Qpsmtpd::Utils -> Base.pm
2014-09-15 18:53:30 -07:00
Matt Simerson
851e1b54ee
META updates, tidy, PBP tweaks
...
* update manifest
* perltidy
* replace postfix if/unless with brackets
* reduce useless indention by exiting sooner
2014-09-15 15:57:12 -07:00
Jared Johnson
f052543154
Correct number of user_config tests
2014-09-15 17:06:47 -05:00
Jared Johnson
de742dc95e
Add tests for user_config plugin
2014-09-15 17:06:47 -05:00
Jared Johnson
23ce6002cf
Qpsmtpd::config() tests
2014-09-15 17:06:47 -05:00
Jared Johnson
cda40f970b
Remove an unintentionally commited subroutine
2014-09-15 17:03:52 -05:00
Jared Johnson
fb8f582055
Use a loop to make test data clearer
2014-09-15 17:03:52 -05:00
Jared Johnson
41a71f5d79
Move test sub definition to the bottom
2014-09-15 17:03:52 -05:00
Jared Johnson
18bfc45d0b
Fall back correctly between config methods
...
hook_user_config no falls back to global hook_config followed by
file-based config followed by %defaults
2014-09-15 17:01:39 -05:00
Jared Johnson
eb482aad0a
Tests for Qpsmtpd::Address::config()
...
Tests for the new Qpsmtpd::Address::config() which should call hook_user_config plugins
2014-09-15 17:01:39 -05:00
Matt Simerson
7396dbbf5f
more tests for Qpsmtpd.pm
2014-09-15 11:53:28 -07:00
Matt Simerson
a53c692c7b
earlytalker: check connection note for wait length
...
Issue #58
reputation databases can set $connection->notes(earlytalker_wait)
2014-09-12 13:32:08 -07:00
Matt Simerson
2cc57f6db3
Merge pull request #95 from msimerson/helo
...
helo: make NXDOMAIN time out faster
2014-09-12 01:06:21 -07:00
Jared Johnson
cc25532593
Replace warning with slightly better testing
...
Testing LOGWARN was generating a real warning that polluted test output.
Instead, let's catch the warning and test that it actually happens.
2014-09-12 01:23:09 -05:00
Matt Simerson
ca96ddf4eb
added Utils->is_valid_ip, IPv6 ready
...
resolves Issue #82
2014-09-11 13:34:32 -07:00
Matt Simerson
5960cb4d87
helo: make NXDOMAIN time out faster
2014-09-11 11:37:46 -07:00
Jared Johnson
bf2cfcf4e3
Merge pull request #92 from msimerson/master
...
tests for Qpsmtpd/SMTP
2014-09-11 13:18:03 -05:00
Jared Johnson
f15a38dfe3
Merge pull request #94 from msimerson/rpm-version
...
add test to assure RPM VERSION is up-to-date (#80 )
2014-09-11 13:00:25 -05:00
Matt Simerson
847db53e0d
updated fault test in qpsmtpd-smtp.t
2014-09-11 10:53:09 -07:00
Matt Simerson
e7a4ca2b08
update MANIFEST and suppress helo test error
2014-09-11 10:46:29 -07:00
Matt Simerson
fabbdae960
tests for Qpsmtpd/SMTP
...
* order the ‘use’ pragmas
* compact the new() method
* move fault() tests into t/qpsmtpd-smtp.t
2014-09-11 10:46:29 -07:00
Matt Simerson
bcacb2778c
add test to assure RPM VERSION is up-to-date ( #80 )
2014-09-11 10:37:56 -07:00
Jonathan Hall
8b1ff67604
Update fault()'s output to inidcate the possibly meaninglessness of the reported system error.
2014-09-11 11:58:31 -05:00
Matt Simerson
8f8463e91e
Merge pull request #87 from flimzy/misc-tests
...
Silence misc.t STDOUT by testing for it.
2014-09-11 09:09:48 -07:00
Matt Simerson
04a984bbab
helo: improved invalid_localhost detection
2014-09-10 15:12:52 -07:00
Matt Simerson
60877da4ed
added Utils::is_localhost and t/qpsmtpd-utils.t
...
resolves Issue #89
2014-09-10 13:52:56 -07:00
Matt Simerson
39c454c95e
helo: added IPv6 support to invalid_localhost
...
and also suppress a test warning
2014-09-10 13:52:56 -07:00
Jonathan Hall
7b3018c660
Remove reference to 'No such file or directory', as there's no guarantee
...
this is what $! will return when this code is called during testing.
2014-09-10 10:15:43 -05:00
Jonathan Hall
11f47cb2ab
Silence misc.t STDOUT by testing for it.
2014-09-10 08:55:17 -05:00
Matt Simerson
c9a780576f
added tests for lib/Qpsmtpd.pm (Issue #67 )
2014-09-08 22:58:27 -07:00
Priyadi Iman Nurcahyo
bef79d3b7d
Fix test for munge_subject_threshold
2014-05-15 14:45:33 +00:00
Matt Simerson
a19b7de787
updated DMARC plugin tests
...
disabled for now, b/c they tested methods which no longer exist in new plugin
2013-12-18 00:09:10 -05:00
Matt Simerson
c652d4c9e4
dmarc test: comments in the public list was
...
allowing certain org domain searches to fail (plus.google.com, b/c a google.com email address was in the public list). Now I anchor the searches to the start of the line. This test also catches edge cases like co.uk, which isn't listed, but a wildcard *.uk is.
2013-08-05 15:05:37 -07:00
Matt Simerson
9c96ae78e4
find . -name '*.t' -exec perltidy -b {} \;
2013-08-05 15:05:15 -07:00
Matt Simerson
5b06929e95
find . -name '*.pm' -exec perltidy -b {} \;
2013-08-05 15:05:15 -07:00
Matt Simerson
fc3117fe60
fix dmarc plugin tests
2013-08-05 15:05:14 -07:00
Matt Simerson
db8ec50c3a
new plugin: dmarc
2013-08-05 15:05:14 -07:00
Matt Simerson
b64bb2f9e4
a collection of DKIM enhancements
...
* disable Mail::DKIM::TextWrap (causes mangled messages for some clients)
* pod improvements
* don't log the entire DKIM signature when signing
* add dkim_pass_domains connection note with DKIM signer domains that pass
* enable dkim tests
2013-08-05 15:05:14 -07:00
Matt Simerson
8b548e392d
test fixes for badmailfrom,headers plugins
2013-08-05 15:05:13 -07:00
Matt Simerson
50973aebf3
moved author tests from t/ to xt/
2013-08-05 15:05:13 -07:00
Matt Simerson
a2bba68af6
several adjustments for tests
2013-08-05 15:05:10 -07:00
Matt Simerson
85cead39f8
SPF: removed test for removed is_in_relayclients()
2013-08-05 15:05:09 -07:00
Matt Simerson
b70f29c008
fixed test for commit 78cab52582
2013-08-05 15:05:09 -07:00
Matt Simerson
af55a8d6dd
SPF: use $conn->relay_client instead of duplicated
...
is_in_relayclients method. Expects relay plugin to have set relay_client, a reasonable assumption.
2013-08-05 15:05:09 -07:00
Matt Simerson
1a7615ca7e
dnsbl test: don't cry about test failures that
...
depend on working network & DNS.
2013-08-05 15:05:09 -07:00
Matt Simerson
8d52a3f548
dnsbl: fixed plugin test failure
2013-08-05 15:05:09 -07:00
Matt Simerson
21ce00cc90
fix relayclient test after commit b8baa4b91b
...
which added example IPv6 IPs to the config file
2013-08-05 15:05:09 -07:00
Matt Simerson
b1c2fa16b5
drop the check_ prefix from the last 3 plugins
2013-08-05 15:01:52 -07:00
Matt Simerson
47151f165b
resolveable_fromhost: updated tests
2013-08-05 15:01:51 -07:00
Matt Simerson
208dfc3a21
rename require_resolvable_fromhost to resolvable_fromhost
2013-08-05 15:01:51 -07:00
Matt Simerson
e4d50a27d9
dnsbl test: remove hook_disconnect test
2013-08-05 15:01:50 -07:00
Matt Simerson
cf9b10a52f
badmailfromto: fixed tests (rename cleanups)
2013-08-05 15:01:50 -07:00
Matt Simerson
f7c5f49946
rcpt_ok: shorten test messages
2013-08-05 15:01:50 -07:00
Matt Simerson
14767f9b18
updated SPF tests
2013-08-05 15:01:50 -07:00
Matt Simerson
b245d30e9e
dnsbl: process DNS queries immediately
...
rather than deferring until RCPT. This greatly improves efficiency, since most connections will get marked naughty much sooner, having run fewer tests.
2013-08-05 15:01:49 -07:00
Matt Simerson
a259fec536
badrcptto: dropped check_ prefix from name
2013-08-05 15:01:49 -07:00
Matt Simerson
5ea1eb0f4c
badrcptto: log tweaks, better regex detection
2013-08-05 15:01:49 -07:00
Matt Simerson
35b9b32895
relay: logging tweak
2013-08-05 15:01:49 -07:00
Matt Simerson
4a3452f486
p0f: POD & log message updates
2013-08-05 15:01:48 -07:00
Matt Simerson
964eab3b2b
dspam: changed to only train on error
...
per suggestions by the dspam author
2013-08-05 15:01:48 -07:00
Matt Simerson
08256232a8
clamdscan: make sure headers exist before operating on them
2013-08-05 15:01:48 -07:00
Matt Simerson
47488650b3
badmailfrom rename fixups
2013-08-05 15:01:48 -07:00
Matt Simerson
7c798e45e6
badmailfrom rename: update test config/plugins
2013-08-05 15:01:48 -07:00
Matt Simerson
1fff417405
rename check_badmailfrom -> badmailfrom
2013-08-05 15:01:48 -07:00
Matt Simerson
e4133127d5
badmailfrom: remove rcpt hook (uses naughty instead)
2013-08-05 15:01:48 -07:00
Matt Simerson
046bc43e8e
t/config: add missing test config files
2013-08-05 15:01:48 -07:00
Matt Simerson
5a424e8940
t/config/plugins: update test plugin list
2013-08-05 15:01:48 -07:00
Matt Simerson
e2c84987f3
helo: refine plugin tests
2013-08-05 15:01:48 -07:00
Matt Simerson
97fda310ee
headers: plugin tests, deprecate check_basicheaders
2013-08-05 15:01:48 -07:00
Matt Simerson
d460dc86e3
spamassassin: add explicit default reject_type
...
consolidate the two data_post methods into one (more linear, simpler)
more informative log message
add new headers to top of headers (not bottom (consistent MTA behavior))
2013-08-05 15:01:48 -07:00
Matt Simerson
eba0a10132
badmailfrom: removed tests for rcpt_handler
...
and shorten test response messages in badmailfromto
2013-08-05 15:01:48 -07:00
Matt Simerson
7ff2d050f3
initial import - based on my qpsmtpd fork
...
which will merge into the main branch fairly easily
2013-08-05 15:01:47 -07:00
Matt Simerson
7d19bc6d5e
restore validate_password test
...
not sure how/why that got removed, but it wasn't intentional
2013-08-05 12:38:39 -07:00
Matt Simerson
b7cb9eaf3d
auth: adding tests (should have attached with a previous commit)
2013-08-05 12:38:38 -07:00
Matt Simerson
4e2ae484a2
Merge pull request #15 from msimerson/early
...
consolidated chunks of code duplicated 4x into log_and_deny and log_and_...
2013-08-05 12:33:42 -07:00
Matt Simerson
fd646b0d27
Merge pull request #29 from msimerson/helo
...
Helo
2013-08-05 12:30:59 -07:00
Matt Simerson
44db1fecf6
helo: loosen up matching DNS requirements
...
added X-HELO header to message
added timeout option
quieted down debug logging
2012-06-13 17:49:25 -04:00
Matt Simerson
74ae957936
helo: new plugin
...
helo - validate a HELO message delivered from a connecting host.
Includes the following tests:
is_in_badhelo
invalid_localhost
is_plain_ip
is_address_literal [N.N.N.N]
is_forged_literal
is_not_fqdn
no_forward_dns
no_reverse_dns
no_matching_dns
2012-06-11 22:27:01 -04:00
Matt Simerson
9c1e62371b
added new t/config directory, with developer tests
...
run when $ENV{QPSMTPD_DEVELOPER} is set
plugins file is same as in config.sample, but with more stuff enabled
2012-06-04 03:34:48 -04:00
Matt Simerson
85982d00f8
restore validate_password test
...
not sure how/why that got removed, but it wasn't intentional
2012-06-04 03:34:47 -04:00
Matt Simerson
9e70da4951
auth: adding tests (should have attached with a previous commit)
2012-06-04 03:34:47 -04:00
Matt Simerson
55b5f34365
auth_vpopmail_sql test, eval 'use DBI' before testing
2012-06-04 03:34:47 -04:00
Matt Simerson
732202ae37
another test tweak, for switching from 192.168 to 192.0
2012-06-04 03:34:47 -04:00
Matt Simerson
8795d4fd6e
relay: use IETF IP testing addresses
2012-06-04 03:34:47 -04:00
Matt Simerson
974f1a95e8
new relay plugin, with tests!
...
replaces functionality of previous 3 relay plugins
2012-06-04 03:34:47 -04:00
Matt Simerson
57a0e4ba7b
updated plugins to use QP::Plugins::is_immune
2012-06-04 03:26:16 -04:00
Matt Simerson
2a371a2c6e
consolidated chunks of code duplicated 4x into log_and_deny and log_and_pass
...
in apr_*_handler subs, return DECLINED when connection is not available to read (like during tests)
added 23 tests
deprecate action argument
'action log' did nothing, better logging controls available with loglevel
'action deny' -> reject 1
'action denysoft' => reject 1 reject_type temp
POD
use head2 for config options (instead of over, item, back)
added loglevel section
updated for replacement of action with reject options
2012-06-04 03:23:14 -04:00
Ask Bjørn Hansen
0e2384cceb
Make all plugins use $self->connection rather than $self->qp->connection
...
Merge remote-tracking branch 'msimerson/connect'
Conflicts:
plugins/async/require_resolvable_fromhost
plugins/require_resolvable_fromhost
2012-06-03 23:53:43 -07:00
Matt Simerson
0a16621f02
connection consistency
...
- $self->qp->connection->notes
+ $self->connection->notes
and all tests pass.
2012-06-02 00:46:33 -04:00
Matt Simerson
2f49cafcd6
resolvable_fromhost: refactored, added: POD, tests, reject, reject_type
2012-05-23 23:39:43 -04:00
Ask Bjørn Hansen
9e239fd83d
Merge pull request #16 from msimerson/geoip
...
Geoip plugin improvements
2012-05-23 15:39:10 -07:00
Matt Simerson
e07488d4f6
hrmm, why didn't Test::Qpsmtpd::Plugin::log work?
2012-05-22 17:41:40 -04:00