mirror of
https://github.com/Karaka-Management/oms-Organization.git
synced 2026-01-28 07:38:41 +00:00
add tests
This commit is contained in:
parent
46c4fe2d7e
commit
21bf1b6afc
|
|
@ -234,8 +234,10 @@ final class ApiController extends Controller
|
|||
public function apiUnitImageSet(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
$uploadedFiles = $request->getFiles() ?? [];
|
||||
|
||||
if (empty($uploadedFiles)) {
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::ERROR, 'Unit', 'Invalid unit image', $uploadedFiles);
|
||||
$response->getHeader()->setStatusCode(RequestStatusCode::R_400);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
@ -254,7 +256,7 @@ final class ApiController extends Controller
|
|||
$unit->setImage(\reset($uploaded));
|
||||
|
||||
$this->updateModel($request->getHeader()->getAccount(), $old, $unit, UnitMapper::class, 'unit', $request->getOrigin());
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::OK, 'Unit', 'Unit successfully updated', $unit);
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::OK, 'Unit', 'Unit image successfully updated', $unit);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -143,6 +143,7 @@ final class BackendController extends Controller
|
|||
* @return array
|
||||
*
|
||||
* @since 1.0.0
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
private function createOrgTree(array $components) : array
|
||||
{
|
||||
|
|
|
|||
|
|
@ -268,25 +268,16 @@ class Department implements \JsonSerializable, ArrayableInterface
|
|||
public function toArray() : array
|
||||
{
|
||||
return [
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'description' => $this->description,
|
||||
'unit' => $this->unit ?? new NullUnit(),
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'status' => $this->status,
|
||||
'description' => $this->description,
|
||||
'descriptionRaw' => $this->descriptionRaw,
|
||||
'unit' => $this->unit ?? new NullUnit(),
|
||||
'parent' => $this->parent ?? new NullDepartment(),
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get string representation.
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function __toString()
|
||||
{
|
||||
return (string) \json_encode($this->toArray());
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -256,11 +256,13 @@ class Position implements \JsonSerializable, ArrayableInterface
|
|||
public function toArray() : array
|
||||
{
|
||||
return [
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'description' => $this->description,
|
||||
'department' => $this->department ?? new NullDepartment(),
|
||||
'parent' => $this->parent,
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'status' => $this->status,
|
||||
'description' => $this->description,
|
||||
'descriptionRaw' => $this->descriptionRaw,
|
||||
'department' => $this->department ?? new NullDepartment(),
|
||||
'parent' => $this->parent ?? new NullPosition(),
|
||||
];
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -268,10 +268,13 @@ class Unit implements \JsonSerializable, ArrayableInterface
|
|||
public function toArray() : array
|
||||
{
|
||||
return [
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'description' => $this->description,
|
||||
'parent' => $this->parent,
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'status' => $this->status,
|
||||
'description' => $this->description,
|
||||
'descriptionRaw' => $this->descriptionRaw,
|
||||
'parent' => $this->parent ?? new NullUnit(),
|
||||
'image' => $this->image,
|
||||
];
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -12,11 +12,12 @@
|
|||
*/
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Modules\Organization\tests;
|
||||
namespace Modules\Organization\tests\Controller;
|
||||
|
||||
use Model\CoreSettings;
|
||||
use Modules\Admin\Models\AccountPermission;
|
||||
use Modules\Organization\Models\Status;
|
||||
use Modules\Organization\Models\UnitMapper;
|
||||
use phpOMS\Account\Account;
|
||||
use phpOMS\Account\AccountManager;
|
||||
use phpOMS\Account\PermissionType;
|
||||
|
|
@ -29,11 +30,13 @@ use phpOMS\Module\ModuleManager;
|
|||
use phpOMS\Router\WebRouter;
|
||||
use phpOMS\Uri\HttpUri;
|
||||
use phpOMS\Utils\TestUtils;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\System\MimeType;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class ControllerTest extends \PHPUnit\Framework\TestCase
|
||||
class ApiControllerTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
protected $app = null;
|
||||
|
||||
|
|
@ -48,7 +51,6 @@ class ControllerTest extends \PHPUnit\Framework\TestCase
|
|||
|
||||
$this->app->dbPool = $GLOBALS['dbpool'];
|
||||
$this->app->orgId = 1;
|
||||
$this->app->appName = 'Backend';
|
||||
$this->app->accountManager = new AccountManager($GLOBALS['session']);
|
||||
$this->app->appSettings = new CoreSettings($this->app->dbPool->get());
|
||||
$this->app->moduleManager = new ModuleManager($this->app, __DIR__ . '/../../../Modules');
|
||||
|
|
@ -117,6 +119,24 @@ class ControllerTest extends \PHPUnit\Framework\TestCase
|
|||
self::assertEquals('OMS', $response->get('')['response']->getName());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiUnitFind() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->getHeader()->setAccount(1);
|
||||
$request->setData('search', 'OMS');
|
||||
|
||||
$this->module->apiUnitFind($request, $response);
|
||||
|
||||
self::assertEquals('OMS', $response->get('')[0]->getName());
|
||||
self::assertGreaterThan(0, $response->get('')[0]->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
|
|
@ -143,6 +163,22 @@ class ControllerTest extends \PHPUnit\Framework\TestCase
|
|||
self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiUnitCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->getHeader()->setAccount(1);
|
||||
|
||||
$this->module->apiUnitCreate($request, $response);
|
||||
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->getHeader()->getStatusCode());
|
||||
}
|
||||
|
||||
protected static $departmentId = 0;
|
||||
|
||||
/**
|
||||
|
|
@ -168,6 +204,40 @@ class ControllerTest extends \PHPUnit\Framework\TestCase
|
|||
self::$departmentId = $response->get('')['response']->getId();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiDepartmentFind() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->getHeader()->setAccount(1);
|
||||
$request->setData('search', 'test');
|
||||
|
||||
$this->module->apiDepartmentFind($request, $response);
|
||||
|
||||
self::assertEquals('test', $response->get('')[0]->getName());
|
||||
self::assertGreaterThan(0, $response->get('')[0]->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiDepartmentCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->getHeader()->setAccount(1);
|
||||
|
||||
$this->module->apiDepartmentCreate($request, $response);
|
||||
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->getHeader()->getStatusCode());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
|
|
@ -244,6 +314,40 @@ class ControllerTest extends \PHPUnit\Framework\TestCase
|
|||
self::$positionId = $response->get('')['response']->getId();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiPositionFind() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->getHeader()->setAccount(1);
|
||||
$request->setData('search', 'test');
|
||||
|
||||
$this->module->apiPositionFind($request, $response);
|
||||
|
||||
self::assertEquals('test', $response->get('')[0]->getName());
|
||||
self::assertGreaterThan(0, $response->get('')[0]->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiPositionCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->getHeader()->setAccount(1);
|
||||
|
||||
$this->module->apiPositionCreate($request, $response);
|
||||
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->getHeader()->getStatusCode());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
|
|
@ -296,4 +400,48 @@ class ControllerTest extends \PHPUnit\Framework\TestCase
|
|||
|
||||
self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiUnitImageSet() : void
|
||||
{
|
||||
\copy(__DIR__ . '/icon.png', __DIR__ . '/temp_icon.png');
|
||||
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->getHeader()->setAccount(1);
|
||||
$request->setData('name', 'Organization Logo');
|
||||
$request->setData('id', 1);
|
||||
|
||||
TestUtils::setMember($request, 'files', [
|
||||
'file1' => [
|
||||
'name' => 'icon.png',
|
||||
'type' => MimeType::M_PNG,
|
||||
'tmp_name' => __DIR__ . '/temp_icon.png',
|
||||
'error' => \UPLOAD_ERR_OK,
|
||||
'size' => \filesize(__DIR__ . '/icon.png'),
|
||||
],
|
||||
]);
|
||||
$this->module->apiUnitImageSet($request, $response);
|
||||
|
||||
$image = UnitMapper::get(1)->getImage();
|
||||
self::assertEquals('Organization Logo', $image->getName());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiUnitImageSetInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$this->module->apiUnitImageSet($request, $response);
|
||||
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->getHeader()->getStatusCode());
|
||||
}
|
||||
}
|
||||
BIN
tests/Controller/icon.png
Normal file
BIN
tests/Controller/icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 92 KiB |
|
|
@ -24,43 +24,113 @@ use Modules\Organization\Models\Status;
|
|||
*/
|
||||
class DepartmentTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private Department $department;
|
||||
|
||||
public function setUp() : void
|
||||
{
|
||||
$this->department = new Department();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
$department = new Department();
|
||||
|
||||
self::assertEquals(0, $department->getId());
|
||||
self::assertEquals('', $department->getName());
|
||||
self::assertEquals('', $department->getDescription());
|
||||
self::assertInstanceOf('Modules\Organization\Models\NullDepartment', $department->getParent());
|
||||
self::assertEquals(0, $department->getUnit()->getId());
|
||||
self::assertEquals(Status::INACTIVE, $department->getStatus());
|
||||
self::assertEquals(0, $this->department->getId());
|
||||
self::assertEquals('', $this->department->getName());
|
||||
self::assertEquals('', $this->department->getDescription());
|
||||
self::assertEquals('', $this->department->getDescriptionRaw());
|
||||
self::assertInstanceOf(NullDepartment::class, $this->department->getParent());
|
||||
self::assertEquals(0, $this->department->getUnit()->getId());
|
||||
self::assertEquals(Status::INACTIVE, $this->department->getStatus());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testSetGet() : void
|
||||
public function testNameInputOutput() : void
|
||||
{
|
||||
$department = new Department();
|
||||
$this->department->setName('Name');
|
||||
self::assertEquals('Name', $this->department->getName());
|
||||
}
|
||||
|
||||
$department->setName('Name');
|
||||
self::assertEquals('Name', $department->getName());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$this->department->setDescription('Description');
|
||||
self::assertEquals('Description', $this->department->getDescription());
|
||||
}
|
||||
|
||||
$department->setStatus(Status::ACTIVE);
|
||||
self::assertEquals(Status::ACTIVE, $department->getStatus());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionRawInputOutput() : void
|
||||
{
|
||||
$this->department->setDescriptionRaw('DescriptionRaw');
|
||||
self::assertEquals('DescriptionRaw', $this->department->getDescriptionRaw());
|
||||
}
|
||||
|
||||
$department->setDescription('Description');
|
||||
self::assertEquals('Description', $department->getDescription());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testStatusInputOutput() : void
|
||||
{
|
||||
$this->department->setStatus(Status::ACTIVE);
|
||||
self::assertEquals(Status::ACTIVE, $this->department->getStatus());
|
||||
}
|
||||
|
||||
$department->setParent(new NullDepartment(1));
|
||||
self::assertEquals(1, $department->getParent()->getId());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testParentInputOutput() : void
|
||||
{
|
||||
$this->department->setParent(new NullDepartment(1));
|
||||
self::assertEquals(1, $this->department->getParent()->getId());
|
||||
}
|
||||
|
||||
$department->setUnit(new NullUnit(1));
|
||||
self::assertEquals(1, $department->getUnit()->getId());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testUnitInputOutput() : void
|
||||
{
|
||||
$this->department->setUnit(new NullUnit(1));
|
||||
self::assertEquals(1, $this->department->getUnit()->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Department
|
||||
* @group module
|
||||
*/
|
||||
public function testSerialize() : void
|
||||
{
|
||||
$this->department->setName('Name');
|
||||
$this->department->setDescription('Description');
|
||||
$this->department->setDescriptionRaw('DescriptionRaw');
|
||||
$this->department->setStatus(Status::ACTIVE);
|
||||
$this->department->setParent($p = new NullDepartment(1));
|
||||
$this->department->setUnit($u = new NullUnit(1));
|
||||
|
||||
self::assertEquals($this->department->toArray(), $this->department->jsonSerialize());
|
||||
self::assertEquals(
|
||||
[
|
||||
'id' => 0,
|
||||
'name' => 'Name',
|
||||
'status' => Status::ACTIVE,
|
||||
'description' => 'Description',
|
||||
'descriptionRaw' => 'DescriptionRaw',
|
||||
'parent' => $p,
|
||||
'unit' => $u,
|
||||
],
|
||||
$this->department->toArray()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
42
tests/Models/NullDepartmentTest.php
Normal file
42
tests/Models/NullDepartmentTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 7.4
|
||||
*
|
||||
* @package tests
|
||||
* @copyright Dennis Eichhorn
|
||||
* @license OMS License 1.0
|
||||
* @version 1.0.0
|
||||
* @link https://orange-management.org
|
||||
*/
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Modules\Organization\tests\Models;
|
||||
|
||||
use Modules\Organization\Models\NullDepartment;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class NullDepartmentTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Organization\Models\NullDepartment
|
||||
* @group module
|
||||
*/
|
||||
public function testNull() : void
|
||||
{
|
||||
self::assertInstanceOf('\Modules\Organization\Models\Department', new NullDepartment());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\NullDepartment
|
||||
* @group module
|
||||
*/
|
||||
public function testId() : void
|
||||
{
|
||||
$null = new NullDepartment(2);
|
||||
self::assertEquals(2, $null->getId());
|
||||
}
|
||||
}
|
||||
42
tests/Models/NullPositionTest.php
Normal file
42
tests/Models/NullPositionTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 7.4
|
||||
*
|
||||
* @package tests
|
||||
* @copyright Dennis Eichhorn
|
||||
* @license OMS License 1.0
|
||||
* @version 1.0.0
|
||||
* @link https://orange-management.org
|
||||
*/
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Modules\Organization\tests\Models;
|
||||
|
||||
use Modules\Organization\Models\NullPosition;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class NullPositionTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Organization\Models\NullPosition
|
||||
* @group module
|
||||
*/
|
||||
public function testNull() : void
|
||||
{
|
||||
self::assertInstanceOf('\Modules\Organization\Models\Position', new NullPosition());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\NullPosition
|
||||
* @group module
|
||||
*/
|
||||
public function testId() : void
|
||||
{
|
||||
$null = new NullPosition(2);
|
||||
self::assertEquals(2, $null->getId());
|
||||
}
|
||||
}
|
||||
42
tests/Models/NullUnitTest.php
Normal file
42
tests/Models/NullUnitTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 7.4
|
||||
*
|
||||
* @package tests
|
||||
* @copyright Dennis Eichhorn
|
||||
* @license OMS License 1.0
|
||||
* @version 1.0.0
|
||||
* @link https://orange-management.org
|
||||
*/
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Modules\Organization\tests\Models;
|
||||
|
||||
use Modules\Organization\Models\NullUnit;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class NullUnitTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Organization\Models\NullUnit
|
||||
* @group module
|
||||
*/
|
||||
public function testNull() : void
|
||||
{
|
||||
self::assertInstanceOf('\Modules\Organization\Models\Unit', new NullUnit());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\NullUnit
|
||||
* @group module
|
||||
*/
|
||||
public function testId() : void
|
||||
{
|
||||
$null = new NullUnit(2);
|
||||
self::assertEquals(2, $null->getId());
|
||||
}
|
||||
}
|
||||
|
|
@ -14,9 +14,10 @@ declare(strict_types=1);
|
|||
|
||||
namespace Modules\Organization\tests\Models;
|
||||
|
||||
use Modules\Organization\Models\Position;
|
||||
use Modules\Organization\Models\NullDepartment;
|
||||
use Modules\Organization\Models\NullPosition;
|
||||
use Modules\Organization\Models\Position;
|
||||
use Modules\Organization\Models\NullUnit;
|
||||
use Modules\Organization\Models\Status;
|
||||
|
||||
/**
|
||||
|
|
@ -24,43 +25,113 @@ use Modules\Organization\Models\Status;
|
|||
*/
|
||||
class PositionTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private Position $position;
|
||||
|
||||
public function setUp() : void
|
||||
{
|
||||
$this->position = new Position();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
$position = new Position();
|
||||
|
||||
self::assertEquals(0, $position->getId());
|
||||
self::assertEquals('', $position->getName());
|
||||
self::assertEquals('', $position->getDescription());
|
||||
self::assertInstanceOf('Modules\Organization\Models\NullPosition', $position->getParent());
|
||||
self::assertEquals(Status::INACTIVE, $position->getStatus());
|
||||
self::assertInstanceOf('\Modules\Organization\Models\NullDepartment', $position->getDepartment());
|
||||
self::assertEquals(0, $this->position->getId());
|
||||
self::assertEquals('', $this->position->getName());
|
||||
self::assertEquals('', $this->position->getDescription());
|
||||
self::assertEquals('', $this->position->getDescriptionRaw());
|
||||
self::assertInstanceOf(NullPosition::class, $this->position->getParent());
|
||||
self::assertEquals(0, $this->position->getDepartment()->getId());
|
||||
self::assertEquals(Status::INACTIVE, $this->position->getStatus());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testSetGet() : void
|
||||
public function testNameInputOutput() : void
|
||||
{
|
||||
$position = new Position();
|
||||
$this->position->setName('Name');
|
||||
self::assertEquals('Name', $this->position->getName());
|
||||
}
|
||||
|
||||
$position->setName('Name');
|
||||
self::assertEquals('Name', $position->getName());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$this->position->setDescription('Description');
|
||||
self::assertEquals('Description', $this->position->getDescription());
|
||||
}
|
||||
|
||||
$position->setStatus(Status::ACTIVE);
|
||||
self::assertEquals(Status::ACTIVE, $position->getStatus());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionRawInputOutput() : void
|
||||
{
|
||||
$this->position->setDescriptionRaw('DescriptionRaw');
|
||||
self::assertEquals('DescriptionRaw', $this->position->getDescriptionRaw());
|
||||
}
|
||||
|
||||
$position->setDepartment(new NullDepartment(2));
|
||||
self::assertEquals(2, $position->getDepartment()->getId());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testStatusInputOutput() : void
|
||||
{
|
||||
$this->position->setStatus(Status::ACTIVE);
|
||||
self::assertEquals(Status::ACTIVE, $this->position->getStatus());
|
||||
}
|
||||
|
||||
$position->setDescription('Description');
|
||||
self::assertEquals('Description', $position->getDescription());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testParentInputOutput() : void
|
||||
{
|
||||
$this->position->setParent(new NullPosition(1));
|
||||
self::assertEquals(1, $this->position->getParent()->getId());
|
||||
}
|
||||
|
||||
$position->setParent(new NullPosition(2));
|
||||
self::assertEquals(2, $position->getParent()->getId());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testDepartmentInputOutput() : void
|
||||
{
|
||||
$this->position->setDepartment(new NullDepartment(1));
|
||||
self::assertEquals(1, $this->position->getDepartment()->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Position
|
||||
* @group module
|
||||
*/
|
||||
public function testSerialize() : void
|
||||
{
|
||||
$this->position->setName('Name');
|
||||
$this->position->setDescription('Description');
|
||||
$this->position->setDescriptionRaw('DescriptionRaw');
|
||||
$this->position->setStatus(Status::ACTIVE);
|
||||
$this->position->setParent($p = new NullPosition(1));
|
||||
$this->position->setDepartment($d = new NullDepartment(1));
|
||||
|
||||
self::assertEquals($this->position->toArray(), $this->position->jsonSerialize());
|
||||
self::assertEquals(
|
||||
[
|
||||
'id' => 0,
|
||||
'name' => 'Name',
|
||||
'status' => Status::ACTIVE,
|
||||
'description' => 'Description',
|
||||
'descriptionRaw' => 'DescriptionRaw',
|
||||
'parent' => $p,
|
||||
'department' => $d,
|
||||
],
|
||||
$this->position->toArray()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ declare(strict_types=1);
|
|||
|
||||
namespace Modules\Organization\tests\Models;
|
||||
|
||||
use Modules\Media\Models\NullMedia;
|
||||
use Modules\Organization\Models\NullUnit;
|
||||
use Modules\Organization\Models\Status;
|
||||
use Modules\Organization\Models\Unit;
|
||||
|
|
@ -23,39 +24,113 @@ use Modules\Organization\Models\Unit;
|
|||
*/
|
||||
class UnitTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private Unit $unit;
|
||||
|
||||
public function setUp() : void
|
||||
{
|
||||
$this->unit = new Unit();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
$unit = new Unit();
|
||||
|
||||
self::assertEquals(0, $unit->getId());
|
||||
self::assertEquals('', $unit->getName());
|
||||
self::assertEquals('', $unit->getDescription());
|
||||
self::assertInstanceOf('Modules\Organization\Models\NullUnit', $unit->getParent());
|
||||
self::assertEquals(Status::INACTIVE, $unit->getStatus());
|
||||
self::assertEquals(0, $this->unit->getId());
|
||||
self::assertEquals('', $this->unit->getName());
|
||||
self::assertEquals('', $this->unit->getDescription());
|
||||
self::assertEquals('', $this->unit->getDescriptionRaw());
|
||||
self::assertInstanceOf('Modules\Organization\Models\NullUnit', $this->unit->getParent());
|
||||
self::assertInstanceOf('Modules\Media\Models\NullMedia', $this->unit->getImage());
|
||||
self::assertEquals(Status::INACTIVE, $this->unit->getStatus());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testSetGet() : void
|
||||
public function testNameInputOutput() : void
|
||||
{
|
||||
$unit = new Unit();
|
||||
$this->unit->setName('Name');
|
||||
self::assertEquals('Name', $this->unit->getName());
|
||||
}
|
||||
|
||||
$unit->setName('Name');
|
||||
self::assertEquals('Name', $unit->getName());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testStatusInputOutput() : void
|
||||
{
|
||||
$this->unit->setStatus(Status::ACTIVE);
|
||||
self::assertEquals(Status::ACTIVE, $this->unit->getStatus());
|
||||
}
|
||||
|
||||
$unit->setStatus(Status::ACTIVE);
|
||||
self::assertEquals(Status::ACTIVE, $unit->getStatus());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$this->unit->setDescription('Description');
|
||||
self::assertEquals('Description', $this->unit->getDescription());
|
||||
}
|
||||
|
||||
$unit->setDescription('Description');
|
||||
self::assertEquals('Description', $unit->getDescription());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionRawInputOutput() : void
|
||||
{
|
||||
$this->unit->setDescriptionRaw('DescriptionRaw');
|
||||
self::assertEquals('DescriptionRaw', $this->unit->getDescriptionRaw());
|
||||
}
|
||||
|
||||
$unit->setParent(new NullUnit(1));
|
||||
self::assertEquals(1, $unit->getParent()->getId());
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testParentInputOutput() : void
|
||||
{
|
||||
$this->unit->setParent(new NullUnit(1));
|
||||
self::assertEquals(1, $this->unit->getParent()->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testImageInputOutput() : void
|
||||
{
|
||||
$this->unit->setImage(new NullMedia(1));
|
||||
self::assertEquals(1, $this->unit->getImage()->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Organization\Models\Unit
|
||||
* @group module
|
||||
*/
|
||||
public function testSerialize() : void
|
||||
{
|
||||
$this->unit->setName('Name');
|
||||
$this->unit->setDescription('Description');
|
||||
$this->unit->setDescriptionRaw('DescriptionRaw');
|
||||
$this->unit->setStatus(Status::ACTIVE);
|
||||
$this->unit->setParent($p = new NullUnit(1));
|
||||
$this->unit->setImage($i = new NullMedia(1));
|
||||
|
||||
self::assertEquals($this->unit->toArray(), $this->unit->jsonSerialize());
|
||||
self::assertEquals(
|
||||
[
|
||||
'id' => 0,
|
||||
'name' => 'Name',
|
||||
'status' => Status::ACTIVE,
|
||||
'description' => 'Description',
|
||||
'descriptionRaw' => 'DescriptionRaw',
|
||||
'parent' => $p,
|
||||
'image' => $i,
|
||||
],
|
||||
$this->unit->toArray()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user