public function MetatagViewsBasicsTest::testViewsUi in Metatag 8
Confirm the Views functionality works, including UI.
File
- metatag_views/
tests/ src/ Functional/ MetatagViewsBasicsTest.php, line 70
Class
- MetatagViewsBasicsTest
- Confirm the defaults functionality works.
Namespace
Drupal\Tests\metatag_views\FunctionalCode
public function testViewsUi() {
// Load the front page.
$this
->drupalGet('<front>');
$this
->assertSession()
->statusCodeEquals(200);
// With nothing else configured the front page just has a login form.
$this
->assertSession()
->pageTextContains('Enter your Drupal username.');
// Log in as user 1.
$this
->loginUser1();
// Load the main Views admin page.
$this
->drupalGet('/admin/structure/views');
$this
->assertSession()
->statusCodeEquals(200);
// Enable the Archive view. This should be the first such link while the
// gallery is the second.
$this
->clickLink('Enable', 0);
// Confirm the archive page works.
$this
->drupalGet('/archive');
$this
->assertSession()
->statusCodeEquals(200);
// Confirm what the page title looks like by default.
$this
->assertSession()
->titleEquals('Monthly archive | Drupal');
// Load the Arcive view.
$this
->drupalGet('/admin/structure/views/view/archive');
$this
->assertSession()
->statusCodeEquals(200);
// Confirm that the Metatag options are present.
$this
->assertSession()
->pageTextContains('Meta tags:');
// Confirm that the page is currently using defaults.
$this
->assertSession()
->pageTextContains('Using defaults');
// Open the 'page' configuration.
$this
->clickLink('Page');
// Confirm that no changes have been made yet.
$this
->assertNoText('Overridden');
// Open the settings dialog.
$this
->clickLink('Using defaults');
// Confirm the settings opened and it has some basic fields.
$this
->assertSession()
->pageTextContains('Configure the meta tags below.');
$this
->assertFieldByName('title');
$this
->assertFieldByName('description');
$this
->assertFieldByName('op');
$edit = [
'title' => 'Metatag title',
'description' => 'Metatag description.',
];
$this
->drupalPostForm(NULL, $edit, 'Apply');
// Confirm the Metatag settings are now overridden.
$this
->assertSession()
->pageTextContains('Overridden');
// @todo Confirm there's now a "save" button.
// Save the changes.
$edit = [];
$this
->drupalPostForm(NULL, $edit, 'Save');
// @todo Confirm the page saved.
// Load the archives page again.
$this
->drupalGet('/archive');
$this
->assertSession()
->statusCodeEquals(200);
// Confirm what the page title looks like now.
$this
->assertSession()
->titleEquals('Metatag title');
// Load the Metatag admin page to confirm it still works.
$this
->drupalGet('admin/config/search/metatag');
$this
->assertSession()
->statusCodeEquals(200);
$this
->assertLinkByHref('/admin/config/search/metatag/global');
$this
->assertLinkByHref('/admin/config/search/metatag/front');
$this
->assertLinkByHref('/admin/config/search/metatag/403');
$this
->assertLinkByHref('/admin/config/search/metatag/404');
$this
->assertLinkByHref('/admin/config/search/metatag/node');
$this
->assertLinkByHref('/admin/config/search/metatag/taxonomy_term');
$this
->assertLinkByHref('/admin/config/search/metatag/user');
}