Пример #1
0
 public function testIdentifyVersion()
 {
     $browser = new Browser();
     $browser->identifyVersion('/Chrome\\/([0-9\\.]+)/u', 'Chrome/47.0.2526.73', ['details' => 1]);
     $this->assertEquals('47', $browser->getVersion());
     $browser->reset();
     $browser->identifyVersion('/Mozilla\\/([0-9\\.]+)/u', 'Mozilla/2.03', ['type' => 'legacy']);
     $this->assertEquals('2.0.3', $browser->getVersion());
     $browser->reset();
     $browser->identifyVersion('/Safari\\/([0-9\\.]+)/u', 'Chrome\\/47.0.2526.73');
     $this->assertEquals('', $browser->getVersion());
 }
Пример #2
0
 /**
  *
  * @param Model\Browser               $browser
  * @param \WhichBrowser\Model\Browser $browserRaw
  */
 private function hydrateBrowser(Model\Browser $browser, \WhichBrowser\Model\Browser $browserRaw)
 {
     if ($this->isRealResult($browserRaw->getName(), 'browser', 'name') === true) {
         $browser->setName($browserRaw->getName());
         $browser->getVersion()->setComplete($this->getRealResult($browserRaw->getVersion()));
         return;
     }
     if (isset($browserRaw->using) && $browserRaw->using instanceof \WhichBrowser\Model\Using) {
         /* @var $usingRaw \WhichBrowser\Model\Using */
         $usingRaw = $browserRaw->using;
         if ($this->isRealResult($usingRaw->getName()) === true) {
             $browser->setName($usingRaw->getName());
             $browser->getVersion()->setComplete($this->getRealResult($usingRaw->getVersion()));
         }
     }
 }