MetatagAppLinksTagsTest.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. namespace Drupal\metatag_app_links\Tests;
  3. use Drupal\metatag\Tests\MetatagTagsTestBase;
  4. /**
  5. * Tests that each of the App Links tags work correctly.
  6. *
  7. * @group metatag
  8. */
  9. class MetatagAppLinksTagsTest extends MetatagTagsTestBase {
  10. /**
  11. * {@inheritdoc}
  12. */
  13. private $tags = [
  14. 'al_android_app_name',
  15. 'al_android_class',
  16. 'al_android_package',
  17. 'al_android_url',
  18. 'al_ios_app_name',
  19. 'al_ios_app_store_id',
  20. 'al_ios_url',
  21. 'al_ipad_app_name',
  22. 'al_ipad_app_store_id',
  23. 'al_ipad_url',
  24. 'al_iphone_app_name',
  25. 'al_iphone_app_store_id',
  26. 'al_iphone_url',
  27. 'al_web_should_fallback',
  28. 'al_web_url',
  29. 'al_windows_app_id',
  30. 'al_windows_app_name',
  31. 'al_windows_phone_app_id',
  32. 'al_windows_phone_app_name',
  33. 'al_windows_phone_url',
  34. 'al_windows_universal_app_id',
  35. 'al_windows_universal_app_name',
  36. 'al_windows_universal_url',
  37. 'al_windows_url',
  38. ];
  39. /**
  40. * {@inheritdoc}
  41. */
  42. private $testNameAttribute = 'property';
  43. /**
  44. * {@inheritdoc}
  45. */
  46. protected function setUp() {
  47. parent::$modules[] = 'metatag_app_links';
  48. parent::setUp();
  49. }
  50. /**
  51. * Each of these meta tags has a different tag name vs its internal name.
  52. */
  53. private function getTestTagName($tag_name) {
  54. $tag_name = str_replace('al_android_', 'al:android:', $tag_name);
  55. $tag_name = str_replace('al_ios_', 'al:ios:', $tag_name);
  56. $tag_name = str_replace('al_ipad_', 'al:ipad:', $tag_name);
  57. $tag_name = str_replace('al_iphone_', 'al:iphone:', $tag_name);
  58. $tag_name = str_replace('al_web_', 'al:web:', $tag_name);
  59. // Run the Windows subtype replacements first so that the generic Windows
  60. // one can still work.
  61. $tag_name = str_replace('al_windows_phone_', 'al:windows_phone:', $tag_name);
  62. $tag_name = str_replace('al_windows_universal_', 'al:windows_universal:', $tag_name);
  63. $tag_name = str_replace('al_windows_', 'al:windows:', $tag_name);
  64. return $tag_name;
  65. }
  66. }