BookStack/tests/Commands/ClearActivityCommandTest.php
Dan Brown 9079700170
Refactored the activity service
- Renamed to "ActivityLogger" to be more focused in usage.
- Extracted out query elements to seperate "ActivityQueries" class.
- Removed old 'addForEntity' activity method to limit activity record
  points.
2021-12-11 17:29:33 +00:00

37 lines
996 B
PHP

<?php
namespace Tests\Commands;
use BookStack\Actions\ActivityType;
use BookStack\Entities\Models\Page;
use BookStack\Facades\Activity;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\DB;
use Tests\TestCase;
class ClearActivityCommandTest extends TestCase
{
public function test_clear_activity_command()
{
$this->asEditor();
/** @var Page $page */
$page = Page::query()->first();
Activity::add(ActivityType::PAGE_UPDATE, $page);
$this->assertDatabaseHas('activities', [
'type' => 'page_update',
'entity_id' => $page->id,
'user_id' => $this->getEditor()->id,
]);
DB::rollBack();
$exitCode = Artisan::call('bookstack:clear-activity');
DB::beginTransaction();
$this->assertTrue($exitCode === 0, 'Command executed successfully');
$this->assertDatabaseMissing('activities', [
'type' => 'page_update',
]);
}
}