MessageUiMassiveHardCodedArgumentsTest.php in Message UI 8
File
tests/src/Functional/MessageUiMassiveHardCodedArgumentsTest.php
View source
<?php
namespace Drupal\Tests\message_ui\Functional;
use Drupal\message\Entity\Message;
class MessageUiMassiveHardCodedArgumentsTest extends AbstractTestMessageUi {
protected $messageTemplate;
public function setUp() {
parent::setUp();
$this->account = $this
->drupalCreateUser();
}
public function testRemoveAddingArguments() {
$this->messageTemplate = $this
->createMessageTemplate('dummy_message', 'Dummy test', 'This is a dummy message', [
'@{message:author:name} @{message:author:mail}',
]);
$this
->configSet('update_tokens.update_tokens', TRUE);
$this
->configSet('update_tokens.how_to_update', 'update_with_item');
$message = Message::create([
'template' => $this->messageTemplate
->id(),
]);
$message
->setOwner($this->account)
->save();
$original_arguments = $message
->getArguments();
$this
->configSet('update_tokens.how_to_act', 'update_when_removed');
$this->messageTemplate
->set('text', [
[
'value' => '@{message:author:name}.',
'format' => filter_default_format(),
],
]);
$this->messageTemplate
->save();
$queue = \Drupal::queue('message_ui_arguments');
$queue
->createQueue();
$item = $queue
->claimItem();
$queue
->createItem($item->data);
$this->container
->get('cron')
->run();
$message = Message::load($message
->id());
$this
->assertTrue($original_arguments != $message
->getArguments(), 'The message arguments has changed during the queue worker work.');
$message = Message::create([
'template' => $this->messageTemplate
->id(),
]);
$message
->setOwner($this->account)
->save();
$original_arguments = $message
->getArguments();
$this
->configSet('update_tokens.how_to_act', 'update_when_added');
$message_template = $this
->loadMessageTemplate('dummy_message');
$message_template
->set('text', [
'@{message:user:name}.',
]);
$message_template
->save();
$queue = \Drupal::queue('message_ui_arguments');
$item = $queue
->claimItem();
$queue
->createItem($item->data);
$message = Message::load($message
->id());
$this
->assertTrue($original_arguments == $message
->getArguments(), 'The message arguments has changed during the queue worker work.');
}
}