You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.3 KiB
PHTML
79 lines
2.3 KiB
PHTML
5 years ago
|
<?php
|
||
|
|
||
|
require_once ("../Spyc.php");
|
||
|
|
||
|
function roundTrip($a) { return Spyc::YAMLLoad(Spyc::YAMLDump(array('x' => $a))); }
|
||
|
|
||
|
|
||
|
class RoundTripTest extends PHPUnit_Framework_TestCase {
|
||
|
|
||
|
protected function setUp() {
|
||
|
}
|
||
|
|
||
|
public function testNull() {
|
||
|
$this->assertEquals (array ('x' => null), roundTrip (null));
|
||
|
}
|
||
|
|
||
|
public function testY() {
|
||
|
$this->assertEquals (array ('x' => 'y'), roundTrip ('y'));
|
||
|
}
|
||
|
|
||
|
public function testExclam() {
|
||
|
$this->assertEquals (array ('x' => '!yeah'), roundTrip ('!yeah'));
|
||
|
}
|
||
|
|
||
|
public function test5() {
|
||
|
$this->assertEquals (array ('x' => '5'), roundTrip ('5'));
|
||
|
}
|
||
|
|
||
|
public function testSpaces() {
|
||
|
$this->assertEquals (array ('x' => 'x '), roundTrip ('x '));
|
||
|
}
|
||
|
|
||
|
public function testApostrophes() {
|
||
|
$this->assertEquals (array ('x' => "'biz'"), roundTrip ("'biz'"));
|
||
|
}
|
||
|
|
||
|
public function testNewLines() {
|
||
|
$this->assertEquals (array ('x' => "\n"), roundTrip ("\n"));
|
||
|
}
|
||
|
|
||
|
public function testHashes() {
|
||
|
$this->assertEquals (array ('x' => array ("#color" => '#fff')), roundTrip (array ("#color" => '#fff')));
|
||
|
}
|
||
|
|
||
|
public function testPreserveString() {
|
||
|
$result1 = roundTrip ('0');
|
||
|
$result2 = roundTrip ('true');
|
||
|
$this->assertTrue (is_string ($result1['x']));
|
||
|
$this->assertTrue (is_string ($result2['x']));
|
||
|
}
|
||
|
|
||
|
public function testPreserveBool() {
|
||
|
$result = roundTrip (true);
|
||
|
$this->assertTrue (is_bool ($result['x']));
|
||
|
}
|
||
|
|
||
|
public function testPreserveInteger() {
|
||
|
$result = roundTrip (0);
|
||
|
$this->assertTrue (is_int ($result['x']));
|
||
|
}
|
||
|
|
||
|
public function testWordWrap() {
|
||
|
$this->assertEquals (array ('x' => "aaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"), roundTrip ("aaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"));
|
||
|
}
|
||
|
|
||
|
public function testABCD() {
|
||
|
$this->assertEquals (array ('a', 'b', 'c', 'd'), Spyc::YAMLLoad(Spyc::YAMLDump(array('a', 'b', 'c', 'd'))));
|
||
|
}
|
||
|
|
||
|
public function testABCD2() {
|
||
|
$a = array('a', 'b', 'c', 'd'); // Create a simple list
|
||
|
$b = Spyc::YAMLDump($a); // Dump the list as YAML
|
||
|
$c = Spyc::YAMLLoad($b); // Load the dumped YAML
|
||
|
$d = Spyc::YAMLDump($c); // Re-dump the data
|
||
|
$this->assertSame($b, $d);
|
||
|
}
|
||
|
|
||
|
}
|