/**
  * @author Andreas Glaser
  */
 public function testMerge()
 {
     $array1 = ['assoc1' => 'value1', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [], 0 => 'value4'];
     $this->assertEquals(['assoc1' => 'overwritten', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [], 0 => 'value4'], ArrayHelper::merge($array1, ['assoc1' => 'overwritten']));
     $this->assertEquals(['assoc1' => 'value1', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [], 0 => 'value4', 1 => 'added'], ArrayHelper::merge($array1, [0 => 'added']));
     $this->assertEquals(['assoc1' => 'value1', 'assoc2' => 'overwritten', 'assoc4' => [], 0 => 'value4'], ArrayHelper::merge($array1, ['assoc2' => 'overwritten']));
     $this->assertEquals(['assoc1' => 'value1', 'assoc2' => ['assoc3' => 'value2', 10 => 'value3'], 'assoc4' => [0 => 'cheese', 'abc' => 'tasty'], 0 => 'value4'], ArrayHelper::merge($array1, ['assoc4' => ['cheese', 'abc' => 'tasty']]));
     $this->setExpectedException('\\InvalidArgumentException', 'Argument 2 is not an array');
     ArrayHelper::merge(['abc'], 123);
 }