oliverdavies.uk/web/modules/custom/talks/tests/src/Kernel/UpdatesTalkCreatedDateTest.php

48 lines
1.4 KiB
PHP
Raw Normal View History

<?php
// phpcs:disable Drupal.Commenting.DocComment, Drupal.NamingConventions.ValidFunctionName
namespace Drupal\Tests\opdavies_talks\Kernel;
2020-05-09 21:51:04 +01:00
use Carbon\Carbon;
use Drupal\datetime\Plugin\Field\FieldType\DateTimeItemInterface;
final class UpdatesTalkCreatedDateTest extends TalksTestBase {
/** @test */
public function the_date_is_updated_when_a_talk_node_is_created(): void {
2020-05-09 21:51:04 +01:00
$eventDate = Carbon::today()->addWeek();
$eventDateFormat = $eventDate
->format(DateTimeItemInterface::DATE_STORAGE_FORMAT);
2020-05-31 14:55:50 +01:00
$eventDateTimestamp = $eventDate->getTimestamp();
2020-05-31 14:55:50 +01:00
$talk = $this->createTalk([
'field_events' => [
$this->createEvent(['field_date' => $eventDateFormat]),
],
]);
$this->assertEqual($eventDateTimestamp, $talk->getCreatedTime());
}
/** @test */
public function the_date_is_updated_when_a_talk_node_is_updated(): void {
$talk = $this->createTalk();
$originalCreatedTime = $talk->getCreatedTime();
2020-05-09 21:51:04 +01:00
$eventDate = Carbon::today()->addWeek();
$eventDateFormat = $eventDate
->format(DateTimeItemInterface::DATE_STORAGE_FORMAT);
2020-05-31 14:55:50 +01:00
$eventDateTimestamp = $eventDate->getTimestamp();
$talk->addEvent(
$this->createEvent(['field_date' => $eventDateFormat])
);
$talk->save();
$this->assertNotSame($originalCreatedTime, $talk->getCreatedTime());
$this->assertSame($eventDateTimestamp, $talk->getCreatedTime());
}
}