mirror of
https://github.com/Karaka-Management/oms-Support.git
synced 2026-01-10 16:48:41 +00:00
158 lines
4.4 KiB
PHP
Executable File
158 lines
4.4 KiB
PHP
Executable File
<?php
|
|
/**
|
|
* Jingga
|
|
*
|
|
* PHP Version 8.1
|
|
*
|
|
* @package tests
|
|
* @copyright Dennis Eichhorn
|
|
* @license OMS License 2.0
|
|
* @version 1.0.0
|
|
* @link https://jingga.app
|
|
*/
|
|
declare(strict_types=1);
|
|
|
|
namespace Modules\Support\tests\Controller\Api;
|
|
|
|
use Modules\Tasks\Models\TaskStatus;
|
|
use phpOMS\Message\Http\HttpRequest;
|
|
use phpOMS\Message\Http\HttpResponse;
|
|
use phpOMS\Message\Http\RequestStatusCode;
|
|
|
|
trait ApiControllerTicketTrait
|
|
{
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiSupportAppCreate() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('name', 'TestSupportApp');
|
|
|
|
$this->module->apiSupportAppCreate($request, $response);
|
|
self::assertGreaterThan(0, $response->getDataArray('')['response']->id);
|
|
}
|
|
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiSupportAppCreateInvalidData() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('invalid', '1');
|
|
|
|
$this->module->apiSupportAppCreate($request, $response);
|
|
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
|
}
|
|
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiTicketCreate() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('title', 'Test Ticket');
|
|
$request->setData('plain', 'Test **content** here.');
|
|
$request->setData('forward', '1');
|
|
$request->setData('for', '1');
|
|
|
|
$this->module->apiTicketCreate($request, $response);
|
|
self::assertGreaterThan(0, $response->getDataArray('')['response']->id);
|
|
}
|
|
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiTicketGet() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('id', '1');
|
|
|
|
$this->module->apiTicketGet($request, $response);
|
|
self::assertGreaterThan(0, $response->getDataArray('')['response']->id);
|
|
}
|
|
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiTicketCreateInvalidData() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('invalid', '1');
|
|
|
|
$this->module->apiTicketCreate($request, $response);
|
|
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
|
}
|
|
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiTicketElementCreate() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('ticket', '1');
|
|
$request->setData('time', '10');
|
|
$request->setData('status', TaskStatus::WORKING);
|
|
$request->setData('due', (new \DateTime('now'))->format('Y-m-d H:i:s'));
|
|
|
|
$this->module->apiTicketElementCreate($request, $response);
|
|
self::assertGreaterThan(0, $response->getDataArray('')['response']->id);
|
|
}
|
|
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiTicketElementGet() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('id', '1');
|
|
|
|
$this->module->apiTicketElementGet($request, $response);
|
|
self::assertGreaterThan(0, $response->getDataArray('')['response']->id);
|
|
}
|
|
|
|
/**
|
|
* @covers \Modules\Support\Controller\ApiController
|
|
* @group module
|
|
*/
|
|
public function testApiTicketElementCreateInvalidData() : void
|
|
{
|
|
$response = new HttpResponse();
|
|
$request = new HttpRequest();
|
|
|
|
$request->header->account = 1;
|
|
$request->setData('invalid', '1');
|
|
|
|
$this->module->apiTicketElementCreate($request, $response);
|
|
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
|
}
|
|
}
|