/** * Apply an integration test * * @param string $func * @param array $results * @param mixed $params = null * @return mixed */ public function applyTest($func, $params = null) { $funcResult = false; try { if (is_array($params)) { $params = new Varien_Object($params); $params->setResults($this->_integrationTestResults); } else { $params = null; } if (is_array($func)) { $funcResult = call_user_func($func, $params); } else { $funcResult = $this->{$func}($params); } if ($params) { $results = $params->getResults(); } return true; } catch (Fishpig_Wordpress_Exception $e) { switch ($e->getCode()) { case 1: $colour = '#00CC33'; break; case 2: $colour = 'yellow'; break; case 3: $colour = '#FF3333'; break; default: $colour = '#444'; } $this->_integrationTestResults[] = new Varien_Object(array('title' => Mage::helper('wordpress')->__($e->getMessage()), 'message' => $e->getLongMessage(), 'bg_colour' => $colour)); } catch (Exception $e) { $this->_integrationTestResults[] = new Varien_Object(array('title' => Mage::helper('wordpress')->__('An unidentified error has occurred.'), 'message' => $e->getMessage(), 'bg_colour' => '#444')); } return $funcResult; }