Mercurial > hg > isophonics-drupal-site
annotate core/tests/Drupal/Tests/Component/Serialization/YamlTestBase.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 129ea1e6d783 |
children |
rev | line source |
---|---|
Chris@0 | 1 <?php |
Chris@0 | 2 |
Chris@0 | 3 namespace Drupal\Tests\Component\Serialization; |
Chris@0 | 4 |
Chris@0 | 5 use PHPUnit\Framework\TestCase; |
Chris@0 | 6 |
Chris@0 | 7 /** |
Chris@0 | 8 * Provides standard data to validate different YAML implementations. |
Chris@0 | 9 */ |
Chris@0 | 10 abstract class YamlTestBase extends TestCase { |
Chris@0 | 11 |
Chris@0 | 12 /** |
Chris@0 | 13 * Some data that should be able to be serialized. |
Chris@0 | 14 */ |
Chris@0 | 15 public function providerEncodeDecodeTests() { |
Chris@0 | 16 return [ |
Chris@0 | 17 [ |
Chris@0 | 18 'foo' => 'bar', |
Chris@0 | 19 'id' => 'schnitzel', |
Chris@0 | 20 'ponies' => ['nope', 'thanks'], |
Chris@0 | 21 'how' => [ |
Chris@0 | 22 'about' => 'if', |
Chris@0 | 23 'i' => 'ask', |
Chris@0 | 24 'nicely', |
Chris@0 | 25 ], |
Chris@0 | 26 'the' => [ |
Chris@0 | 27 'answer' => [ |
Chris@0 | 28 'still' => 'would', |
Chris@0 | 29 'be' => 'Y', |
Chris@0 | 30 ], |
Chris@0 | 31 ], |
Chris@0 | 32 'how_many_times' => 123, |
Chris@0 | 33 'should_i_ask' => FALSE, |
Chris@0 | 34 1, |
Chris@0 | 35 FALSE, |
Chris@0 | 36 [1, FALSE], |
Chris@0 | 37 [10], |
Chris@0 | 38 [0 => '123456'], |
Chris@0 | 39 ], |
Chris@17 | 40 [NULL], |
Chris@0 | 41 ]; |
Chris@0 | 42 } |
Chris@0 | 43 |
Chris@0 | 44 /** |
Chris@0 | 45 * Some data that should be able to be de-serialized. |
Chris@0 | 46 */ |
Chris@0 | 47 public function providerDecodeTests() { |
Chris@0 | 48 $data = [ |
Chris@0 | 49 // NULL files. |
Chris@0 | 50 ['', NULL], |
Chris@0 | 51 ["\n", NULL], |
Chris@0 | 52 ["---\n...\n", NULL], |
Chris@0 | 53 |
Chris@0 | 54 // Node anchors. |
Chris@0 | 55 [ |
Chris@0 | 56 " |
Chris@0 | 57 jquery.ui: |
Chris@0 | 58 version: &jquery_ui 1.10.2 |
Chris@0 | 59 |
Chris@0 | 60 jquery.ui.accordion: |
Chris@0 | 61 version: *jquery_ui |
Chris@0 | 62 ", |
Chris@0 | 63 [ |
Chris@0 | 64 'jquery.ui' => [ |
Chris@0 | 65 'version' => '1.10.2', |
Chris@0 | 66 ], |
Chris@0 | 67 'jquery.ui.accordion' => [ |
Chris@0 | 68 'version' => '1.10.2', |
Chris@0 | 69 ], |
Chris@0 | 70 ], |
Chris@0 | 71 ], |
Chris@0 | 72 ]; |
Chris@0 | 73 |
Chris@0 | 74 // 1.2 Bool values. |
Chris@0 | 75 foreach ($this->providerBoolTest() as $test) { |
Chris@0 | 76 $data[] = ['bool: ' . $test[0], ['bool' => $test[1]]]; |
Chris@0 | 77 } |
Chris@0 | 78 $data = array_merge($data, $this->providerBoolTest()); |
Chris@0 | 79 |
Chris@0 | 80 return $data; |
Chris@0 | 81 } |
Chris@0 | 82 |
Chris@0 | 83 /** |
Chris@0 | 84 * Tests different boolean serialization and de-serialization. |
Chris@0 | 85 */ |
Chris@0 | 86 public function providerBoolTest() { |
Chris@0 | 87 return [ |
Chris@0 | 88 ['true', TRUE], |
Chris@0 | 89 ['TRUE', TRUE], |
Chris@0 | 90 ['True', TRUE], |
Chris@0 | 91 ['y', 'y'], |
Chris@0 | 92 ['Y', 'Y'], |
Chris@0 | 93 ['false', FALSE], |
Chris@0 | 94 ['FALSE', FALSE], |
Chris@0 | 95 ['False', FALSE], |
Chris@0 | 96 ['n', 'n'], |
Chris@0 | 97 ['N', 'N'], |
Chris@0 | 98 ]; |
Chris@0 | 99 } |
Chris@0 | 100 |
Chris@0 | 101 } |