See also: https://www.neutrinoapi.com/api/user-agent-info/
Author: Martin Keckeis (martin.keckeis1@gmail.com)
Inheritance: extends AbstractHttpProvider
 public function testEncodeIsCorrect()
 {
     if (!defined('CREDENTIALS_NEUTRINO_API_COM_USER_ID') || !defined('CREDENTIALS_NEUTRINO_API_COM_KEY')) {
         $this->markTestSkipped('no credentials available. Please provide tests/credentials.php');
     }
     $provider = new NeutrinoApiCom($this->getClient(), CREDENTIALS_NEUTRINO_API_COM_USER_ID, CREDENTIALS_NEUTRINO_API_COM_KEY);
     $userAgent = 'Mozilla/5.0 (Linux; U; Android 3.0.1; en-us; HTC T9299+ For AT&T Build/GRJ22) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1';
     $result = $provider->parse($userAgent);
     $this->assertEquals('HTC', $result->getDevice()->getBrand());
 }
 /**
  * Device - default value
  */
 public function testParseDeviceDefaultValue()
 {
     $rawResult = new stdClass();
     $rawResult->type = 'mobile-browser';
     $rawResult->mobile_model = 'Android';
     $rawResult->mobile_brand = 'Generic';
     $responseQueue = [new Response(200, ['Content-Type' => 'application/json;charset=UTF-8'], json_encode($rawResult))];
     $provider = new NeutrinoApiCom($this->getClient($responseQueue), 'apiUser', 'apiKey123');
     $result = $provider->parse('A real user agent...');
     $expectedResult = ['device' => ['model' => null, 'brand' => null, 'type' => 'mobile-browser', 'isMobile' => null, 'isTouch' => null]];
     $this->assertProviderResult($result, $expectedResult);
 }