YamlFormElementManagedFilePublicTest.php in YAML Form 8
File
src/Tests/YamlFormElementManagedFilePublicTest.php
View source
<?php
namespace Drupal\yamlform\Tests;
class YamlFormElementManagedFilePublicTest extends YamlFormTestBase {
protected static $modules = [
'system',
'file',
'yamlform',
'yamlform_test',
'yamlform_ui',
];
public function setUp() {
parent::setUp();
$settings_config = \Drupal::configFactory()
->getEditable('yamlform.settings');
$settings_config
->set('file.file_public', TRUE);
$settings_config
->save();
}
public function testPublicUpload() {
$requirements = yamlform_requirements('runtime');
$this
->assertEqual($requirements['yamlform_file_private']['value'], (string) t('Private file system is set.'));
$this
->drupalLogin($this->adminFormUser);
$this
->drupalGet('admin/structure/yamlform/manage/test_element_managed_file/element/managed_file_single/edit');
$this
->assertRaw('Public files upload destination is dangerous for forms that are available to anonymous and/or untrusted users.');
$this
->assertFieldById('edit-properties-uri-scheme-public');
\Drupal::configFactory()
->getEditable('yamlform.settings')
->set('file.file_public', FALSE)
->save();
$this
->drupalGet('admin/structure/yamlform/manage/test_element_managed_file/element/managed_file_single/edit');
$this
->assertNoRaw('Public files upload destination is dangerous for forms that are available to anonymous and/or untrusted users.');
$this
->assertNoFieldById('edit-properties-uri-scheme-public');
$this
->drupalGet('admin/structure/yamlform/manage/test_element_managed_file/element/add');
$this
->assertRaw('<td><div class="yamlform-form-filter-text-source">Managed file</div></td>');
\Drupal::configFactory()
->getEditable('yamlform.settings')
->set('elements.excluded_types.managed_file', 'managed_file')
->save();
$this
->drupalGet('admin/structure/yamlform/manage/test_element_managed_file/element/add');
$this
->assertNoRaw('<td><div class="yamlform-form-filter-text-source">Managed file</div></td>');
$this
->drupalGet('admin/structure/yamlform/manage/test_element_managed_file');
$this
->assertRaw('<em class="placeholder">managed_file (single)</em> is a <em class="placeholder">Managed file</em> element, which has been disabled and will not be rendered.');
$this
->assertRaw('<em class="placeholder">managed_file (multiple)</em> is a <em class="placeholder">Managed file</em> element, which has been disabled and will not be rendered.');
}
}