link.test 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. /**
  3. * @file
  4. * Link base test file - contains common functions for testing links.
  5. */
  6. class LinkBaseTestClass extends DrupalWebTestCase {
  7. public $permissions = array(
  8. 'access content',
  9. 'administer content types',
  10. 'administer nodes',
  11. 'administer filters',
  12. 'access comments',
  13. 'post comments',
  14. 'access administration pages',
  15. 'create page content',
  16. );
  17. public $account;
  18. function setUp($modules = array()) {
  19. if ($modules) {
  20. parent::setUp($modules);
  21. }
  22. else {
  23. parent::setUp('field_ui', 'link');
  24. }
  25. $this->account = $this->drupalCreateUser($this->permissions);
  26. $this->drupalLogin($this->account);
  27. }
  28. function createLinkField($node_type = 'page',
  29. $settings = array()) {
  30. $name = strtolower($this->randomName());
  31. $edit = array(
  32. 'fields[_add_new_field][label]' => $name,
  33. 'fields[_add_new_field][field_name]' => $name,
  34. 'fields[_add_new_field][type]' => 'link_field',
  35. 'fields[_add_new_field][widget_type]' => 'link_field',
  36. );
  37. $field_name = 'field_'. $name;
  38. $this->drupalPost('admin/structure/types/manage/'. $node_type .'/fields', $edit, t('Save'));
  39. $this->drupalPost(NULL, array(), t('Save field settings'));
  40. $this->drupalPost(NULL, $settings, t('Save settings'));
  41. // Is field created?
  42. $this->assertRaw(t('Saved %label configuration', array('%label' => $name)), 'Field added');
  43. node_types_rebuild();
  44. menu_rebuild();
  45. return $field_name;
  46. }
  47. }