3 namespace Drupal\Tests\views\Kernel\Handler;
5 use Drupal\Tests\views\Kernel\ViewsKernelTestBase;
6 use Drupal\views\Views;
9 * Tests the core Drupal\views\Plugin\views\field\FileSize handler.
12 * @see CommonXssUnitTest
14 class FieldFileSizeTest extends ViewsKernelTestBase {
17 * Views used by this test.
21 public static $testViews = ['test_view'];
23 public function dataSet() {
24 $data = parent::dataSet();
27 $data[2]['age'] = 1000;
28 $data[3]['age'] = 10000;
33 public function viewsData() {
34 $data = parent::viewsData();
35 $data['views_test_data']['age']['field']['id'] = 'file_size';
40 public function testFieldFileSize() {
41 $view = Views::getView('test_view');
44 $view->displayHandlers->get('default')->overrideOption('fields', [
47 'table' => 'views_test_data',
52 $this->executeView($view);
54 // Test with the formatted option.
55 $this->assertEqual($view->field['age']->advancedRender($view->result[0]), '');
56 $this->assertEqual($view->field['age']->advancedRender($view->result[1]), '10 bytes');
57 $this->assertEqual($view->field['age']->advancedRender($view->result[2]), '1000 bytes');
58 $this->assertEqual($view->field['age']->advancedRender($view->result[3]), '9.77 KB');
59 // Test with the bytes option.
60 $view->field['age']->options['file_size_display'] = 'bytes';
61 $this->assertEqual($view->field['age']->advancedRender($view->result[0]), '');
62 $this->assertEqual($view->field['age']->advancedRender($view->result[1]), '10');
63 $this->assertEqual($view->field['age']->advancedRender($view->result[2]), '1000');
64 $this->assertEqual($view->field['age']->advancedRender($view->result[3]), '10000');