'GMap API sanity checks', 'description' => 'Test the simple API functions in the public GMap API.', 'group' => 'GMap', ); } public function setUp() { drupal_load('module', 'gmap'); parent::setUp(); } /** * Verify gmap_todim(). */ public function testGMapToDim() { // Valid stuff $this->assertEqual(gmap_todim('500PX'), '500px', t('Testing case normalization')); $this->assertEqual(gmap_todim(' 500 px '), '500px', t('Testing spaces')); $this->assertEqual(gmap_todim('1.5em'), '1.5em', t('Testing em')); $this->assertEqual(gmap_todim('1.5ex'), '1.5ex', t('Testing ex')); $this->assertEqual(gmap_todim('1.5in'), '1.5in', t('Testing in')); $this->assertEqual(gmap_todim('1.5cm'), '1.5cm', t('Testing cm')); $this->assertEqual(gmap_todim('1.5mm'), '1.5mm', t('Testing mm')); $this->assertEqual(gmap_todim('1.5pt'), '1.5pt', t('Testing pt')); $this->assertEqual(gmap_todim('1.5pc'), '1.5pc', t('Testing pc')); $this->assertEqual(gmap_todim('150%'), '150%', t('Testing %')); // Invalid stuff $this->assertEqual(gmap_todim('500pxBLUE SMURFpx'), FALSE, t('Testing invalid data')); $this->assertEqual(gmap_todim('500'), FALSE, t('Testing missing dimension type')); $this->assertEqual(gmap_todim(500), FALSE, t('Testing raw number')); // REALLY invalid stuff $this->assertEqual(gmap_todim(NULL), FALSE, t('Testing invalid data (NULL)')); $this->assertEqual(gmap_todim(array()), FALSE, t('Testing invalid data (Array)')); } } //class GMapMacroTest extends DrupalUnitTestCase { // public static function getInfo() { // return array( // 'name' => 'GMap Macro checks', // 'description' => 'Test the ability to parse macros into map arrays.', // 'group' => 'GMap', // ); // } // // public function setUp() { // drupal_load('module', 'gmap'); // drupal_load('module', 'gmap_macro_builder'); // $edit = array( // 'gmap_api_key' => 'AIzaSyAe2PAkh_qvTq-3WkXQrVwVwh3Lo9FDvkk', // ); // // $this->drupalPost('admin/settings/gmap', $edit, t('Save configuration')); // $this->assertText(t('The configuration options have been saved.')); // parent::setUp(); // } // // public function testEmptyMacro() { // $macro = ''; // $map = gmap_parse_macro($macro); // $this->assertEqual(preg_match('/^auto\d+map$/', $map['id']), 1, t('Testing ID injection')); // $this->assertEqual(count($map), 1, t('Testing contents of map array.')); // // $macro = '[gmap]'; // $map = gmap_parse_macro($macro); // $this->assertEqual(preg_match('/^auto\d+map$/', $map['id']), 1, t('Testing ID injection')); // $this->assertEqual(count($map), 1, t('Testing contents of map array.')); // // $macro = '[gmap ]'; // $map = gmap_parse_macro($macro); // $this->assertEqual(preg_match('/^auto\d+map$/', $map['id']), 1, t('Testing ID injection')); // $this->assertEqual(count($map), 1, t('Testing contents of map array.')); // } // // public function testMacroBehaviorFlags() { // $macro = '[gmap |behavior=+foobehavior +barbehavior -bazbehavior]'; // $map = gmap_parse_macro($macro); // $b = $map['behavior']; // $this->assertEqual($b['foobehavior'], TRUE, t('Testing +behavior')); // $this->assertEqual($b['barbehavior'], TRUE, t('Testing another +behavior')); // $this->assertEqual($b['bazbehavior'], FALSE, t('Testing -behavior')); // // NOT passing through default flags was a bug. // //$this->assertEqual(count($b), 3, t('Testing for leaked default flags')); // } // // public function testMacroRenamedDirectives() { // $macro = '[gmap |type=Foo |control=Bar |behaviour=+baz |tcontrol=on]'; // $map = gmap_parse_macro($macro); // $this->assertEqual($map['maptype'], 'Foo', t('Testing type -> maptype conversion')); // $this->assertEqual($map['controltype'], 'Bar', t('Testing control -> controltype conversion')); // $this->assertEqual($map['behavior']['baz'], TRUE, t('Testing behaviour -> behavior conversion')); // $this->assertEqual($map['mtc'], 'standard', t('Testing tcontrol -> mtc=standard')); // } //} // wrapper for gmap.module web testing class testGmapFormsTestCase extends DrupalWebTestCase { protected $privileged_user; public static function getInfo() { return array( 'name' => 'GMAP Forms', 'description' => 'GMAP Forms WebTesting.', 'group' => 'GMap', ); } public function setUp() { parent::setUp('gmap'); // Enable any modules required for the test // Create and log in our user. The user has the arbitrary privilege // 'extra special edit any simpletest_example' which the code uses // to grant access. $this->privileged_user = $this->drupalCreateUser(array('administer site configuration')); $this->drupalLogin($this->privileged_user); } // gmap_menu() test initial wrapper public function testGmapSaveConfig() { $edit = array( 'gmap_api_key' => 'AIzaSyAe2PAkh_qvTq-3WkXQrVwVwh3Lo9FDvkk', ); $this->drupalPost('admin/settings/gmap', $edit, t('Save configuration')); $this->assertText(t('The configuration options have been saved.')); } /** * Detect if we're running on PIFR testbot; skip intentional failure in that * case. It happens that on the testbot the site under test is in a directory * named 'checkout' or 'site_under_test'. * * @return boolean * TRUE if running on testbot. */ public function runningOnTestbot() { return (file_exists("../checkout") || file_exists("../site_under_test")); } } //// wrapper test for gmap_macro_builder module //class testGmapMacroFormsTestCase extends DrupalWebTestCase { // protected $privileged_user; // // public static function getInfo() { // return array( // 'name' => 'GMAP Macro Forms', // 'description' => 'GMAP Macro Forms WebTesting.', // 'group' => 'GMap', // ); // } // // public function setUp() { // drupal_load('module', 'gmap'); // drupal_load('module', 'gmap_macro_builder'); // parent::setUp(); // Enable any modules required for the test // // // Create and log in our user. The user has the arbitrary privilege // // 'extra special edit any simpletest_example' which the code uses // // to grant access. // $this->privileged_user = $this->drupalCreateUser(array('create gmap macro')); // $this->drupalLogin($this->privileged_user); // } // // // gmap_macro_builder_menu() test initial wrapper // public function testMacroMenuExampleCreate() { // $edit = array(); // // $this->drupalGet('map/macro', $edit); // $this->assertText(t('You can use this interface to create a map macro suitable for pasting into a node or any other place that accepts a GMap macro.')); // } // // // /** // * Detect if we're running on PIFR testbot; skip intentional failure in that // * case. It happens that on the testbot the site under test is in a directory // * named 'checkout' or 'site_under_test'. // * // * @return boolean // * TRUE if running on testbot. // */ // public function runningOnTestbot() { // return (file_exists("../checkout") || file_exists("../site_under_test")); // } //} // wrapper test for gmap_taxonomy module //class testGmapTaxonomyFormsTestCase extends DrupalWebTestCase { // protected $privileged_user; // // public static function getInfo() { // return array( // 'name' => 'GMAP Taxonomy', // 'description' => 'GMAP Taxonomy WebTesting.', // 'group' => 'GMap', // ); // } // // public function setUp() { // parent::setUp('gmap_taxonomy'); // Enable any modules required for the test // drupal_load('module', 'gmap'); // drupal_load('module', 'gmap_taxonomy'); // // // Create and log in our user. The user has the arbitrary privilege // // 'extra special edit any simpletest_example' which the code uses // // to grant access. // $this->privileged_user = $this->drupalCreateUser(array('administer taxonomy')); // $this->drupalLogin($this->privileged_user); // } // // // gmap_macro_builder_menu() test initial wrapper // public function testMacroMenuExampleCreate() { // // Create node to edit. // $rname = $this->randomName(); // $edit = array( // 'name' => $rname, //// 'machine_name' => 'gmap_taxonomy_test_voc', // 'gmap_taxonomy_enable' => 1, // ); // // // create taxonomy vocabulary with gmap markers // $this->drupalPost('admin/content/taxonomy/add/vocabulary', $edit, t('Save')); // $this->assertText(t('Created new vocabulary')); // // // add taxonomy term with "small red" marker // // $edit2 = array( // 'name' => $this->randomName(), // 'gmap_taxonomy_marker' => 'small red', // // ); // // $this->drupalGet('admin/content/taxonomy/1/add/term', $edit); // $this->assertText(t('GMap Marker')); // // $this->drupalPost('admin/content/taxonomy/1/add/term', $edit2, t('Save')); // $this->assertText(t('Created new term')); // // } // // // /** // * Detect if we're running on PIFR testbot; skip intentional failure in that // * case. It happens that on the testbot the site under test is in a directory // * named 'checkout' or 'site_under_test'. // * // * @return boolean // * TRUE if running on testbot. // */ // public function runningOnTestbot() { // return (file_exists("../checkout") || file_exists("../site_under_test")); // } //}