3 namespace Drupal\Tests\Core\StringTranslation;
5 use Drupal\Core\DependencyInjection\ContainerBuilder;
6 use Drupal\Core\StringTranslation\PluralTranslatableMarkup;
7 use Drupal\Tests\UnitTestCase;
10 * Tests the TranslatableMarkup class.
12 * @coversDefaultClass \Drupal\Core\StringTranslation\PluralTranslatableMarkup
13 * @group StringTranslation
15 class PluralTranslatableMarkupTest extends UnitTestCase {
18 * Tests serialization of PluralTranslatableMarkup().
20 * @dataProvider providerPluralTranslatableMarkupSerialization
22 public function testPluralTranslatableMarkupSerialization($count, $expected_text) {
23 // Add a mock string translation service to the container.
24 $container = new ContainerBuilder();
25 $container->set('string_translation', $this->getStringTranslationStub());
26 \Drupal::setContainer($container);
28 // Create an object to serialize and unserialize.
29 $markup = new PluralTranslatableMarkup($count, 'singular @count', 'plural @count');
30 $serialized_markup = unserialize(serialize($markup));
31 $this->assertEquals($expected_text, $serialized_markup->render());
35 * Data provider for ::testPluralTranslatableMarkupSerialization().
37 public function providerPluralTranslatableMarkupSerialization() {