Closed totten closed 5 years ago
Rebased. Also updated to use more objective terminology (e.g. bao
instead of legacy
).
Re-tested on current CiviCRM 5.13-RC branch.
civicrm-core flexmailer mosaico || mos-preview mos-send-test mos-submit mos-anon || trad-preview trad-send-test trad-submit trad-anon
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5.13 master-setting[auto] 2.x || OK OK OK OK* || OK OK OK Fail
5.13 master-setting[flx] 2.x || OK OK OK OK* || OK OK OK OK*
5.13 master-setting[bao] 2.x || OK OK OK OK* || OK OK OK Fail
Definitions:
mos-*
: Tested with Mosaico mailingtrad-*
: Tested with traditional mailing*-preview
: In CiviMail composition UI, use "Preview" buttons. Check a few contact+action+mailing tokens.*-send-test
: In CiviMail composition UI, use "Send Test" button. Check a few contact+action+mailing tokens. Check for presence/absence of X-Flexmailer
header.*-submit
: Submit the mailing. Run the cron job. Check a few contact+action+mailing tokens. Check for presence/absence of X-Flexmailer
header.*-anon
: View the sent mailing in a browser as an anonymous userSo it generally looks good, except for the otherwise known/open issues around anonymously viewing a mailing in a browser.
Before
When you enable Flexmailer, it is used for new-style mailings (e.g. Mosaico). However, it is not used to deliver
traditional
mailings.There is a hidden/undocumented setting (
experimentalFlexMailerEngine
) to toggle this. The setting has primarily been used for automated testing, but it has also been communicated to other developers/implementers.After
flexmailer_traditional
which dictates whether Flexmailer will try to processtraditional
mailings.experimentalFlexMailerEngine
is mostly removed. However, if you haveflexmailer_traditional=auto
, it will fallback and obeyexperimentalFlexMailerEngine
.Comments
The automated tests rely on some forms of this setting to work correctly.
Additionally, to make sure that every form was tried in a realistic way, I used these manual steps:
mailcatcher
).Civi\FlexMailer\Listener\BasicHeaders
to set$mailParams['X-Flexmailer'] = 'Yes';
. This way, you can determine which engine sent a message by inspecting the headers.flexmailer_traditional
(auto
,bao
,flexmailer
):flexmailer_traditional
to the desired valuecivibuild snapshot dmaster --snapshot dm-send
)flexmailer_traditional
(auto
,bao
,flexmailer
):flexmailer_traditional
to the desired valuecivibuild restore dmaster --snapshot dm-send && cv flush && cv api setting.create flexmailer_traditional=THE_VALUE && cv api -U admin job.process_mailing
)To work completely, depends on #38. However, that's a preexisting issue, and it mostly works without.