assertEquals('a', $c['c']); //variable referencing another variable $c['d'] = '${c}'; $this->assertEquals('a', $c['d']); } public function testReading() { $data = [ 'a' => 'b', 'c' => [ 'd' => 'e' ] ]; //json $a = new Config(); $a->readFile(__DIR__.'/configtest.json'); $this->assertEquals($data, $a->get()); //yaml $a = new Config(); $a->readFile(__DIR__.'/configtest.yaml'); $this->assertEquals($data, $a->get()); } public function testSerializing() { $data = [ 'a' => 'b', 'c' => [ 'd' => 'e' ] ]; $c = new Config($data); //json $this->assertEquals($data, json_decode($c->json(), true)); //yaml $this->assertEquals($data, Yaml::parse($c->yaml())); } }