summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNathaniel Catchpole2017-10-09 12:53:55 (GMT)
committerNathaniel Catchpole2017-10-09 12:53:55 (GMT)
commit8265b7736cf48c6bf581cfd76660f96e9af3ec2a (patch)
tree3c29de61923607e686b573ac7eed1d91d600b0f9
parenta20201a5ab247d38735466394d6ef42e3f3197ef (diff)
Issue #2857843 by vaplas, mpdonadio, Jo Fitzgerald, gambry: Random fail in Drupal\KernelTests\Core\Entity\ContentEntityChangedTest::testChanged
-rw-r--r--core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ChangedTestItem.php9
1 files changed, 8 insertions, 1 deletions
diff --git a/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ChangedTestItem.php b/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ChangedTestItem.php
index 1425588..0e0a46c 100644
--- a/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ChangedTestItem.php
+++ b/core/modules/system/tests/modules/entity_test/src/Plugin/Field/FieldType/ChangedTestItem.php
@@ -31,7 +31,14 @@ class ChangedTestItem extends ChangedItem {
// During a test the request time is immutable. To allow tests of the
// algorithm of
// Drupal\Core\Field\Plugin\Field\FieldType\ChangedItem::preSave() we need
- // to set a real time value here.
+ // to set a real time value here. For the stability of the test, set the
+ // time of the original language to the current time plus just over one
+ // second to simulate two different request times.
+ // @todo mock the time service in https://www.drupal.org/node/2908210.
+ if ($this->getEntity()->language()->isDefault()) {
+ // Wait 1.1 seconds because time_sleep_until() is not reliable.
+ time_sleep_until(time() + 1.1);
+ }
$this->value = time();
}
}