forked from z-song/laravel-admin
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathOperationLogTest.php
84 lines (68 loc) · 3.01 KB
/
OperationLogTest.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php
use Encore\Admin\Auth\Database\Administrator;
use Encore\Admin\Auth\Database\OperationLog;
class OperationLogTest extends TestCase
{
public function setUp()
{
parent::setUp();
$this->be(Administrator::first(), 'admin');
}
public function testOperationLogIndex()
{
$this->visit('admin/auth/logs')
->see('Operation log')
->see('List')
->see('GET')
->see('admin/auth/logs');
}
public function testGenerateLogs()
{
$table = config('admin.database.operation_log_table');
$this->visit('admin/auth/menu')
->seePageIs('admin/auth/menu')
->visit('admin/auth/users')
->seePageIs('admin/auth/users')
->visit('admin/auth/permissions')
->seePageIs('admin/auth/permissions')
->visit('admin/auth/roles')
->seePageIs('admin/auth/roles')
->visit('admin/auth/logs')
->seePageIs('admin/auth/logs')
->seeInDatabase($table, ['path' => 'admin/auth/menu', 'method' => 'GET'])
->seeInDatabase($table, ['path' => 'admin/auth/users', 'method' => 'GET'])
->seeInDatabase($table, ['path' => 'admin/auth/permissions', 'method' => 'GET'])
->seeInDatabase($table, ['path' => 'admin/auth/roles', 'method' => 'GET']);
$this->assertEquals(4, OperationLog::count());
}
public function testDeleteLogs()
{
$table = config('admin.database.operation_log_table');
$this->visit('admin/auth/logs')
->seePageIs('admin/auth/logs')
->assertEquals(0, OperationLog::count());
$this->visit('admin/auth/users');
$this->seeInDatabase($table, ['path' => 'admin/auth/users', 'method' => 'GET']);
$this->delete('admin/auth/logs/1')
->assertEquals(0, OperationLog::count());
}
public function testDeleteMultipleLogs()
{
$table = config('admin.database.operation_log_table');
$this->visit('admin/auth/menu')
->visit('admin/auth/users')
->visit('admin/auth/permissions')
->visit('admin/auth/roles')
->seeInDatabase($table, ['path' => 'admin/auth/menu', 'method' => 'GET'])
->seeInDatabase($table, ['path' => 'admin/auth/users', 'method' => 'GET'])
->seeInDatabase($table, ['path' => 'admin/auth/permissions', 'method' => 'GET'])
->seeInDatabase($table, ['path' => 'admin/auth/roles', 'method' => 'GET'])
->assertEquals(4, OperationLog::count());
$this->delete('admin/auth/logs/1,2,3,4')
->notSeeInDatabase($table, ['path' => 'admin/auth/menu', 'method' => 'GET'])
->notSeeInDatabase($table, ['path' => 'admin/auth/users', 'method' => 'GET'])
->notSeeInDatabase($table, ['path' => 'admin/auth/permissions', 'method' => 'GET'])
->notSeeInDatabase($table, ['path' => 'admin/auth/roles', 'method' => 'GET'])
->assertEquals(0, OperationLog::count());
}
}