function FileFieldAnonymousSubmissionTest::testAnonymousNodeWithFile
Same name in other branches
- 9 core/modules/file/tests/src/Functional/FileFieldAnonymousSubmissionTest.php \Drupal\Tests\file\Functional\FileFieldAnonymousSubmissionTest::testAnonymousNodeWithFile()
- 10 core/modules/file/tests/src/Functional/FileFieldAnonymousSubmissionTest.php \Drupal\Tests\file\Functional\FileFieldAnonymousSubmissionTest::testAnonymousNodeWithFile()
- 11.x core/modules/file/tests/src/Functional/FileFieldAnonymousSubmissionTest.php \Drupal\Tests\file\Functional\FileFieldAnonymousSubmissionTest::testAnonymousNodeWithFile()
Tests file submission for an anonymous visitor.
File
-
core/
modules/ file/ tests/ src/ Functional/ FileFieldAnonymousSubmissionTest.php, line 66
Class
- FileFieldAnonymousSubmissionTest
- Confirm that file field submissions work correctly for anonymous visitors.
Namespace
Drupal\Tests\file\FunctionalCode
public function testAnonymousNodeWithFile() {
$bundle_label = 'Article';
$node_title = 'Test page';
$this->createFileField('field_image', 'node', 'article', [], [
'file_extensions' => 'txt png',
]);
// Load the node form.
$this->drupalLogout();
$this->drupalGet('node/add/article');
$this->assertSession()
->statusCodeEquals(200);
$this->assertText(strip_tags(t('Create @name', [
'@name' => $bundle_label,
])));
// Generate an image file.
$image = $this->getTestFile('image');
// Submit the form.
$edit = [
'title[0][value]' => $node_title,
'body[0][value]' => 'Test article',
'files[field_image_0]' => $this->container
->get('file_system')
->realpath($image->getFileUri()),
];
$this->drupalPostForm(NULL, $edit, 'Save');
$this->assertSession()
->statusCodeEquals(200);
$t_args = [
'@type' => $bundle_label,
'%title' => $node_title,
];
$this->assertText(strip_tags(t('@type %title has been created.', $t_args)), 'The node was created.');
$matches = [];
if (preg_match('@node/(\\d+)$@', $this->getUrl(), $matches)) {
$nid = end($matches);
$this->assertNotEqual($nid, 0, 'The node ID was extracted from the URL.');
$node = Node::load($nid);
$this->assertNotEqual($node, NULL, 'The node was loaded successfully.');
$this->assertFileExists(File::load($node->field_image->target_id)
->getFileUri());
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.