/**
  * Assert that two values equal
  *
  * @param mixed $expected Expected value
  * @param mixed $actual Actual value
  * @return boolean Actual value equals the expected one
  */
 protected function assertEquals($expected, $actual)
 {
     // If both values don't have the same type
     if (gettype($expected) !== gettype($actual)) {
         return false;
     }
     // If we are comparing arrays
     if (is_array($expected)) {
         return ArrayUtility::reduce($expected) == ArrayUtility::reduce($actual);
     }
     // Compare the values
     return $expected == $actual;
 }