public function testConfig()
{
$property = new ProjectProperty();
$property->setConfig('foo');
$actual = array();
$expected = array('foo' => 3);
$config = $property->mergeConfig($actual, 3);
$this->assertEquals($expected, $config);
$property->setConfig('foo');
$actual = array('foo' => 1);
$expected = array('foo' => 3);
$config = $property->mergeConfig($actual, 3);
$this->assertEquals($expected, $config);
$property->setConfig('foo.bar');
$actual = array();
$expected = array('foo' => array('bar' => 3));
$config = $property->mergeConfig($actual, 3);
$this->assertEquals($expected, $config);
$property->setConfig('foo.bar');
$actual = array('foo' => array('bar' => 2, 'baz' => 3));
$expected = array('foo' => array('bar' => 3, 'baz' => 3));
$config = $property->mergeConfig($actual, 3);
$this->assertEquals($expected, $config);
}