diff --git a/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php b/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php index c7dc0c0634ad1fa593b2c0fa99d4ca8e506fc16d..bb8d35904b67e81c0b1d593d116ac0391253ba64 100644 --- a/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php +++ b/core/modules/config_translation/src/Tests/ConfigTranslationUiTest.php @@ -27,7 +27,7 @@ class ConfigTranslationUiTest extends WebTestBase { * * @var array */ - public static $modules = array('node', 'contact', 'config_translation', 'config_translation_test', 'views', 'views_ui', 'contextual'); + public static $modules = array('node', 'contact', 'contact_test', 'config_translation', 'config_translation_test', 'views', 'views_ui', 'contextual'); /** * Languages to enable. diff --git a/core/modules/contact/src/Tests/ContactSitewideTest.php b/core/modules/contact/src/Tests/ContactSitewideTest.php index 7e6207f0a848620c7789872b0a99ab977d5e25e0..beee4300be78a868bb193cd08a83bbac79e9a5b4 100644 --- a/core/modules/contact/src/Tests/ContactSitewideTest.php +++ b/core/modules/contact/src/Tests/ContactSitewideTest.php @@ -23,7 +23,7 @@ class ContactSitewideTest extends WebTestBase { * * @var array */ - public static $modules = array('text', 'contact', 'field_ui'); + public static $modules = array('text', 'contact', 'field_ui', 'contact_test'); /** * Tests configuration options and the site-wide contact form. diff --git a/core/modules/contact/src/Tests/ContactStorageTest.php b/core/modules/contact/src/Tests/ContactStorageTest.php index 4d1b73b3bc08f5acb816824b1086a8132ea38024..741e6b56e390f9f3208fe28f7de98998c9dea14e 100644 --- a/core/modules/contact/src/Tests/ContactStorageTest.php +++ b/core/modules/contact/src/Tests/ContactStorageTest.php @@ -27,6 +27,7 @@ class ContactStorageTest extends ContactSitewideTest { 'contact', 'field_ui', 'contact_storage_test', + 'contact_test', ); public static function getInfo() { diff --git a/core/modules/contact/src/Tests/MessageEntityTest.php b/core/modules/contact/src/Tests/MessageEntityTest.php index 9d1ed65c0e9788001e9cb0b6c401f7b5c17fad74..f888345f539c86ed19abc67f813d8d310c42056f 100644 --- a/core/modules/contact/src/Tests/MessageEntityTest.php +++ b/core/modules/contact/src/Tests/MessageEntityTest.php @@ -22,7 +22,13 @@ class MessageEntityTest extends KernelTestBase { * * @var array */ - public static $modules = array('system', 'contact', 'field', 'user'); + public static $modules = array( + 'system', + 'contact', + 'field', + 'user', + 'contact_test', + ); protected function setUp() { parent::setUp(); diff --git a/core/modules/contact/config/install/contact.form.feedback.yml b/core/modules/contact/tests/modules/contact_test/config/install/contact.form.feedback.yml similarity index 100% rename from core/modules/contact/config/install/contact.form.feedback.yml rename to core/modules/contact/tests/modules/contact_test/config/install/contact.form.feedback.yml diff --git a/core/modules/contact/tests/modules/contact_test/contact_test.info.yml b/core/modules/contact/tests/modules/contact_test/contact_test.info.yml new file mode 100644 index 0000000000000000000000000000000000000000..6750f45618c856156a7dc51360a7f417b1353f1d --- /dev/null +++ b/core/modules/contact/tests/modules/contact_test/contact_test.info.yml @@ -0,0 +1,8 @@ +name: 'Contact test module' +type: module +description: 'Contains test contact form.' +package: Testing +version: VERSION +core: 8.x +dependencies: + - contact diff --git a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php index 30ab0a0fc9907488e7870161a0db50c385e6b3ab..e0c20fc82cbc67db3da7306e48b053e56f12e590 100644 --- a/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php +++ b/core/modules/locale/src/Tests/LocaleConfigTranslationTest.php @@ -22,7 +22,7 @@ class LocaleConfigTranslationTest extends WebTestBase { * * @var array */ - public static $modules = array('locale', 'contact'); + public static $modules = array('locale', 'contact', 'contact_test'); /** * {@inheritdoc} diff --git a/core/profiles/standard/config/install/contact.form.feedback.yml b/core/profiles/standard/config/install/contact.form.feedback.yml new file mode 100644 index 0000000000000000000000000000000000000000..8fb776506cb2b55e1b3157f4a79528962a7e71fc --- /dev/null +++ b/core/profiles/standard/config/install/contact.form.feedback.yml @@ -0,0 +1,7 @@ +id: feedback +label: 'Website feedback' +recipients: { } +reply: '' +weight: 0 +status: true +langcode: en diff --git a/core/profiles/standard/src/Tests/StandardTest.php b/core/profiles/standard/src/Tests/StandardTest.php index b05285eb3f1bbd1c04049fc3a12cc1c3f4e4041b..3ba23477b03a14dc596a888b46a7f08ef488329a 100644 --- a/core/profiles/standard/src/Tests/StandardTest.php +++ b/core/profiles/standard/src/Tests/StandardTest.php @@ -8,6 +8,7 @@ namespace Drupal\standard\Tests; use Drupal\config\Tests\SchemaCheckTestTrait; +use Drupal\contact\Entity\ContactForm; use Drupal\simpletest\WebTestBase; /** @@ -112,6 +113,10 @@ function testStandard() { \Drupal::moduleHandler()->uninstall(array('editor', 'ckeditor')); $this->rebuildContainer(); \Drupal::moduleHandler()->install(array('editor')); + /** @var \Drupal\contact\ContactFormInterface $contact_form */ + $contact_form = ContactForm::load('feedback'); + $recipients = $contact_form->getRecipients(); + $this->assertEqual(['simpletest@example.com'], $recipients); } } diff --git a/core/profiles/standard/standard.profile b/core/profiles/standard/standard.profile index 4af64566e475e27fee29b64a547dc7b0052daa1a..ad69906d6d376fa04e9c2167aa5eded790bd41a6 100644 --- a/core/profiles/standard/standard.profile +++ b/core/profiles/standard/standard.profile @@ -4,6 +4,7 @@ * Enables modules and site configuration for a standard site installation. */ +use Drupal\contact\Entity\ContactForm; use Drupal\Core\Form\FormStateInterface; /** @@ -14,4 +15,13 @@ function standard_form_install_configure_form_alter(&$form, FormStateInterface $form_state) { // Pre-populate the site name with the server name. $form['site_information']['site_name']['#default_value'] = \Drupal::request()->server->get('SERVER_NAME'); + $form['#submit'][] = 'standard_form_install_configure_submit'; +} + +/** + * Submission handler to sync the contact.form.feedback recipient. + */ +function standard_form_install_configure_submit($form, FormStateInterface $form_state) { + $site_mail = $form_state->getValue('site_mail'); + ContactForm::load('feedback')->setRecipients([$site_mail])->save(); }