summaryrefslogtreecommitdiff
path: root/src/mailman/commands/tests/test_confirm.py
Commit message (Collapse)AuthorAgeFilesLines
* Convert to click for CLI optionsBarry Warsaw2017-07-221-175/+0
|
* Fix confirmation of unsubscription requests. (Closes: #294)Barry Warsaw2017-01-161-3/+29
|
* Bump copyright years.Barry Warsaw2017-01-041-1/+1
|
* Simplify the implementation.Barry Warsaw2016-10-171-5/+5
| | | | | | | | | | | | | | | | | | | | | | This merges the SubscriptionManager and UnsubscriptionManager into a single SubscriptionManager implementation that handles both register() and unregister(). This allows us to use direct class-based adaptation instead of the more clunky getAdapter() API. We can also eliminate the funky _get_workflow() implementation detail. This has a couple of side-effects. .confirm() must lookup the token in the pendings database and pull out the pending type, dispatching to the proper class depending on the type, or raising a LookupError if the token is None or there is no pendable associated with the given token. This feels like an acceptable trade-off. However, this *also* means that IWorkflowStateManager must lose its 'name' argument in its methods. That's because we won't actually know the name until its too late. Honestly, the name wasn't providing much value anyway (it was always the subclass's name), so losing that seems fine too. The complication here is that the name was a primary key in the 'workflowstate' table, so we need to add its removal in the database migration.
* IWorkflowManager -> ISubscriptionManagerBarry Warsaw2016-09-011-3/+3
|
* CheckpointingBarry Warsaw2016-09-011-1/+1
|
* Intermediate CommitAbhilash Raj2016-09-011-6/+6
|
* Clean up the commands subdirectory.Barry Warsaw2016-03-241-18/+7
|
* Happy New Year.Barry Warsaw2016-01-021-1/+1
|
* * Fix the processing of subscription confirmation messages when the mailingBarry Warsaw2015-10-311-2/+84
| | | | list is set to confirm-then-moderate. (Closes #114)
* Plumb the subscription policy through the REST API.Barry Warsaw2015-04-151-1/+2
|
* Prevent replay attacks with the confirmation token.Barry Warsaw2015-04-151-4/+1
|
* Checkpointing.Barry Warsaw2015-04-141-2/+4
|
* Bump copyright years.Barry Warsaw2015-01-041-1/+1
|
* Remove huge amounts of now unnecessary file boilerplate.Barry Warsaw2014-12-221-5/+1
|
* Several internal improvements:Barry Warsaw2014-01-061-3/+2
| | | | | | | | | | | | | | | | | | | | | | * New events: - ConfirmationNeededEvent is triggered when a pendable requiring confirmation is created. This allows us to define an event handler for this event which sends the user notification. - SubscriptionEvent is triggered when a member is added to a mailing list. This lets us define an event handler which sends the welcome message. * send_welcome_message() now takes a member parameter instead of an address, which lets us directly access the member's delivery mode and user display name (if the member has a user, which it might not in some cases). * Use the list id in the pendable record instead of the list name for robustness (the latter can change but the former is permanent). * Test more registration conditions. * In the bin/runner command line switch handling, default `verbose` to None instead of False. This makes it work better with nose's -E switch (log to stderr). * In call_api(), if a POST, PUT, or PATCH method is used and data is None, encode the empty dictionary; seems like the behavior of urlencode() has changed, so this is safer. * Fix style and pyflakes warnings.
* Bump copyright years.Barry Warsaw2014-01-011-1/+1
|
* Bump copyright years.Barry Warsaw2013-01-011-1/+1
|
* * A welcome message is sent when the user confirms their subscription viaBarry Warsaw2012-03-041-0/+83
email. Also: - The user's Full Name is included on the To line of a welcome message. - Clean up some tests. - The welcome_message_uri for lists using the default style is set to mailman:///welcome.txt so a welcome message is sent by default.