Tests reading from selected multiple configured stores.

Returns

void

Source

						public function testReadMergeSelectedConfigurations() {
		Catalog::reset();
		Catalog::config(array(
			'runtime0' => array('adapter' => new Memory()),
			'runtime1' => array('adapter' => new Memory()),
			'runtime2' => array('adapter' => new Memory())
		));

		$data = '/postalCode en0/';
		Catalog::write('runtime0', 'validation.postalCode', 'en', $data);
		$data = '/postalCode en1/';
		Catalog::write('runtime1', 'validation.postalCode', 'en', $data);
		$data = '/postalCode en2/';
		Catalog::write('runtime2', 'validation.postalCode', 'en', $data);
		$data = '/ssn en2/';
		Catalog::write('runtime2', 'validation.ssn', 'en', $data);

		$result = Catalog::read('runtime0', 'validation.postalCode', 'en');
		$expected = '/postalCode en0/';
		$this->assertEqual($expected, $result);

		$result = Catalog::read('runtime2', 'validation.postalCode', 'en');
		$expected = '/postalCode en2/';
		$this->assertEqual($expected, $result);

		$result = Catalog::read('runtime2', 'validation.postalCode', 'en');
		$expected = '/postalCode en2/';
		$this->assertEqual($expected, $result);

		$result = Catalog::read(array('runtime0', 'runtime2'), 'validation', 'en');
		$expected = array(
			'postalCode' => '/postalCode en0/',
			'ssn' => '/ssn en2/'
		);
		$this->assertEqual($expected, $result);

		$resultA = Catalog::read(array('runtime0', 'runtime2'), 'validation', 'en');
		$resultB = Catalog::read(true, 'validation', 'en');
		$this->assertEqual($resultA, $resultB);
	}