mirror of
https://github.com/Karaka-Management/oms-Auditor.git
synced 2026-02-01 14:58:41 +00:00
test fixes and changes for release
This commit is contained in:
parent
5465fa027e
commit
b5407e4994
|
|
@ -0,0 +1,13 @@
|
|||
<?php
|
||||
/**
|
||||
* Karaka
|
||||
*
|
||||
* PHP Version 8.1
|
||||
*
|
||||
* @package Karaka
|
||||
* @copyright Dennis Eichhorn
|
||||
* @license OMS License 1.0
|
||||
* @version 1.0.0
|
||||
* @link https://jingga.app
|
||||
*/
|
||||
declare(strict_types=1);
|
||||
100
Models/Audit.php
100
Models/Audit.php
|
|
@ -117,7 +117,7 @@ class Audit
|
|||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private int $ip = 0;
|
||||
public int $ip = 0;
|
||||
|
||||
/**
|
||||
* Constructor.
|
||||
|
|
@ -168,102 +168,4 @@ class Audit
|
|||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get type.
|
||||
*
|
||||
* @return int
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getType() : int
|
||||
{
|
||||
return $this->type;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get subtype.
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getTrigger() : string
|
||||
{
|
||||
return $this->trigger;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get Module.
|
||||
*
|
||||
* @return null|string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getModule() : ?string
|
||||
{
|
||||
return $this->module;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get reference.
|
||||
*
|
||||
* If existing this can be a reference to another model
|
||||
*
|
||||
* @return null|string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getRef() : ?string
|
||||
{
|
||||
return $this->ref;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get content.
|
||||
*
|
||||
* @return null|string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getContent() : ?string
|
||||
{
|
||||
return $this->content;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get old value.
|
||||
*
|
||||
* @return null|string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getOld() : ?string
|
||||
{
|
||||
return $this->old;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get new value.
|
||||
*
|
||||
* @return null|string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getNew() : ?string
|
||||
{
|
||||
return $this->new;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get ip.
|
||||
*
|
||||
* @return int
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getIp() : int
|
||||
{
|
||||
return $this->ip;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -108,17 +108,17 @@ echo $this->getData('nav')->render(); ?>
|
|||
<tr tabindex="0" data-href="<?= $url; ?>">
|
||||
<td><?= $audit->getId(); ?>
|
||||
<td><?= $this->printHtml($audit->getModule()); ?>
|
||||
<td><?php if ($audit->getOld() === null) : echo $this->getHtml('CREATE'); ?>
|
||||
<?php elseif ($audit->getOld() !== null && $audit->getNew() !== null) : echo $this->getHtml('UPDATE'); ?>
|
||||
<?php elseif ($audit->getNew() === null) : echo $this->getHtml('DELETE'); ?>
|
||||
<td><?php if ($audit->old === null) : echo $this->getHtml('CREATE'); ?>
|
||||
<?php elseif ($audit->old !== null && $audit->new !== null) : echo $this->getHtml('UPDATE'); ?>
|
||||
<?php elseif ($audit->new=== null) : echo $this->getHtml('DELETE'); ?>
|
||||
<?php else : echo $this->getHtml('UNKNOWN'); ?>
|
||||
<?php endif; ?>
|
||||
<td><?= $audit->getType(); ?>
|
||||
<td><?= $audit->getTrigger(); ?>
|
||||
<td><?= $this->printHtml($audit->type); ?>
|
||||
<td><?= $this->printHtml($audit->trigger); ?>
|
||||
<td><a class="content" href="<?= UriFactory::build('{/lang}/{/app}/admin/account/settings?id=' . $audit->createdBy->getId()); ?>"><?= $this->printHtml(
|
||||
$this->renderUserName('%3$s %2$s %1$s', [$audit->createdBy->name1, $audit->createdBy->name2, $audit->createdBy->name3, $audit->createdBy->login])
|
||||
); ?></a>
|
||||
<td><?= $this->printHtml($audit->getRef()); ?>
|
||||
<td><?= $this->printHtml($audit->ref); ?>
|
||||
<td><?= $audit->createdAt->format('Y-m-d H:i:s'); ?>
|
||||
<?php endforeach; ?>
|
||||
<?php if ($count === 0) : ?>
|
||||
|
|
|
|||
|
|
@ -43,39 +43,39 @@ echo $this->getData('nav')->render();
|
|||
<table class="list">
|
||||
<tr>
|
||||
<th><?= $this->getHtml('Action'); ?>
|
||||
<td><?php if ($audit->getOld() === null) : echo $this->getHtml('CREATE'); ?>
|
||||
<?php elseif ($audit->getOld() !== null && $audit->getNew() !== null) : echo $this->getHtml('UPDATE'); ?>
|
||||
<?php elseif ($audit->getNew() === null) : echo $this->getHtml('DELETE'); ?>
|
||||
<td><?php if ($audit->old === null) : echo $this->getHtml('CREATE'); ?>
|
||||
<?php elseif ($audit->old !== null && $audit->new !== null) : echo $this->getHtml('UPDATE'); ?>
|
||||
<?php elseif ($audit->new === null) : echo $this->getHtml('DELETE'); ?>
|
||||
<?php else : echo $this->getHtml('UNKNOWN'); ?>
|
||||
<?php endif; ?>
|
||||
<tr>
|
||||
<th><?= $this->getHtml('Type'); ?>
|
||||
<td><?= $audit->getType(); ?>
|
||||
<td><?= $audit->type; ?>
|
||||
<tr>
|
||||
<th><?= $this->getHtml('By'); ?>
|
||||
<td><a href="<?= UriFactory::build('{/lang}/{/app}/admin/account/settings?{?}&id=' . $audit->createdBy->getId()); ?>"><?= $audit->createdBy->name1; ?> <?= $audit->createdBy->name2; ?></a>
|
||||
<tr>
|
||||
<th><?= $this->getHtml('Ref'); ?>
|
||||
<td><?= $this->printHtml($audit->getRef()); ?>
|
||||
<td><?= $this->printHtml($audit->ref); ?>
|
||||
<tr>
|
||||
<th><?= $this->getHtml('Date'); ?>
|
||||
<td><?= $this->getDateTime($audit->createdAt, 'very_long'); ?>
|
||||
<tr>
|
||||
<th><?= $this->getHtml('Module'); ?>
|
||||
<td><a href="<?= UriFactory::build('{/lang}/{/app}/admin/module/settings?{?}&id=' . $audit->getModule()); ?>"><?= $audit->getModule(); ?></a>
|
||||
<td><a href="<?= UriFactory::build('{/lang}/{/app}/admin/module/settings?{?}&id=' . $audit->module); ?>"><?= $audit->module; ?></a>
|
||||
<tr>
|
||||
<th><?= $this->getHtml('IP'); ?>
|
||||
<td><?= \long2ip($audit->getIp()); ?>
|
||||
<td><?= \long2ip($audit->ip); ?>
|
||||
</table>
|
||||
<article>
|
||||
<pre><?= \phpOMS\Utils\StringUtils::createDiffMarkup(
|
||||
ViewAbstract::html(\stripos($audit->getOld() ?? '', '{') === 0
|
||||
? \json_encode(\json_decode($audit->getOld()), \JSON_PRETTY_PRINT)
|
||||
: $audit->getOld() ?? ''
|
||||
ViewAbstract::html(\stripos($audit->old ?? '', '{') === 0
|
||||
? \json_encode(\json_decode($audit->old), \JSON_PRETTY_PRINT)
|
||||
: $audit->old ?? ''
|
||||
),
|
||||
ViewAbstract::html(\stripos($audit->getNew() ?? '', '{') === 0
|
||||
? \json_encode(\json_decode($audit->getNew()), \JSON_PRETTY_PRINT)
|
||||
: $audit->getNew() ?? ''
|
||||
ViewAbstract::html(\stripos($audit->new ?? '', '{') === 0
|
||||
? \json_encode(\json_decode($audit->new), \JSON_PRETTY_PRINT)
|
||||
: $audit->new ?? ''
|
||||
),
|
||||
"\n"
|
||||
); ?>
|
||||
|
|
|
|||
|
|
@ -257,6 +257,25 @@ $CONFIG = [
|
|||
'root' => '/',
|
||||
'https' => false,
|
||||
],
|
||||
'app' => [
|
||||
'path' => __DIR__,
|
||||
'default' => [
|
||||
'app' => 'Backend',
|
||||
'id' => 'backend',
|
||||
'lang' => 'en',
|
||||
'theme' => 'Backend',
|
||||
'org' => 1,
|
||||
],
|
||||
'domains' => [
|
||||
'127.0.0.1' => [
|
||||
'app' => 'Backend',
|
||||
'id' => 'backend',
|
||||
'lang' => 'en',
|
||||
'theme' => 'Backend',
|
||||
'org' => 1,
|
||||
],
|
||||
],
|
||||
],
|
||||
'socket' => [
|
||||
'master' => [
|
||||
'host' => '127.0.0.1',
|
||||
|
|
|
|||
|
|
@ -97,13 +97,13 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
|
|||
|
||||
foreach($logs as $log) {
|
||||
if ($log->getId() > 0
|
||||
&& $log->getType() === 1
|
||||
&& $log->getTrigger() === 'test-trigger'
|
||||
&& $log->getModule() === 'Auditor'
|
||||
&& $log->getRef() === 'abc'
|
||||
&& $log->getContent() === 'def'
|
||||
&& $log->getOld() === null
|
||||
&& $log->getNew() === \json_encode(['id' => 1, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
&& $log->type === 1
|
||||
&& $log->trigger === 'test-trigger'
|
||||
&& $log->module === 'Auditor'
|
||||
&& $log->ref === 'abc'
|
||||
&& $log->content === 'def'
|
||||
&& $log->old === null
|
||||
&& $log->new === \json_encode(['id' => 1, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
) {
|
||||
self::assertTrue(true);
|
||||
return;
|
||||
|
|
@ -126,13 +126,13 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
|
|||
$found = false;
|
||||
foreach($logs as $log) {
|
||||
if ($log->getId() > 0
|
||||
&& $log->getType() === 1
|
||||
&& $log->getTrigger() === 'test-trigger'
|
||||
&& $log->getModule() === 'Auditor'
|
||||
&& $log->getRef() === 'abc'
|
||||
&& $log->getContent() === 'def'
|
||||
&& $log->getOld() === \json_encode(['id' => 2, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
&& $log->getNew() === \json_encode(['id' => 1, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
&& $log->type === 1
|
||||
&& $log->trigger === 'test-trigger'
|
||||
&& $log->module === 'Auditor'
|
||||
&& $log->ref === 'abc'
|
||||
&& $log->content === 'def'
|
||||
&& $log->old === \json_encode(['id' => 2, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
&& $log->new === \json_encode(['id' => 1, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
) {
|
||||
$found = true;
|
||||
break;
|
||||
|
|
@ -168,13 +168,13 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
|
|||
|
||||
foreach($logs as $log) {
|
||||
if ($log->getId() > 0
|
||||
&& $log->getType() === 1
|
||||
&& $log->getTrigger() === 'test-trigger'
|
||||
&& $log->getModule() === 'Auditor'
|
||||
&& $log->getRef() === 'abc'
|
||||
&& $log->getContent() === 'def'
|
||||
&& $log->getOld() === \json_encode(['id' => 1, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
&& $log->getNew() === null
|
||||
&& $log->type === 1
|
||||
&& $log->trigger === 'test-trigger'
|
||||
&& $log->module === 'Auditor'
|
||||
&& $log->ref === 'abc'
|
||||
&& $log->content === 'def'
|
||||
&& $log->old === \json_encode(['id' => 1, 'test' => true], \JSON_PRETTY_PRINT)
|
||||
&& $log->new === null
|
||||
) {
|
||||
self::assertTrue(true);
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -14,9 +14,48 @@ declare(strict_types=1);
|
|||
|
||||
namespace Modules\Auditor\tests\Models;
|
||||
|
||||
use Modules\Admin\Models\NullAccount;
|
||||
use Modules\Auditor\Models\Audit;
|
||||
use Modules\Auditor\Models\AuditMapper;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class AuditMapperTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Auditor\Models\AuditMapper
|
||||
* @group module
|
||||
*/
|
||||
public function testCR() : void
|
||||
{
|
||||
$audit = new Audit(
|
||||
new NullAccount(1),
|
||||
'old',
|
||||
'new',
|
||||
1,
|
||||
'test-trigger',
|
||||
'Admin',
|
||||
'test-ref',
|
||||
'test-content',
|
||||
10000
|
||||
);
|
||||
|
||||
$id = AuditMapper::create()->execute($audit);
|
||||
self::assertGreaterThan(0, $audit->getId());
|
||||
self::assertEquals($id, $audit->getId());
|
||||
|
||||
$auditR = AuditMapper::get()
|
||||
->where('id', $audit->getId())
|
||||
->execute();
|
||||
|
||||
self::assertEquals($audit->type, $auditR->type);
|
||||
self::assertEquals($audit->trigger, $auditR->trigger);
|
||||
self::assertEquals($audit->module, $auditR->module);
|
||||
self::assertEquals($audit->ref, $auditR->ref);
|
||||
self::assertEquals($audit->content, $auditR->content);
|
||||
self::assertEquals($audit->old, $auditR->old);
|
||||
self::assertEquals($audit->new, $auditR->new);
|
||||
self::assertEquals($audit->ip, $auditR->ip);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,14 +33,14 @@ final class AuditTest extends \PHPUnit\Framework\TestCase
|
|||
{
|
||||
$audit = new Audit();
|
||||
self::assertEquals(0, $audit->getId());
|
||||
self::assertEquals(0, $audit->getType());
|
||||
self::assertEquals('', $audit->getTrigger());
|
||||
self::assertNull($audit->getModule());
|
||||
self::assertNull($audit->getRef());
|
||||
self::assertNull($audit->getContent());
|
||||
self::assertNull($audit->getOld());
|
||||
self::assertNull($audit->getNew());
|
||||
self::assertEquals(0, $audit->getIp());
|
||||
self::assertEquals(0, $audit->type);
|
||||
self::assertEquals('', $audit->trigger);
|
||||
self::assertNull($audit->module);
|
||||
self::assertNull($audit->ref);
|
||||
self::assertNull($audit->content);
|
||||
self::assertNull($audit->old);
|
||||
self::assertNull($audit->new);
|
||||
self::assertEquals(0, $audit->ip);
|
||||
self::assertEquals(0, $audit->createdBy->getId());
|
||||
self::assertInstanceOf('\DateTimeImmutable', $audit->createdAt);
|
||||
}
|
||||
|
|
@ -62,14 +62,14 @@ final class AuditTest extends \PHPUnit\Framework\TestCase
|
|||
\ip2long('127.0.0.1')
|
||||
);
|
||||
|
||||
self::assertEquals(1, $audit->getType());
|
||||
self::assertEquals('trigger', $audit->getTrigger());
|
||||
self::assertEquals(3, $audit->getModule());
|
||||
self::assertEquals('test', $audit->getRef());
|
||||
self::assertEquals('content', $audit->getContent());
|
||||
self::assertEquals('old', $audit->getOld());
|
||||
self::assertEquals('new', $audit->getNew());
|
||||
self::assertEquals(\ip2long('127.0.0.1'), $audit->getIp());
|
||||
self::assertEquals(1, $audit->type);
|
||||
self::assertEquals('trigger', $audit->trigger);
|
||||
self::assertEquals(3, $audit->module);
|
||||
self::assertEquals('test', $audit->ref);
|
||||
self::assertEquals('content', $audit->content);
|
||||
self::assertEquals('old', $audit->old);
|
||||
self::assertEquals('new', $audit->new);
|
||||
self::assertEquals(\ip2long('127.0.0.1'), $audit->ip);
|
||||
self::assertEquals(0, $audit->createdBy->getId());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user