diff --git a/core/modules/node/src/Tests/Views/RevisionCreateTimestampTest.php b/core/modules/node/src/Tests/Views/RevisionCreateTimestampTest.php new file mode 100644 index 0000000..54dd1a4 --- /dev/null +++ b/core/modules/node/src/Tests/Views/RevisionCreateTimestampTest.php @@ -0,0 +1,80 @@ +installSchema('node', 'node_access'); + $this->installEntitySchema('node'); + $this->installEntitySchema('user'); + + if ($import_test_views) { + ViewTestData::createTestViews(get_class($this), ['node_test_views']); + } + } + + public function testRevisionCreateTimestampView() { + $node_type = NodeType::create([ + 'type' => 'article', + 'label' => 'Article', + ]); + $node_type->save(); + $node = Node::create([ + 'title' => 'Test node', + 'type' => 'article', + 'revision_timestamp' => 1000, + ]); + $node->save(); + + $node->setRevisionCreationTime(1200); + $node->setNewRevision(TRUE); + $node->save(); + + $node->setRevisionCreationTime(1400); + $node->setNewRevision(TRUE); + $node->save(); + + $view = Views::getView('test_node_revision_timestamp'); + $this->executeView($view); + + $this->assertIdenticalResultset($view, [ + ['vid' => 3, 'revision_timestamp' => 1400], + ['vid' => 2, 'revision_timestamp' => 1200], + ['vid' => 1, 'revision_timestamp' => 1000], + ], ['vid' => 'vid', 'revision_timestamp' => 'revision_timestamp']); + } + + +} diff --git a/core/modules/node/tests/modules/node_test_views/test_views/views.view.test_node_revision_timestamp.yml b/core/modules/node/tests/modules/node_test_views/test_views/views.view.test_node_revision_timestamp.yml new file mode 100644 index 0000000..a0ba6eb --- /dev/null +++ b/core/modules/node/tests/modules/node_test_views/test_views/views.view.test_node_revision_timestamp.yml @@ -0,0 +1,44 @@ +langcode: en +status: true +dependencies: + module: + - node +id: test_node_revision_timestamp +label: null +module: views +description: '' +tag: '' +base_table: node_field_revision +base_field: vid +core: '8' +display: + default: + display_options: + fields: + vid: + id: vid + table: node_field_revision + field: vid + plugin_id: field + entity_type: node + entity_field: vid + revision_timestamp: + id: revision_timestamp + table: node_revision + field: revision_timestamp + plugin_id: field + entity_type: node + entity_field: revision_timestamp + sorts: + revision_timestamp: + id: revision_timestamp + table: node_revision + field: revision_timestamp + order: DESC + plugin_id: field + entity_type: node + entity_field: revision_timestamp + display_plugin: default + display_title: Master + id: default + position: 0