More updates to stop using dev or alpha or beta versions.
[yaffs-website] / web / core / tests / Drupal / Tests / Core / StringTranslation / PluralTranslatableMarkupTest.php
1 <?php
2
3 namespace Drupal\Tests\Core\StringTranslation;
4
5 use Drupal\Core\DependencyInjection\ContainerBuilder;
6 use Drupal\Core\StringTranslation\PluralTranslatableMarkup;
7 use Drupal\Tests\UnitTestCase;
8
9 /**
10  * Tests the TranslatableMarkup class.
11  *
12  * @coversDefaultClass \Drupal\Core\StringTranslation\PluralTranslatableMarkup
13  * @group StringTranslation
14  */
15 class PluralTranslatableMarkupTest extends UnitTestCase {
16
17   /**
18    * Tests serialization of PluralTranslatableMarkup().
19    *
20    * @dataProvider providerPluralTranslatableMarkupSerialization
21    */
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);
27
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());
32   }
33
34   /**
35    * Data provider for ::testPluralTranslatableMarkupSerialization().
36    */
37   public function providerPluralTranslatableMarkupSerialization() {
38     return [
39       [1, 'singular 1'],
40       [2, 'plural 2'],
41     ];
42   }
43
44 }