123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197 |
- <?php
- require_once ("../Spyc.php");
- class DumpTest extends PHPUnit_Framework_TestCase {
- private $files_to_test = array();
- public function setUp() {
- $this->files_to_test = array ('../spyc.yaml', 'failing1.yaml', 'indent_1.yaml', 'quotes.yaml');
- }
- public function testShortSyntax() {
- $dump = spyc_dump(array ('item1', 'item2', 'item3'));
- $awaiting = "- item1\n- item2\n- item3\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDump() {
- foreach ($this->files_to_test as $file) {
- $yaml = spyc_load(file_get_contents($file));
- $dump = Spyc::YAMLDump ($yaml);
- $yaml_after_dump = Spyc::YAMLLoad ($dump);
- $this->assertEquals ($yaml, $yaml_after_dump);
- }
- }
- public function testDumpWithQuotes() {
- $Spyc = new Spyc();
- $Spyc->setting_dump_force_quotes = true;
- foreach ($this->files_to_test as $file) {
- $yaml = $Spyc->load(file_get_contents($file));
- $dump = $Spyc->dump ($yaml);
- $yaml_after_dump = Spyc::YAMLLoad ($dump);
- $this->assertEquals ($yaml, $yaml_after_dump);
- }
- }
- public function testDumpArrays() {
- $dump = Spyc::YAMLDump(array ('item1', 'item2', 'item3'));
- $awaiting = "---\n- item1\n- item2\n- item3\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testNull() {
- $dump = Spyc::YAMLDump(array('a' => 1, 'b' => null, 'c' => 3));
- $awaiting = "---\na: 1\nb: null\nc: 3\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testNext() {
- $array = array("aaa", "bbb", "ccc");
- #set arrays internal pointer to next element
- next($array);
- $dump = Spyc::YAMLDump($array);
- $awaiting = "---\n- aaa\n- bbb\n- ccc\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpingMixedArrays() {
- $array = array();
- $array[] = 'Sequence item';
- $array['The Key'] = 'Mapped value';
- $array[] = array('A sequence','of a sequence');
- $array[] = array('first' => 'A sequence','second' => 'of mapped values');
- $array['Mapped'] = array('A sequence','which is mapped');
- $array['A Note'] = 'What if your text is too long?';
- $array['Another Note'] = 'If that is the case, the dumper will probably fold your text by using a block. Kinda like this.';
- $array['The trick?'] = 'The trick is that we overrode the default indent, 2, to 4 and the default wordwrap, 40, to 60.';
- $array['Old Dog'] = "And if you want\n to preserve line breaks, \ngo ahead!";
- $array['key:withcolon'] = "Should support this to";
- $yaml = Spyc::YAMLDump($array,4,60);
- }
- public function testMixed() {
- $dump = Spyc::YAMLDump(array(0 => 1, 'b' => 2, 1 => 3));
- $awaiting = "---\n0: 1\nb: 2\n1: 3\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpNumerics() {
- $dump = Spyc::YAMLDump(array ('404', '405', '500'));
- $awaiting = "---\n- \"404\"\n- \"405\"\n- \"500\"\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpAsterisks() {
- $dump = Spyc::YAMLDump(array ('*'));
- $awaiting = "---\n- '*'\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpAmpersands() {
- $dump = Spyc::YAMLDump(array ('some' => '&foo'));
- $awaiting = "---\nsome: '&foo'\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpExclamations() {
- $dump = Spyc::YAMLDump(array ('some' => '!foo'));
- $awaiting = "---\nsome: '!foo'\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpExclamations2() {
- $dump = Spyc::YAMLDump(array ('some' => 'foo!'));
- $awaiting = "---\nsome: foo!\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpApostrophes() {
- $dump = Spyc::YAMLDump(array ('some' => "'Biz' pimpt bedrijventerreinen"));
- $awaiting = "---\nsome: \"'Biz' pimpt bedrijventerreinen\"\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testDumpNumericHashes() {
- $dump = Spyc::YAMLDump(array ("titel"=> array("0" => "", 1 => "Dr.", 5 => "Prof.", 6 => "Prof. Dr.")));
- $awaiting = "---\ntitel:\n 0: \"\"\n 1: Dr.\n 5: Prof.\n 6: Prof. Dr.\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testEmpty() {
- $dump = Spyc::YAMLDump(array("foo" => array()));
- $awaiting = "---\nfoo: [ ]\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testHashesInKeys() {
- $dump = Spyc::YAMLDump(array ('#color' => '#ffffff'));
- $awaiting = "---\n\"#color\": '#ffffff'\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testParagraph() {
- $dump = Spyc::YAMLDump(array ('key' => "|\n value"));
- $awaiting = "---\nkey: |\n value\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testParagraphTwo() {
- $dump = Spyc::YAMLDump(array ('key' => 'Congrats, pimpt bedrijventerreinen pimpt bedrijventerreinen pimpt bedrijventerreinen!'));
- $awaiting = "---\nkey: >\n Congrats, pimpt bedrijventerreinen pimpt\n bedrijventerreinen pimpt\n bedrijventerreinen!\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testString() {
- $dump = Spyc::YAMLDump(array ('key' => array('key_one' => 'Congrats, pimpt bedrijventerreinen!')));
- $awaiting = "---\nkey:\n key_one: Congrats, pimpt bedrijventerreinen!\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testStringLong() {
- $dump = Spyc::YAMLDump(array ('key' => array('key_one' => 'Congrats, pimpt bedrijventerreinen pimpt bedrijventerreinen pimpt bedrijventerreinen!')));
- $awaiting = "---\nkey:\n key_one: >\n Congrats, pimpt bedrijventerreinen pimpt\n bedrijventerreinen pimpt\n bedrijventerreinen!\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testStringDoubleQuote() {
- $dump = Spyc::YAMLDump(array ('key' => array('key_one' => array('key_two' => '"Système d\'e-réservation"'))));
- $awaiting = "---\nkey:\n key_one:\n key_two: |\n Système d'e-réservation\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testLongStringDoubleQuote() {
- $dump = Spyc::YAMLDump(array ('key' => array('key_one' => array('key_two' => '"Système d\'e-réservation bedrijventerreinen pimpt" bedrijventerreinen!'))));
- $awaiting = "---\nkey:\n key_one:\n key_two: |\n \"Système d'e-réservation bedrijventerreinen pimpt\" bedrijventerreinen!\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testStringStartingWithSpace() {
- $dump = Spyc::YAMLDump(array ('key' => array('key_one' => " Congrats, pimpt bedrijventerreinen \n pimpt bedrijventerreinen pimpt bedrijventerreinen!")));
- $awaiting = "---\nkey:\n key_one: |\n Congrats, pimpt bedrijventerreinen\n pimpt bedrijventerreinen pimpt bedrijventerreinen!\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testPerCentOne() {
- $dump = Spyc::YAMLDump(array ('key' => "%name%, pimpts bedrijventerreinen!"));
- $awaiting = "---\nkey: '%name%, pimpts bedrijventerreinen!'\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testPerCentAndSimpleQuote() {
- $dump = Spyc::YAMLDump(array ('key' => "%name%, pimpt's bedrijventerreinen!"));
- $awaiting = "---\nkey: \"%name%, pimpt's bedrijventerreinen!\"\n";
- $this->assertEquals ($awaiting, $dump);
- }
- public function testPerCentAndDoubleQuote() {
- $dump = Spyc::YAMLDump(array ('key' => '%name%, pimpt\'s "bed"rijventerreinen!'));
- $awaiting = "---\nkey: |\n %name%, pimpt's \"bed\"rijventerreinen!\n";
- $this->assertEquals ($awaiting, $dump);
- }
- }
|