NotLoggedDeleteAnonymizeTest.php in Auto Purge Users 8.3
File
tests/src/Functional/NotLoggedDeleteAnonymizeTest.php
View source
<?php
declare (strict_types=1);
namespace Drupal\Tests\purge_users\Functional;
class NotLoggedDeleteAnonymizeTest extends SettingsBase {
public function setUp() : void {
parent::setUp();
$this->userStorage = $this->container
->get('entity_type.manager')
->getStorage('user');
$this->nodeStorage = $this->container
->get('entity_type.manager')
->getStorage('node');
$this
->addAdminUser();
$this
->createTestUser();
$this
->setBasicConfig();
$this
->config('purge_users.settings')
->set('user_lastlogin_value', '10')
->set('user_lastlogin_period', 'month')
->set('enabled_loggedin_users', TRUE)
->set('purge_user_cancel_method', 'user_cancel_reassign')
->save();
}
protected function checkConfirmFormResults() : void {
$this
->checkTestResults();
}
protected function checkCronResults() : void {
$this
->checkTestResults();
}
protected function checkTestResults() : void {
$account = $this->userStorage
->load($this->admin
->id());
$this
->assertNotNull($account);
$account = $this->userStorage
->load($this->neverLoggedUser
->id());
$this
->assertNotNull($account);
$account = $this->userStorage
->load($this->activeUserToDelete
->id());
$this
->assertNull($account);
$test_node = $this->nodeStorage
->loadUnchanged($this->node
->id());
$this
->assertTrue($test_node
->getOwnerId() == 0 && $test_node
->isPublished());
$account = $this->userStorage
->load($this->activeUser
->id());
$this
->assertNotNull($account);
}
protected function createTestUser() : void {
$this->neverLoggedUser = $this
->createUser([], NULL, FALSE, [
'created' => strtotime('-12 month'),
'login' => 0,
]);
$this->activeUserToDelete = $this
->createUser();
$this->node = $this
->createNode([
'uid' => $this->activeUserToDelete
->id(),
'published' => TRUE,
]);
$this->activeUserToDelete->created = strtotime("-20 month");
$this->activeUserToDelete->login = strtotime("-13 month");
$this->activeUserToDelete
->save();
$this->activeUser = $this
->createUser([], NULL, FALSE, [
'created' => strtotime('-20 month'),
'login' => strtotime('-3 day'),
]);
}
}