Пример #1
0
 function testSingleton()
 {
     $store = HandsetDetection\HDStore::getInstance();
     $store2 = HandsetDetection\HDStore::getInstance();
     $store->setPath('/tmp', true);
     $this->assertEquals($store2->directory, '/tmp/hd40store');
 }
Пример #2
0
 function testSingleton()
 {
     $store = HandsetDetection\HDStore::getInstance();
     $store->setConfig(array('filesdir' => '/tmp'), true);
     $store2 = HandsetDetection\HDStore::getInstance();
     $store->setConfig(array('filesdir' => '/tmp/storetest'));
     $this->assertEquals($store2->directory, '/tmp/storetest/hd40store');
 }
Пример #3
0
 /**
  * Fetch Archive Test
  *
  * The community fetchArchive version contains a cut down version of the device specs.
  * It has general_vendor, general_model, display_x, display_y, general_platform, general_platform_version,
  * general_browser, general_browser_version, general_app, general_app_version, general_language,
  * general_language_full, benahmark_min & benchmark_max
  *
  * @group community
  **/
 function test_ultimate_community_fetchArchive()
 {
     // Start tests with a clean slate
     $store = HandsetDetection\HDStore::getInstance();
     $store->purge();
     // Note : request storage dir to be created if it does not exist. (with TRUE as 2nd param)
     $hd = new HandsetDetection\HD4($this->ultimateConfig, true);
     $result = $hd->communityFetchArchive();
     $this->assertTrue($result);
     $data = $hd->getRawReply();
     echo "Downloaded " . strlen($data) . " bytes";
     $this->assertGreaterThan(9000000, strlen($data));
     // Filesize greater than 9Mb
 }
Пример #4
0
 /**
  * Fetch Archive Test
  * @group ultimate
  **/
 function test_fetchArchive()
 {
     $hd = new HandsetDetection\HD4($this->ultimateConfig);
     $hd->setTimeout(500);
     $store = HandsetDetection\HDStore::getInstance();
     $store->purge();
     $result = $hd->deviceFetchArchive();
     $data = $hd->getRawReply();
     $size = strlen($data);
     echo "Downloaded {$size} bytes ";
     if (!$result) {
         $data = $hd->getReply();
         print_r($data);
     }
     if ($size < 1000) {
         $this->markTestSkipped($data);
     } else {
         $this->assertTrue($result);
         $this->assertGreaterThan(19000000, strlen($data));
         // Filesize greater than 19Mb (currently 28Mb).
     }
 }
Пример #5
0
 static function tearDownAfterClass()
 {
     $store = HandsetDetection\HDStore::getInstance();
     $store->purge();
 }
Пример #6
0
 function testIterability()
 {
     $store = HandsetDetection\HDStore::getInstance();
     $store->setConfig(array('filesdir' => '/tmp'), true);
     $store->purge();
     $tmpData = '{"Device":{"_id":"3454","hd_ops":{"is_generic":0,"stop_on_detect":0,"overlay_result_specs":0},"hd_specs":{"general_vendor":"Sagem","general_model":"MyX5-2","general_platform":"","general_image":"","general_aliases":"","general_eusar":"","general_battery":"","general_type":"","general_cpu":"","design_formfactor":"","design_dimensions":"","design_weight":0,"design_antenna":"","design_keyboard":"","design_softkeys":"","design_sidekeys":"","display_type":"","display_color":"","display_colors":"","display_size":"","display_x":"128","display_y":"160","display_other":"","memory_internal":"","memory_slot":"","network":"","media_camera":"","media_secondcamera":"","media_videocapture":"","media_videoplayback":"","media_audio":"","media_other":"","features":"","connectors":"","general_platform_version":"","general_browser":"","general_browser_version":"","general_language":"","general_platform_version_max":"","general_app":"","general_app_version":"","display_ppi":0,"display_pixel_ratio":0,"benchmark_min":0,"benchmark_max":0,"general_app_category":"","general_virtual":0,"display_css_screen_sizes":""}}}';
     file_put_contents('Device_3454.json', $tmpData);
     $store->moveIn('Device_3454.json', 'Device_3454.json');
     $this->assertFileNotExists('Device_3454.json');
     $this->assertFileExists($store->directory . DIRECTORY_SEPARATOR . 'Device_3454.json');
     $tmpData = '{"Device":{"_id":"3455","hd_ops":{"is_generic":0,"stop_on_detect":0,"overlay_result_specs":0},"hd_specs":{"general_aliases":"","display_x":"120","display_y":"120","general_vendor":"Sagem","general_model":"MY X55","general_platform":"","general_image":"","network":"","general_type":"","general_eusar":"","general_battery":"","general_cpu":"","design_formfactor":"","design_dimensions":"","design_weight":0,"design_antenna":"","design_keyboard":"","design_softkeys":"","design_sidekeys":"","display_type":"","display_color":"","display_colors":"","display_size":"","display_other":"","memory_internal":"","memory_slot":"","media_camera":"","media_secondcamera":"","media_videocapture":"","media_videoplayback":"","media_audio":"","media_other":"","features":"","connectors":"","general_platform_version":"","general_browser":"","general_browser_version":"","general_language":"","general_platform_version_max":"","general_app":"","general_app_version":"","display_ppi":0,"display_pixel_ratio":0,"benchmark_min":0,"benchmark_max":0,"general_app_category":"","general_virtual":0,"display_css_screen_sizes":""}}}';
     file_put_contents('Device_3455.json', $tmpData);
     $store->moveIn('Device_3455.json', 'Device_3455.json');
     $tmpData = '{"Device":{"_id":"3456","hd_ops":{"is_generic":0,"stop_on_detect":0,"overlay_result_specs":0},"hd_specs":{"general_vendor":"Sagem","general_model":"myX5-2v","general_platform":"","general_image":"","general_aliases":"","general_eusar":"","general_battery":"","general_type":"","general_cpu":"","design_formfactor":"","design_dimensions":"","design_weight":0,"design_antenna":"","design_keyboard":"","design_softkeys":"","design_sidekeys":"","display_type":"","display_color":"","display_colors":"","display_size":"","display_x":"128","display_y":"160","display_other":"","memory_internal":"","memory_slot":"","network":"","media_camera":"","media_secondcamera":"","media_videocapture":"","media_videoplayback":"","media_audio":"","media_other":"","features":"","connectors":"","general_platform_version":"","general_browser":"","general_browser_version":"","general_language":"","general_platform_version_max":"","general_app":"","general_app_version":"","display_ppi":0,"display_pixel_ratio":0,"benchmark_min":0,"benchmark_max":0,"general_app_category":"","general_virtual":0,"display_css_screen_sizes":""}}}';
     file_put_contents('Device_3456.json', $tmpData);
     $store->moveIn('Device_3456.json', 'Device_3456.json');
     $tmp = array();
     foreach ($store as $key => $value) {
         $tmp[$key] = $value;
     }
     $this->assertArrayHasKey('Device_3454', $tmp);
     $this->assertArrayHasKey('Device_3455', $tmp);
     $this->assertArrayHasKey('Device_3456', $tmp);
     $this->assertArrayHasKey('Device', $tmp['Device_3454']);
     $this->assertArrayHasKey('Device', $tmp['Device_3455']);
     $this->assertArrayHasKey('Device', $tmp['Device_3456']);
     $store->purge();
 }