mirror of
https://github.com/Karaka-Management/oms-Accounting.git
synced 2026-01-11 13:28:40 +00:00
more tests and make classes final
This commit is contained in:
parent
3907512532
commit
c8f7f03bf7
845
Controller/ApiController.php
Normal file
845
Controller/ApiController.php
Normal file
|
|
@ -0,0 +1,845 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @package Modules\Accounting
|
||||
* @copyright Dennis Eichhorn
|
||||
* @license OMS License 1.0
|
||||
* @version 1.0.0
|
||||
* @link https://orange-management.org
|
||||
*/
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Modules\Accounting\Controller;
|
||||
|
||||
use phpOMS\Message\RequestAbstract;
|
||||
use phpOMS\Message\ResponseAbstract;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\Model\Message\FormValidation;
|
||||
|
||||
/**
|
||||
* Accounting controller class.
|
||||
*
|
||||
* This class is responsible for the basic accounting activities.
|
||||
*
|
||||
* @package Modules\Accounting
|
||||
* @license OMS License 1.0
|
||||
* @link https://orange-management.org
|
||||
* @since 1.0.0
|
||||
*/
|
||||
final class ApiController extends Controller
|
||||
{
|
||||
/**
|
||||
* Api method to create an account
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiAccountCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateAccountCreate($request))) {
|
||||
$response->set('account_create', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate account create request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateAccountCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['name'] = empty($request->getData('name')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to create account from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function createAccountFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to update an account
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiAccountUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateAccountUpdate($request))) {
|
||||
$response->set('account_update', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate account update request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateAccountUpdate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = empty($request->getData('id')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to update account from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function updateAccountFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to create an cost center
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiCostCenterCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateCostCenterCreate($request))) {
|
||||
$response->set('account_create', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate cost center create request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateCostCenterCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['name'] = empty($request->getData('name')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to create cost center from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function createCostCenterFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to update an cost center
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiCostCenterUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateCostCenterUpdate($request))) {
|
||||
$response->set('account_update', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate cost center update request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateCostCenterUpdate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = empty($request->getData('id')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to update cost center from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function updateCostCenterFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to create an cost object
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiCostObjectCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateCostObjectCreate($request))) {
|
||||
$response->set('account_create', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate cost object create request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateCostObjectCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['name'] = empty($request->getData('name')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to create cost object from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function createCostObjectFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to update an cost object
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiCostObjectUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateCostObjectUpdate($request))) {
|
||||
$response->set('account_update', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate cost object update request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateCostObjectUpdate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = empty($request->getData('id')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to update cost object from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function updateCostObjectFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to create an entry
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiEntryCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateEntryCreate($request))) {
|
||||
$response->set('account_create', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate entry create request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateEntryCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['name'] = empty($request->getData('name')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to create entry from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function createEntryFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to update an entry
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiEntryUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateEntryUpdate($request))) {
|
||||
$response->set('account_update', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate entry update request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateEntryUpdate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = empty($request->getData('id')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to update entry from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function updateEntryFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to create an recurring entry
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiRecurringEntryCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateRecurringEntryCreate($request))) {
|
||||
$response->set('account_create', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate recurring entry create request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateRecurringEntryCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['name'] = empty($request->getData('name')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to create recurring entry from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function createRecurringEntryFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to update an recurring entry
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiRecurringEntryUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateRecurringEntryUpdate($request))) {
|
||||
$response->set('account_update', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate recurring entry update request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateRecurringEntryUpdate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = empty($request->getData('id')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to update recurring entry from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function updateRecurringEntryFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to create an tax key
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiTaxKeyCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateTaxKeyCreate($request))) {
|
||||
$response->set('account_create', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate tax key create request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateTaxKeyCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['name'] = empty($request->getData('name')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to create tax key from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function createTaxKeyFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to update an tax key
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiTaxKeyUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateTaxKeyUpdate($request))) {
|
||||
$response->set('account_update', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate tax key update request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateTaxKeyUpdate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = empty($request->getData('id')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to update tax key from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function updateTaxKeyFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to create an batch entry
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiBatchEntryCreate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateBatchEntryCreate($request))) {
|
||||
$response->set('account_create', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate batch entry create request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateBatchEntryCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['name'] = empty($request->getData('name')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to create batch entry from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function createBatchEntryFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Api method to update an batch entry
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @api
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function apiBatchEntryUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null) : void
|
||||
{
|
||||
if (!empty($val = $this->validateBatchEntryUpdate($request))) {
|
||||
$response->set('account_update', new FormValidation($val));
|
||||
$response->header->status = RequestStatusCode::R_400;
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Validate batch entry update request
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return array<string, bool>
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function validateBatchEntryUpdate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = empty($request->getData('id')))
|
||||
|| ($val['status'] = false)
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
return [];
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to update batch entry from request.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
*
|
||||
* @return mixed
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private function updateBatchEntryFromRequest(RequestAbstract $request) : mixed
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
@ -242,6 +242,69 @@ final class BackendController extends Controller
|
|||
return $view;
|
||||
}
|
||||
|
||||
/**
|
||||
* Routing end-point for application behaviour.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return RenderableInterface
|
||||
*
|
||||
* @since 1.0.0
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function viewCostCenterProfile(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
|
||||
{
|
||||
$view = new View($this->app->l11nManager, $request, $response);
|
||||
$view->setTemplate('/Modules/Accounting/Theme/Backend/gl-profile');
|
||||
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1002604001, $request, $response));
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
/**
|
||||
* Routing end-point for application behaviour.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return RenderableInterface
|
||||
*
|
||||
* @since 1.0.0
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function viewImpersonalEntries(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
|
||||
{
|
||||
$view = new View($this->app->l11nManager, $request, $response);
|
||||
$view->setTemplate('/Modules/Accounting/Theme/Backend/gl-profile');
|
||||
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1002604001, $request, $response));
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
/**
|
||||
* Routing end-point for application behaviour.
|
||||
*
|
||||
* @param RequestAbstract $request Request
|
||||
* @param ResponseAbstract $response Response
|
||||
* @param mixed $data Generic data
|
||||
*
|
||||
* @return RenderableInterface
|
||||
*
|
||||
* @since 1.0.0
|
||||
* @codeCoverageIgnore
|
||||
*/
|
||||
public function viewPersonalEntries(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface
|
||||
{
|
||||
$view = new View($this->app->l11nManager, $request, $response);
|
||||
$view->setTemplate('/Modules/Accounting/Theme/Backend/gl-profile');
|
||||
$view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1002604001, $request, $response));
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
/**
|
||||
* Routing end-point for application behaviour.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -32,6 +32,14 @@ abstract class AccountAbstract
|
|||
*/
|
||||
protected int $id = 0;
|
||||
|
||||
/**
|
||||
* Summary account.
|
||||
*
|
||||
* @var null|int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public ?int $summaryAccount = null;
|
||||
|
||||
/**
|
||||
* Type.
|
||||
*
|
||||
|
|
@ -48,18 +56,6 @@ abstract class AccountAbstract
|
|||
*/
|
||||
protected array $entries = [];
|
||||
|
||||
/**
|
||||
* Constructor.
|
||||
*
|
||||
* @param int $id Account ID
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function __construct(int $id = 0)
|
||||
{
|
||||
$this->id = $id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get account id.
|
||||
*
|
||||
|
|
@ -90,14 +86,14 @@ abstract class AccountAbstract
|
|||
* Get entry.
|
||||
*
|
||||
* @param \DateTime $start Interval start
|
||||
* @param \DateTime $end Interval end
|
||||
* @param null|\DateTime $end Interval end
|
||||
* @param int $dateType Date type by witch the entries should be filtered
|
||||
*
|
||||
* @return array
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getEntriesByDate(\DateTime $start, \DateTime $end, int $dateType = TimeRangeType::RECEIPT_DATE) : array
|
||||
public function getEntriesByDate(\DateTime $start, \DateTime $end = null, int $dateType = TimeRangeType::RECEIPT_DATE) : array
|
||||
{
|
||||
return [];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ class Balance
|
|||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private int $id = 0;
|
||||
protected int $id = 0;
|
||||
|
||||
/**
|
||||
* Balance data.
|
||||
|
|
@ -41,20 +41,22 @@ class Balance
|
|||
private array $balance = [];
|
||||
|
||||
/**
|
||||
* Balance name.
|
||||
* Localization.
|
||||
*
|
||||
* @var string
|
||||
* @var BalanceL11n
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public string $name = '';
|
||||
public BalanceL11n $l11n;
|
||||
|
||||
/**
|
||||
* Balance description.
|
||||
* Constructor.
|
||||
*
|
||||
* @var string
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private string $description = '';
|
||||
public function __construct()
|
||||
{
|
||||
$this->l11n = new BalanceL11n();
|
||||
}
|
||||
|
||||
/**
|
||||
* Get balance id
|
||||
|
|
@ -67,30 +69,4 @@ class Balance
|
|||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set description
|
||||
*
|
||||
* @param string $description Balance description
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function setDescription(string $description) : void
|
||||
{
|
||||
$this->description = $description;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get description
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getDescription() : string
|
||||
{
|
||||
return $this->description;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
129
Models/BalanceL11n.php
Normal file
129
Models/BalanceL11n.php
Normal file
|
|
@ -0,0 +1,129 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @package Modules\Accounting\Models
|
||||
* @copyright Dennis Eichhorn
|
||||
* @license OMS License 1.0
|
||||
* @version 1.0.0
|
||||
* @link https://orange-management.org
|
||||
*/
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Modules\Accounting\Models;
|
||||
|
||||
use phpOMS\Contract\ArrayableInterface;
|
||||
use phpOMS\Localization\ISO639x1Enum;
|
||||
|
||||
/**
|
||||
* Balance class.
|
||||
*
|
||||
* @package Modules\Accounting\Models
|
||||
* @license OMS License 1.0
|
||||
* @link https://orange-management.org
|
||||
* @since 1.0.0
|
||||
*/
|
||||
class BalanceL11n implements \JsonSerializable, ArrayableInterface
|
||||
{
|
||||
/**
|
||||
* Article ID.
|
||||
*
|
||||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
protected int $id = 0;
|
||||
|
||||
/**
|
||||
* Balance ID.
|
||||
*
|
||||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public int $balance = 0;
|
||||
|
||||
/**
|
||||
* Language.
|
||||
*
|
||||
* @var string
|
||||
* @since 1.0.0
|
||||
*/
|
||||
protected string $language = ISO639x1Enum::_EN;
|
||||
|
||||
/**
|
||||
* Name.
|
||||
*
|
||||
* @var string
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public string $name = '';
|
||||
|
||||
/**
|
||||
* Description.
|
||||
*
|
||||
* @var string
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public string $description = '';
|
||||
|
||||
/**
|
||||
* Get id
|
||||
*
|
||||
* @return int
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getId() : int
|
||||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get language
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getLanguage() : string
|
||||
{
|
||||
return $this->language;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set language
|
||||
*
|
||||
* @param string $language Language
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function setLanguage(string $language) : void
|
||||
{
|
||||
$this->language = $language;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function toArray() : array
|
||||
{
|
||||
return [
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'description' => $this->description,
|
||||
'balance' => $this->balance,
|
||||
'language' => $this->language,
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public function jsonSerialize()
|
||||
{
|
||||
return $this->toArray();
|
||||
}
|
||||
}
|
||||
|
|
@ -30,7 +30,7 @@ class BatchPosting implements \Countable
|
|||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private int $id = 0;
|
||||
protected int $id = 0;
|
||||
|
||||
/**
|
||||
* Creator.
|
||||
|
|
@ -38,7 +38,7 @@ class BatchPosting implements \Countable
|
|||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private int $creator = 0;
|
||||
public int $creator = 0;
|
||||
|
||||
/**
|
||||
* Created.
|
||||
|
|
@ -46,7 +46,7 @@ class BatchPosting implements \Countable
|
|||
* @var \DateTimeImmutable
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private \DateTimeImmutable $created;
|
||||
public \DateTimeImmutable $created;
|
||||
|
||||
/**
|
||||
* Description.
|
||||
|
|
@ -54,7 +54,7 @@ class BatchPosting implements \Countable
|
|||
* @var string
|
||||
* @since 1.0.0
|
||||
*/
|
||||
private string $description = '';
|
||||
public string $description = '';
|
||||
|
||||
/**
|
||||
* Postings.
|
||||
|
|
@ -86,70 +86,6 @@ class BatchPosting implements \Countable
|
|||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get description.
|
||||
*
|
||||
* @return string
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getDescription() : string
|
||||
{
|
||||
return $this->description;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set description.
|
||||
*
|
||||
* @param string $desc Description
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function setDescription(string $desc) : void
|
||||
{
|
||||
$this->description = $desc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get created.
|
||||
*
|
||||
* @return \DateTimeImmutable
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getCreatedAt() : \DateTimeImmutable
|
||||
{
|
||||
return $this->created;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get creator.
|
||||
*
|
||||
* @return int
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getCreator()
|
||||
{
|
||||
return $this->creator;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set creator.
|
||||
*
|
||||
* @param int $creator Creator ID
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function setCreator($creator) : void
|
||||
{
|
||||
$this->creator = $creator;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get posting.
|
||||
*
|
||||
|
|
|
|||
|
|
@ -43,10 +43,10 @@ class CostCenter
|
|||
/**
|
||||
* Localization.
|
||||
*
|
||||
* @var L11nCostCenter
|
||||
* @var CostCenterL11n
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public L11nCostCenter $l11n;
|
||||
public CostCenterL11n $l11n;
|
||||
|
||||
/**
|
||||
* Parent.
|
||||
|
|
@ -63,7 +63,7 @@ class CostCenter
|
|||
*/
|
||||
public function __construct()
|
||||
{
|
||||
$this->l11n = new L11nCostCenter();
|
||||
$this->l11n = new CostCenterL11n();
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
31
Models/L11nCostCenter.php → Models/CostCenterL11n.php
Executable file → Normal file
31
Models/L11nCostCenter.php → Models/CostCenterL11n.php
Executable file → Normal file
|
|
@ -25,7 +25,7 @@ use phpOMS\Localization\ISO639x1Enum;
|
|||
* @link https://orange-management.org
|
||||
* @since 1.0.0
|
||||
*/
|
||||
class L11nCostCenter implements \JsonSerializable, ArrayableInterface
|
||||
class CostCenterL11n implements \JsonSerializable, ArrayableInterface
|
||||
{
|
||||
/**
|
||||
* Article ID.
|
||||
|
|
@ -41,7 +41,7 @@ class L11nCostCenter implements \JsonSerializable, ArrayableInterface
|
|||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
protected int $costcenter = 0;
|
||||
public int $costcenter = 0;
|
||||
|
||||
/**
|
||||
* Language.
|
||||
|
|
@ -79,32 +79,6 @@ class L11nCostCenter implements \JsonSerializable, ArrayableInterface
|
|||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set costcenter.
|
||||
*
|
||||
* @param int $costcenter CostCenter id
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function setCostCenter(int $costcenter) : void
|
||||
{
|
||||
$this->costcenter = $costcenter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get costcenter
|
||||
*
|
||||
* @return int
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getCostCenter() : int
|
||||
{
|
||||
return $this->costcenter;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get language
|
||||
*
|
||||
|
|
@ -139,6 +113,7 @@ class L11nCostCenter implements \JsonSerializable, ArrayableInterface
|
|||
return [
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'description' => $this->description,
|
||||
'costcenter' => $this->costcenter,
|
||||
'language' => $this->language,
|
||||
];
|
||||
2
Models/L11nCostCenterMapper.php → Models/CostCenterL11nMapper.php
Executable file → Normal file
2
Models/L11nCostCenterMapper.php → Models/CostCenterL11nMapper.php
Executable file → Normal file
|
|
@ -24,7 +24,7 @@ use phpOMS\DataStorage\Database\DataMapperAbstract;
|
|||
* @link https://orange-management.org
|
||||
* @since 1.0.0
|
||||
*/
|
||||
final class L11nCostCenterMapper extends DataMapperAbstract
|
||||
final class CostCenterL11nMapper extends DataMapperAbstract
|
||||
{
|
||||
/**
|
||||
* Columns.
|
||||
|
|
@ -45,7 +45,7 @@ final class CostCenterMapper extends DataMapperAbstract
|
|||
*/
|
||||
protected static array $hasMany = [
|
||||
'l11n' => [
|
||||
'mapper' => L11nCostCenterMapper::class,
|
||||
'mapper' => CostCenterL11nMapper::class,
|
||||
'table' => 'accounting_costcenter_l11n',
|
||||
'self' => 'accounting_costcenter_l11n_costcenter',
|
||||
'conditional' => true,
|
||||
|
|
|
|||
|
|
@ -43,10 +43,10 @@ class CostObject
|
|||
/**
|
||||
* Localization.
|
||||
*
|
||||
* @var L11nCostObject
|
||||
* @var CostObjectL11n
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public L11nCostObject $l11n;
|
||||
public CostObjectL11n $l11n;
|
||||
|
||||
/**
|
||||
* Parent.
|
||||
|
|
@ -63,7 +63,7 @@ class CostObject
|
|||
*/
|
||||
public function __construct()
|
||||
{
|
||||
$this->l11n = new L11nCostObject();
|
||||
$this->l11n = new CostObjectL11n();
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
31
Models/L11nCostObject.php → Models/CostObjectL11n.php
Executable file → Normal file
31
Models/L11nCostObject.php → Models/CostObjectL11n.php
Executable file → Normal file
|
|
@ -25,7 +25,7 @@ use phpOMS\Localization\ISO639x1Enum;
|
|||
* @link https://orange-management.org
|
||||
* @since 1.0.0
|
||||
*/
|
||||
class L11nCostObject implements \JsonSerializable, ArrayableInterface
|
||||
class CostObjectL11n implements \JsonSerializable, ArrayableInterface
|
||||
{
|
||||
/**
|
||||
* Article ID.
|
||||
|
|
@ -41,7 +41,7 @@ class L11nCostObject implements \JsonSerializable, ArrayableInterface
|
|||
* @var int
|
||||
* @since 1.0.0
|
||||
*/
|
||||
protected int $costobject = 0;
|
||||
public int $costobject = 0;
|
||||
|
||||
/**
|
||||
* Language.
|
||||
|
|
@ -79,32 +79,6 @@ class L11nCostObject implements \JsonSerializable, ArrayableInterface
|
|||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set costobject.
|
||||
*
|
||||
* @param int $costobject CostObject id
|
||||
*
|
||||
* @return void
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function setCostObject(int $costobject) : void
|
||||
{
|
||||
$this->costobject = $costobject;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get costobject
|
||||
*
|
||||
* @return int
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getCostObject() : int
|
||||
{
|
||||
return $this->costobject;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get language
|
||||
*
|
||||
|
|
@ -139,6 +113,7 @@ class L11nCostObject implements \JsonSerializable, ArrayableInterface
|
|||
return [
|
||||
'id' => $this->id,
|
||||
'name' => $this->name,
|
||||
'description' => $this->description,
|
||||
'costobject' => $this->costobject,
|
||||
'language' => $this->language,
|
||||
];
|
||||
2
Models/L11nCostObjectMapper.php → Models/CostObjectL11nMapper.php
Executable file → Normal file
2
Models/L11nCostObjectMapper.php → Models/CostObjectL11nMapper.php
Executable file → Normal file
|
|
@ -24,7 +24,7 @@ use phpOMS\DataStorage\Database\DataMapperAbstract;
|
|||
* @link https://orange-management.org
|
||||
* @since 1.0.0
|
||||
*/
|
||||
final class L11nCostObjectMapper extends DataMapperAbstract
|
||||
final class CostObjectL11nMapper extends DataMapperAbstract
|
||||
{
|
||||
/**
|
||||
* Columns.
|
||||
|
|
@ -45,7 +45,7 @@ final class CostObjectMapper extends DataMapperAbstract
|
|||
*/
|
||||
protected static array $hasMany = [
|
||||
'l11n' => [
|
||||
'mapper' => L11nCostObjectMapper::class,
|
||||
'mapper' => CostObjectL11nMapper::class,
|
||||
'table' => 'accounting_costobject_l11n',
|
||||
'self' => 'accounting_costobject_l11n_costobject',
|
||||
'conditional' => true,
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ class Creditor
|
|||
* @var null|int|Account
|
||||
* @since 1.0.0
|
||||
*/
|
||||
protected $account = null;
|
||||
public $account = null;
|
||||
|
||||
/**
|
||||
* Get id.
|
||||
|
|
@ -53,16 +53,4 @@ class Creditor
|
|||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get account.
|
||||
*
|
||||
* @return null|int|Account
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getAccount()
|
||||
{
|
||||
return $this->account;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ class Debitor
|
|||
* @var null|int|Account
|
||||
* @since 1.0.0
|
||||
*/
|
||||
protected $account = null;
|
||||
public $account = null;
|
||||
|
||||
/**
|
||||
* Get id.
|
||||
|
|
@ -53,16 +53,4 @@ class Debitor
|
|||
{
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get account.
|
||||
*
|
||||
* @return null|int|Account
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public function getAccount()
|
||||
{
|
||||
return $this->account;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
91
tests/Controller/Api/ApiControllerAccountTrait.php
Normal file
91
tests/Controller/Api/ApiControllerAccountTrait.php
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Controller\Api;
|
||||
|
||||
use phpOMS\Message\Http\HttpRequest;
|
||||
use phpOMS\Message\Http\HttpResponse;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\Uri\HttpUri;
|
||||
|
||||
trait ApiControllerAccountTrait
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiAccountCreate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', '1');
|
||||
|
||||
$this->module->apiAccountCreate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiAccountCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiAccountCreate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiAccountUpdate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('id', '1');
|
||||
|
||||
$this->module->apiAccountUpdate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiAccountUpdateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiAccountUpdate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
}
|
||||
159
tests/Controller/Api/ApiControllerBatchEntryTrait.php
Normal file
159
tests/Controller/Api/ApiControllerBatchEntryTrait.php
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Controller\Api;
|
||||
|
||||
use phpOMS\Message\Http\HttpRequest;
|
||||
use phpOMS\Message\Http\HttpResponse;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\Uri\HttpUri;
|
||||
|
||||
trait ApiControllerBatchEntryTrait
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiBatchEntryCreate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', '1');
|
||||
|
||||
$this->module->apiBatchEntryCreate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiBatchEntryCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiBatchEntryCreate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiBatchEntryUpdate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('id', '1');
|
||||
|
||||
$this->module->apiBatchEntryUpdate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiBatchEntryUpdateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiBatchEntryUpdate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiRecurringEntryCreate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', '1');
|
||||
|
||||
$this->module->apiRecurringEntryCreate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiRecurringEntryCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiRecurringEntryCreate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiRecurringEntryUpdate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('id', '1');
|
||||
|
||||
$this->module->apiRecurringEntryUpdate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiRecurringEntryUpdateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiRecurringEntryUpdate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
}
|
||||
91
tests/Controller/Api/ApiControllerCostCenterTrait.php
Normal file
91
tests/Controller/Api/ApiControllerCostCenterTrait.php
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Controller\Api;
|
||||
|
||||
use phpOMS\Message\Http\HttpRequest;
|
||||
use phpOMS\Message\Http\HttpResponse;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\Uri\HttpUri;
|
||||
|
||||
trait ApiControllerCostCenterTrait
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostCenterCreate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', '1');
|
||||
|
||||
$this->module->apiCostCenterCreate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostCenterCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiCostCenterCreate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostCenterUpdate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('id', '1');
|
||||
|
||||
$this->module->apiCostCenterUpdate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostCenterUpdateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiCostCenterUpdate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
}
|
||||
91
tests/Controller/Api/ApiControllerCostObjectTrait.php
Normal file
91
tests/Controller/Api/ApiControllerCostObjectTrait.php
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Controller\Api;
|
||||
|
||||
use phpOMS\Message\Http\HttpRequest;
|
||||
use phpOMS\Message\Http\HttpResponse;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\Uri\HttpUri;
|
||||
|
||||
trait ApiControllerCostObjectTrait
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostObjectCreate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', '1');
|
||||
|
||||
$this->module->apiCostObjectCreate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostObjectCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiCostObjectCreate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostObjectUpdate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('id', '1');
|
||||
|
||||
$this->module->apiCostObjectUpdate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiCostObjectUpdateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiCostObjectUpdate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
}
|
||||
91
tests/Controller/Api/ApiControllerEntryTrait.php
Normal file
91
tests/Controller/Api/ApiControllerEntryTrait.php
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Controller\Api;
|
||||
|
||||
use phpOMS\Message\Http\HttpRequest;
|
||||
use phpOMS\Message\Http\HttpResponse;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\Uri\HttpUri;
|
||||
|
||||
trait ApiControllerEntryTrait
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiEntryCreate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', '1');
|
||||
|
||||
$this->module->apiEntryCreate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiEntryCreateInvalidData() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiEntryCreate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiEntryUpdate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('id', '1');
|
||||
|
||||
$this->module->apiEntryUpdate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiEntryUpdateInvalidData() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiEntryUpdate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
}
|
||||
91
tests/Controller/Api/ApiControllerTaxKeyTrait.php
Normal file
91
tests/Controller/Api/ApiControllerTaxKeyTrait.php
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Controller\Api;
|
||||
|
||||
use phpOMS\Message\Http\HttpRequest;
|
||||
use phpOMS\Message\Http\HttpResponse;
|
||||
use phpOMS\Message\Http\RequestStatusCode;
|
||||
use phpOMS\Uri\HttpUri;
|
||||
|
||||
trait ApiControllerTaxKeyTrait
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiTaxKeyCreate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', '1');
|
||||
|
||||
$this->module->apiTaxKeyCreate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiTaxKeyCreateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiTaxKeyCreate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiTaxKeyUpdate() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('id', '1');
|
||||
|
||||
$this->module->apiTaxKeyUpdate($request, $response);
|
||||
|
||||
self::assertTrue(true);
|
||||
//self::assertGreaterThan(0, $response->get('')['response']->getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Controller\ApiController
|
||||
* @group module
|
||||
*/
|
||||
public function testApiTaxKeyUpdateInvalid() : void
|
||||
{
|
||||
$response = new HttpResponse();
|
||||
$request = new HttpRequest(new HttpUri(''));
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('invalid', '1');
|
||||
|
||||
$this->module->apiTaxKeyUpdate($request, $response);
|
||||
self::assertEquals(RequestStatusCode::R_400, $response->header->status);
|
||||
}
|
||||
}
|
||||
99
tests/Controller/ApiControllerTest.php
Normal file
99
tests/Controller/ApiControllerTest.php
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Controller;
|
||||
|
||||
use Model\CoreSettings;
|
||||
use Modules\Admin\Models\AccountPermission;
|
||||
use Modules\Accounting\tests\Controller\Api\ApiControllerAccountTrait;
|
||||
use Modules\Accounting\tests\Controller\Api\ApiControllerCostCenterTrait;
|
||||
use Modules\Accounting\tests\Controller\Api\ApiControllerCostObjectTrait;
|
||||
use Modules\Accounting\tests\Controller\Api\ApiControllerTaxKeyTrait;
|
||||
use Modules\Accounting\tests\Controller\Api\ApiControllerEntryTrait;
|
||||
use Modules\Accounting\tests\Controller\Api\ApiControllerBatchEntryTrait;
|
||||
use phpOMS\Account\Account;
|
||||
use phpOMS\Account\AccountManager;
|
||||
use phpOMS\Account\PermissionType;
|
||||
use phpOMS\Application\ApplicationAbstract;
|
||||
use phpOMS\Dispatcher\Dispatcher;
|
||||
use phpOMS\Event\EventManager;
|
||||
use phpOMS\Module\ModuleAbstract;
|
||||
use phpOMS\Module\ModuleManager;
|
||||
use phpOMS\Router\WebRouter;
|
||||
use phpOMS\Utils\TestUtils;
|
||||
|
||||
/**
|
||||
* @testdox Modules\Accounting\tests\Controller\ApiControllerTest: Accounting api controller
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
class ApiControllerTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
protected ApplicationAbstract $app;
|
||||
|
||||
/**
|
||||
* @var \Modules\Accounting\Controller\ApiController
|
||||
*/
|
||||
protected ModuleAbstract $module;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->app = new class() extends ApplicationAbstract
|
||||
{
|
||||
protected string $appName = 'Api';
|
||||
};
|
||||
|
||||
$this->app->dbPool = $GLOBALS['dbpool'];
|
||||
$this->app->orgId = 1;
|
||||
$this->app->accountManager = new AccountManager($GLOBALS['session']);
|
||||
$this->app->appSettings = new CoreSettings();
|
||||
$this->app->moduleManager = new ModuleManager($this->app, __DIR__ . '/../../../../Modules/');
|
||||
$this->app->dispatcher = new Dispatcher($this->app);
|
||||
$this->app->eventManager = new EventManager($this->app->dispatcher);
|
||||
$this->app->eventManager->importFromFile(__DIR__ . '/../../../../Web/Api/Hooks.php');
|
||||
|
||||
$account = new Account();
|
||||
TestUtils::setMember($account, 'id', 1);
|
||||
|
||||
$permission = new AccountPermission();
|
||||
$permission->setUnit(1);
|
||||
$permission->setApp('backend');
|
||||
$permission->setPermission(
|
||||
PermissionType::READ
|
||||
| PermissionType::CREATE
|
||||
| PermissionType::MODIFY
|
||||
| PermissionType::DELETE
|
||||
| PermissionType::PERMISSION
|
||||
);
|
||||
|
||||
$account->addPermission($permission);
|
||||
|
||||
$this->app->accountManager->add($account);
|
||||
$this->app->router = new WebRouter();
|
||||
|
||||
$this->module = $this->app->moduleManager->get('Accounting');
|
||||
|
||||
TestUtils::setMember($this->module, 'app', $this->app);
|
||||
}
|
||||
|
||||
use ApiControllerAccountTrait;
|
||||
use ApiControllerCostCenterTrait;
|
||||
use ApiControllerCostObjectTrait;
|
||||
use ApiControllerTaxKeyTrait;
|
||||
use ApiControllerEntryTrait;
|
||||
use ApiControllerBatchEntryTrait;
|
||||
}
|
||||
44
tests/Models/AccountAbstractTest.php
Normal file
44
tests/Models/AccountAbstractTest.php
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\AccountAbstract;
|
||||
|
||||
/**
|
||||
* @testdox Modules\Accounting\tests\Models\AccountAbstractTest: Account abstraction
|
||||
*
|
||||
* @internal
|
||||
*/
|
||||
class AccountAbstractTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private $class = null;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->class = new class() extends AccountAbstract {
|
||||
};
|
||||
}
|
||||
|
||||
public function testDefault() : void
|
||||
{
|
||||
self::assertEquals(0, $this->class->getId());
|
||||
self::assertEquals(null, $this->class->summaryAccount);
|
||||
self::assertEquals(null, $this->class->getEntryById(0));
|
||||
self::assertEquals([], $this->class->getEntriesByDate(new \DateTime()));
|
||||
}
|
||||
}
|
||||
100
tests/Models/BalanceL11nTest.php
Normal file
100
tests/Models/BalanceL11nTest.php
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\BalanceL11n;
|
||||
use phpOMS\Localization\ISO639x1Enum;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class BalanceL11nTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private BalanceL11n $l11n;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->l11n = new BalanceL11n();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\BalanceL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
self::assertEquals(0, $this->l11n->getId());
|
||||
self::assertEquals('', $this->l11n->name);
|
||||
self::assertEquals('', $this->l11n->description);
|
||||
self::assertEquals(0, $this->l11n->balance);
|
||||
self::assertEquals(ISO639x1Enum::_EN, $this->l11n->getLanguage());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\BalanceL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testNameInputOutput() : void
|
||||
{
|
||||
$this->l11n->name = 'TestName';
|
||||
self::assertEquals('TestName', $this->l11n->name);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\BalanceL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$this->l11n->description = 'TestDescription';
|
||||
self::assertEquals('TestDescription', $this->l11n->description);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\BalanceL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testLanguageInputOutput() : void
|
||||
{
|
||||
$this->l11n->setLanguage(ISO639x1Enum::_DE);
|
||||
self::assertEquals(ISO639x1Enum::_DE, $this->l11n->getLanguage());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\BalanceL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testSerialize() : void
|
||||
{
|
||||
$this->l11n->name = 'Title';
|
||||
$this->l11n->description = 'Description';
|
||||
$this->l11n->balance = 2;
|
||||
$this->l11n->setLanguage(ISO639x1Enum::_DE);
|
||||
|
||||
self::assertEquals(
|
||||
[
|
||||
'id' => 0,
|
||||
'name' => 'Title',
|
||||
'description' => 'Description',
|
||||
'balance' => 2,
|
||||
'language' => ISO639x1Enum::_DE,
|
||||
],
|
||||
$this->l11n->jsonSerialize()
|
||||
);
|
||||
}
|
||||
}
|
||||
42
tests/Models/BalanceTest.php
Normal file
42
tests/Models/BalanceTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\Balance;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class BalanceTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private Balance $balance;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->balance = new Balance();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\Balance
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
self::assertEquals(0, $this->balance->getId());
|
||||
}
|
||||
}
|
||||
100
tests/Models/CostCenterL11nTest.php
Normal file
100
tests/Models/CostCenterL11nTest.php
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\CostCenterL11n;
|
||||
use phpOMS\Localization\ISO639x1Enum;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class CostCenterL11nTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private CostCenterL11n $l11n;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->l11n = new CostCenterL11n();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenterL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
self::assertEquals(0, $this->l11n->getId());
|
||||
self::assertEquals('', $this->l11n->name);
|
||||
self::assertEquals('', $this->l11n->description);
|
||||
self::assertEquals(0, $this->l11n->costcenter);
|
||||
self::assertEquals(ISO639x1Enum::_EN, $this->l11n->getLanguage());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenterL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testNameInputOutput() : void
|
||||
{
|
||||
$this->l11n->name = 'TestName';
|
||||
self::assertEquals('TestName', $this->l11n->name);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenterL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$this->l11n->description = 'TestDescription';
|
||||
self::assertEquals('TestDescription', $this->l11n->description);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenterL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testLanguageInputOutput() : void
|
||||
{
|
||||
$this->l11n->setLanguage(ISO639x1Enum::_DE);
|
||||
self::assertEquals(ISO639x1Enum::_DE, $this->l11n->getLanguage());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenterL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testSerialize() : void
|
||||
{
|
||||
$this->l11n->name = 'Title';
|
||||
$this->l11n->description = 'Description';
|
||||
$this->l11n->costcenter = 2;
|
||||
$this->l11n->setLanguage(ISO639x1Enum::_DE);
|
||||
|
||||
self::assertEquals(
|
||||
[
|
||||
'id' => 0,
|
||||
'name' => 'Title',
|
||||
'description' => 'Description',
|
||||
'costcenter' => 2,
|
||||
'language' => ISO639x1Enum::_DE,
|
||||
],
|
||||
$this->l11n->jsonSerialize()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -21,31 +21,25 @@ use Modules\Accounting\Models\CostCenter;
|
|||
*/
|
||||
class CostCenterTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenter
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
$cc = new CostCenter();
|
||||
private CostCenter $cc;
|
||||
|
||||
self::assertEquals(0, $cc->getId());
|
||||
self::assertEquals('', $cc->l11n->name);
|
||||
self::assertEquals('', $cc->code);
|
||||
self::assertEquals('', $cc->l11n->description);
|
||||
self::assertNull($cc->parent);
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->cc = new CostCenter();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenter
|
||||
* @group module
|
||||
*/
|
||||
public function testNameInputOutput() : void
|
||||
public function testDefault() : void
|
||||
{
|
||||
$cc = new CostCenter();
|
||||
|
||||
$cc->l11n->name = 'TestName';
|
||||
self::assertEquals('TestName', $cc->l11n->name);
|
||||
self::assertEquals(0, $this->cc->getId());
|
||||
self::assertEquals('', $this->cc->code);
|
||||
self::assertNull($this->cc->parent);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -54,22 +48,8 @@ class CostCenterTest extends \PHPUnit\Framework\TestCase
|
|||
*/
|
||||
public function testCodeInputOutput() : void
|
||||
{
|
||||
$cc = new CostCenter();
|
||||
|
||||
$cc->code = 'TestCode';
|
||||
self::assertEquals('TestCode', $cc->code);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostCenter
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$cc = new CostCenter();
|
||||
|
||||
$cc->l11n->description = 'TestDescription';
|
||||
self::assertEquals('TestDescription', $cc->l11n->description);
|
||||
$this->cc->code = 'TestCode';
|
||||
self::assertEquals('TestCode', $this->cc->code);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -78,9 +58,7 @@ class CostCenterTest extends \PHPUnit\Framework\TestCase
|
|||
*/
|
||||
public function testParentInputOutput() : void
|
||||
{
|
||||
$cc = new CostCenter();
|
||||
|
||||
$cc->parent = 1;
|
||||
self::assertEquals(1, $cc->parent);
|
||||
$this->cc->parent = 1;
|
||||
self::assertEquals(1, $this->cc->parent);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
100
tests/Models/CostObjectL11nTest.php
Normal file
100
tests/Models/CostObjectL11nTest.php
Normal file
|
|
@ -0,0 +1,100 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\CostObjectL11n;
|
||||
use phpOMS\Localization\ISO639x1Enum;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class CostObjectL11nTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private CostObjectL11n $l11n;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->l11n = new CostObjectL11n();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObjectL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
self::assertEquals(0, $this->l11n->getId());
|
||||
self::assertEquals('', $this->l11n->name);
|
||||
self::assertEquals('', $this->l11n->description);
|
||||
self::assertEquals(0, $this->l11n->costobject);
|
||||
self::assertEquals(ISO639x1Enum::_EN, $this->l11n->getLanguage());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObjectL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testNameInputOutput() : void
|
||||
{
|
||||
$this->l11n->name = 'TestName';
|
||||
self::assertEquals('TestName', $this->l11n->name);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObjectL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$this->l11n->description = 'TestDescription';
|
||||
self::assertEquals('TestDescription', $this->l11n->description);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObjectL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testLanguageInputOutput() : void
|
||||
{
|
||||
$this->l11n->setLanguage(ISO639x1Enum::_DE);
|
||||
self::assertEquals(ISO639x1Enum::_DE, $this->l11n->getLanguage());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObjectL11n
|
||||
* @group module
|
||||
*/
|
||||
public function testSerialize() : void
|
||||
{
|
||||
$this->l11n->name = 'Title';
|
||||
$this->l11n->description = 'Description';
|
||||
$this->l11n->costobject = 2;
|
||||
$this->l11n->setLanguage(ISO639x1Enum::_DE);
|
||||
|
||||
self::assertEquals(
|
||||
[
|
||||
'id' => 0,
|
||||
'name' => 'Title',
|
||||
'description' => 'Description',
|
||||
'costobject' => 2,
|
||||
'language' => ISO639x1Enum::_DE,
|
||||
],
|
||||
$this->l11n->jsonSerialize()
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
@ -21,31 +21,25 @@ use Modules\Accounting\Models\CostObject;
|
|||
*/
|
||||
class CostObjectTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObject
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
$co = new CostObject();
|
||||
private CostObject $cc;
|
||||
|
||||
self::assertEquals(0, $co->getId());
|
||||
self::assertEquals('', $co->l11n->name);
|
||||
self::assertEquals('', $co->code);
|
||||
self::assertEquals('', $co->l11n->description);
|
||||
self::assertNull($co->parent);
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->cc = new CostObject();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObject
|
||||
* @group module
|
||||
*/
|
||||
public function testNameInputOutput() : void
|
||||
public function testDefault() : void
|
||||
{
|
||||
$co = new CostObject();
|
||||
|
||||
$co->l11n->name = 'TestName';
|
||||
self::assertEquals('TestName', $co->l11n->name);
|
||||
self::assertEquals(0, $this->cc->getId());
|
||||
self::assertEquals('', $this->cc->code);
|
||||
self::assertNull($this->cc->parent);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -54,22 +48,8 @@ class CostObjectTest extends \PHPUnit\Framework\TestCase
|
|||
*/
|
||||
public function testCodeInputOutput() : void
|
||||
{
|
||||
$co = new CostObject();
|
||||
|
||||
$co->code = 'TestCode';
|
||||
self::assertEquals('TestCode', $co->code);
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\CostObject
|
||||
* @group module
|
||||
*/
|
||||
public function testDescriptionInputOutput() : void
|
||||
{
|
||||
$co = new CostObject();
|
||||
|
||||
$co->l11n->description = 'TestDescription';
|
||||
self::assertEquals('TestDescription', $co->l11n->description);
|
||||
$this->cc->code = 'TestCode';
|
||||
self::assertEquals('TestCode', $this->cc->code);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -78,9 +58,7 @@ class CostObjectTest extends \PHPUnit\Framework\TestCase
|
|||
*/
|
||||
public function testParentInputOutput() : void
|
||||
{
|
||||
$co = new CostObject();
|
||||
|
||||
$co->parent = 1;
|
||||
self::assertEquals(1, $co->parent);
|
||||
$this->cc->parent = 1;
|
||||
self::assertEquals(1, $this->cc->parent);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
42
tests/Models/CreditorTest.php
Normal file
42
tests/Models/CreditorTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\Creditor;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class CreditorTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private Creditor $creditor;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->creditor = new Creditor();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\Creditor
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
self::assertEquals(0, $this->creditor->getId());
|
||||
}
|
||||
}
|
||||
42
tests/Models/DebitorTest.php
Normal file
42
tests/Models/DebitorTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\Debitor;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
class DebitorTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
private Debitor $creditor;
|
||||
|
||||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
protected function setUp() : void
|
||||
{
|
||||
$this->creditor = new Debitor();
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\Debitor
|
||||
* @group module
|
||||
*/
|
||||
public function testDefault() : void
|
||||
{
|
||||
self::assertEquals(0, $this->creditor->getId());
|
||||
}
|
||||
}
|
||||
42
tests/Models/NullCostCenter.php
Normal file
42
tests/Models/NullCostCenter.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\NullCostCenter;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class Null extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostCenter
|
||||
* @group framework
|
||||
*/
|
||||
public function testNull() : void
|
||||
{
|
||||
self::assertInstanceOf('\Modules\Accounting\Models\CostCenter', new NullCostCenter());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostCenter
|
||||
* @group framework
|
||||
*/
|
||||
public function testId() : void
|
||||
{
|
||||
$null = new NullCostCenter(2);
|
||||
self::assertEquals(2, $null->getId());
|
||||
}
|
||||
}
|
||||
42
tests/Models/NullCostCenterTest.php
Normal file
42
tests/Models/NullCostCenterTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\NullCostCenter;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class NullCostCenterTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostCenter
|
||||
* @group framework
|
||||
*/
|
||||
public function testNull() : void
|
||||
{
|
||||
self::assertInstanceOf('\Modules\Accounting\Models\CostCenter', new NullCostCenter());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostCenter
|
||||
* @group framework
|
||||
*/
|
||||
public function testId() : void
|
||||
{
|
||||
$null = new NullCostCenter(2);
|
||||
self::assertEquals(2, $null->getId());
|
||||
}
|
||||
}
|
||||
42
tests/Models/NullCostObject.php
Normal file
42
tests/Models/NullCostObject.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\NullCostObject;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class Null extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostObject
|
||||
* @group framework
|
||||
*/
|
||||
public function testNull() : void
|
||||
{
|
||||
self::assertInstanceOf('\Modules\Accounting\Models\CostObject', new NullCostObject());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostObject
|
||||
* @group framework
|
||||
*/
|
||||
public function testId() : void
|
||||
{
|
||||
$null = new NullCostObject(2);
|
||||
self::assertEquals(2, $null->getId());
|
||||
}
|
||||
}
|
||||
42
tests/Models/NullCostObjectTest.php
Normal file
42
tests/Models/NullCostObjectTest.php
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
<?php
|
||||
/**
|
||||
* Orange Management
|
||||
*
|
||||
* PHP Version 8.0
|
||||
*
|
||||
* @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\Accounting\tests\Models;
|
||||
|
||||
use Modules\Accounting\Models\NullCostObject;
|
||||
|
||||
/**
|
||||
* @internal
|
||||
*/
|
||||
final class NullCostObjectTest extends \PHPUnit\Framework\TestCase
|
||||
{
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostObject
|
||||
* @group framework
|
||||
*/
|
||||
public function testNull() : void
|
||||
{
|
||||
self::assertInstanceOf('\Modules\Accounting\Models\CostObject', new NullCostObject());
|
||||
}
|
||||
|
||||
/**
|
||||
* @covers Modules\Accounting\Models\NullCostObject
|
||||
* @group framework
|
||||
*/
|
||||
public function testId() : void
|
||||
{
|
||||
$null = new NullCostObject(2);
|
||||
self::assertEquals(2, $null->getId());
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user