protected function setUpSessionStrategy($params)
 {
     // This logic enables us to have a session strategy reused for each
     // item in self::$browsers. We don't want them both to share one
     // and we don't want each test for a specific browser to have a
     // new strategy
     if ($params == self::$lastBrowserParams) {
         // do nothing so we use the same session strategy for this
         // browser
     } elseif (isset($params['sessionStrategy'])) {
         $strat = $params['sessionStrategy'];
         if ($strat != "isolated" && $strat != "shared") {
             throw new InvalidArgumentException("Session strategy must be either 'isolated' or 'shared'");
         } elseif ($strat == "isolated") {
             self::$browserSessionStrategy = new PHPUnit_Extensions_Selenium2TestCase_SessionStrategy_Isolated();
         } else {
             self::$browserSessionStrategy = new PHPUnit_Extensions_Selenium2TestCase_SessionStrategy_Shared(self::defaultSessionStrategy());
         }
     } else {
         self::$browserSessionStrategy = self::defaultSessionStrategy();
     }
     self::$lastBrowserParams = $params;
     $this->localSessionStrategy = self::$browserSessionStrategy;
 }