hesabixCore/hesabixCore/tests/CloseYearTest.php
2025-08-12 21:58:06 +00:00

159 lines
13 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
namespace App\Tests;
use App\Entity\Business;
use App\Entity\HesabdariTable;
use App\Entity\HesabdariRow;
use App\Entity\Year;
use App\Entity\User;
use App\Entity\Money;
use App\Service\CloseYearService;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
class CloseYearTest extends KernelTestCase
{
private CloseYearService $closeYearService;
protected function setUp(): void
{
self::bootKernel();
$this->closeYearService = static::getContainer()->get(CloseYearService::class);
}
public function testIsDebitAccount(): void
{
// تست حساب‌های دارایی (باید بدهکار باشند)
$this->assertTrue($this->closeYearService->isDebitAccount('2')); // دارایی‌های جاری
$this->assertTrue($this->closeYearService->isDebitAccount('3')); // حساب‌های دریافتی
$this->assertTrue($this->closeYearService->isDebitAccount('4')); // موجودی نقد و بانک
$this->assertTrue($this->closeYearService->isDebitAccount('5')); // حساب‌های بانکی
$this->assertTrue($this->closeYearService->isDebitAccount('10')); // دارایی‌های غیر جاری
$this->assertTrue($this->closeYearService->isDebitAccount('11')); // دارایی‌های ثابت
$this->assertTrue($this->closeYearService->isDebitAccount('12')); // زمین
$this->assertTrue($this->closeYearService->isDebitAccount('13')); // ساختمان
$this->assertTrue($this->closeYearService->isDebitAccount('14')); // وسائل نقلیه
$this->assertTrue($this->closeYearService->isDebitAccount('15')); // اثاثیه اداری
$this->assertTrue($this->closeYearService->isDebitAccount('16')); // استهلاک انباشته
$this->assertTrue($this->closeYearService->isDebitAccount('17')); // استهلاک انباشته ساختمان
$this->assertTrue($this->closeYearService->isDebitAccount('18')); // استهلاک انباشته وسائل نقلیه
$this->assertTrue($this->closeYearService->isDebitAccount('19')); // استهلاک انباشته اثاثیه اداری
// تست حساب‌های بدهی (باید بستانکار باشند)
$this->assertFalse($this->closeYearService->isDebitAccount('6')); // بدهی‌های جاری
$this->assertFalse($this->closeYearService->isDebitAccount('7')); // حساب ها و اسناد پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('8')); // اسناد پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('9')); // حساب‌های پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('22')); // سایر حساب های پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('23')); // ذخیره مالیات بر درآمد پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('24')); // مالیات بر درآمد پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('25')); // مالیات حقوق و دستمزد پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('26')); // حق بیمه پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('27')); // حقوق و دستمزد پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('28')); // عیدی و پاداش پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('29')); // سایر هزینه های پرداختنی
$this->assertFalse($this->closeYearService->isDebitAccount('30')); // پیش دریافت ها
$this->assertFalse($this->closeYearService->isDebitAccount('31')); // پیش دریافت فروش
$this->assertFalse($this->closeYearService->isDebitAccount('32')); // سایر پیش دریافت ها
$this->assertFalse($this->closeYearService->isDebitAccount('33')); // مالیات بر ارزش افزوده فروش
$this->assertFalse($this->closeYearService->isDebitAccount('34')); // بدهیهای غیر جاری
$this->assertFalse($this->closeYearService->isDebitAccount('35')); // حساب ها و اسناد پرداختنی بلندمدت
$this->assertFalse($this->closeYearService->isDebitAccount('36')); // حساب های پرداختنی بلندمدت
$this->assertFalse($this->closeYearService->isDebitAccount('37')); // اسناد پرداختنی بلندمدت
$this->assertFalse($this->closeYearService->isDebitAccount('38')); // ذخیره مزایای پایان خدمت کارکنان
$this->assertFalse($this->closeYearService->isDebitAccount('39')); // وام پرداختنی
// تست حساب‌های سرمایه (باید بستانکار باشند)
$this->assertFalse($this->closeYearService->isDebitAccount('40')); // حقوق صاحبان سهام
$this->assertFalse($this->closeYearService->isDebitAccount('41')); // سرمایه
$this->assertFalse($this->closeYearService->isDebitAccount('42')); // سرمایه اولیه
$this->assertFalse($this->closeYearService->isDebitAccount('43')); // افزایش یا کاهش سرمایه
$this->assertFalse($this->closeYearService->isDebitAccount('44')); // اندوخته قانونی
$this->assertFalse($this->closeYearService->isDebitAccount('45')); // برداشت ها
$this->assertFalse($this->closeYearService->isDebitAccount('46')); // سهم سود و زیان
$this->assertFalse($this->closeYearService->isDebitAccount('47')); // سود یا زیان انباشته
// تست حساب‌های بهای تمام شده (باید بدهکار باشند)
$this->assertTrue($this->closeYearService->isDebitAccount('48')); // بهای تمام شده کالای فروخته شده
$this->assertTrue($this->closeYearService->isDebitAccount('49')); // بهای تمام شده کالای فروخته شده
$this->assertTrue($this->closeYearService->isDebitAccount('50')); // برگشت از خرید
$this->assertTrue($this->closeYearService->isDebitAccount('51')); // تخفیفات نقدی خرید
// تست حساب‌های فروش (باید بستانکار باشند)
$this->assertFalse($this->closeYearService->isDebitAccount('52')); // فروش
$this->assertFalse($this->closeYearService->isDebitAccount('53')); // فروش کالا
$this->assertFalse($this->closeYearService->isDebitAccount('54')); // برگشت از فروش
$this->assertFalse($this->closeYearService->isDebitAccount('55')); // تخفیفات نقدی فروش
// تست حساب‌های درآمد (باید بستانکار باشند)
$this->assertFalse($this->closeYearService->isDebitAccount('56')); // درآمد
$this->assertFalse($this->closeYearService->isDebitAccount('57')); // درآمد های عملیاتی
$this->assertFalse($this->closeYearService->isDebitAccount('58')); // درآمد حاصل از فروش خدمات
$this->assertFalse($this->closeYearService->isDebitAccount('59')); // برگشت از خرید خدمات
$this->assertFalse($this->closeYearService->isDebitAccount('60')); // درآمد اضافه کالا
$this->assertFalse($this->closeYearService->isDebitAccount('61')); // درآمد حمل کالا
$this->assertFalse($this->closeYearService->isDebitAccount('62')); // درآمد های غیر عملیاتی
$this->assertFalse($this->closeYearService->isDebitAccount('63')); // درآمد حاصل از سرمایه گذاری
$this->assertFalse($this->closeYearService->isDebitAccount('64')); // درآمد سود سپرده ها
$this->assertFalse($this->closeYearService->isDebitAccount('65')); // سایر درآمد ها
$this->assertFalse($this->closeYearService->isDebitAccount('66')); // درآمد تسعیر ارز
// تست حساب‌های هزینه (باید بدهکار باشند)
$this->assertTrue($this->closeYearService->isDebitAccount('67')); // هزینه ها
$this->assertTrue($this->closeYearService->isDebitAccount('68')); // هزینه های پرسنلی
$this->assertTrue($this->closeYearService->isDebitAccount('69')); // هزینه حقوق و دستمزد
$this->assertTrue($this->closeYearService->isDebitAccount('70')); // حقوق پایه
$this->assertTrue($this->closeYearService->isDebitAccount('71')); // اضافه کار
$this->assertTrue($this->closeYearService->isDebitAccount('72')); // حق شیفت و شب کاری
$this->assertTrue($this->closeYearService->isDebitAccount('73')); // حق نوبت کاری
$this->assertTrue($this->closeYearService->isDebitAccount('74')); // حق ماموریت
$this->assertTrue($this->closeYearService->isDebitAccount('75')); // فوق العاده مسکن و خاروبار
$this->assertTrue($this->closeYearService->isDebitAccount('76')); // حق اولاد
$this->assertTrue($this->closeYearService->isDebitAccount('77')); // عیدی و پاداش
$this->assertTrue($this->closeYearService->isDebitAccount('78')); // بازخرید سنوات خدمت کارکنان
$this->assertTrue($this->closeYearService->isDebitAccount('79')); // بازخرید مرخصی
$this->assertTrue($this->closeYearService->isDebitAccount('80')); // بیمه سهم کارفرما
$this->assertTrue($this->closeYearService->isDebitAccount('81')); // بیمه بیکاری
$this->assertTrue($this->closeYearService->isDebitAccount('82')); // حقوق مزایای متفرقه
$this->assertTrue($this->closeYearService->isDebitAccount('83')); // سایر هزینه های کارکنان
$this->assertTrue($this->closeYearService->isDebitAccount('84')); // سفر و ماموریت
$this->assertTrue($this->closeYearService->isDebitAccount('85')); // ایاب و ذهاب
$this->assertTrue($this->closeYearService->isDebitAccount('86')); // سایر هزینه های کارکنان
$this->assertTrue($this->closeYearService->isDebitAccount('87')); // هزینه های عملیاتی
$this->assertTrue($this->closeYearService->isDebitAccount('88')); // خرید خدمات
$this->assertTrue($this->closeYearService->isDebitAccount('89')); // برگشت از فروش خدمات
$this->assertTrue($this->closeYearService->isDebitAccount('90')); // هزینه حمل کالا
$this->assertTrue($this->closeYearService->isDebitAccount('91')); // تعمیر و نگهداری اموال و اثاثیه
$this->assertTrue($this->closeYearService->isDebitAccount('92')); // هزینه اجاره محل
$this->assertTrue($this->closeYearService->isDebitAccount('93')); // هزینه های عمومی
$this->assertTrue($this->closeYearService->isDebitAccount('94')); // هزینه ملزومات مصرفی
$this->assertTrue($this->closeYearService->isDebitAccount('95')); // هزینه کسری و ضایعات کالا
$this->assertTrue($this->closeYearService->isDebitAccount('96')); // بیمه دارایی های ثابت
$this->assertTrue($this->closeYearService->isDebitAccount('97')); // هزینه های استهلاک
$this->assertTrue($this->closeYearService->isDebitAccount('98')); // هزینه استهلاک ساختمان
$this->assertTrue($this->closeYearService->isDebitAccount('99')); // هزینه استهلاک وسائل نقلیه
$this->assertTrue($this->closeYearService->isDebitAccount('100')); // هزینه استهلاک اثاثیه
$this->assertTrue($this->closeYearService->isDebitAccount('101')); // هزینه های بازاریابی و توزیع و فروش
$this->assertTrue($this->closeYearService->isDebitAccount('102')); // هزینه آگهی و تبلیغات
$this->assertTrue($this->closeYearService->isDebitAccount('103')); // هزینه بازاریابی و پورسانت
$this->assertTrue($this->closeYearService->isDebitAccount('104')); // سایر هزینه های توزیع و فروش
$this->assertTrue($this->closeYearService->isDebitAccount('105')); // هزینه های غیرعملیاتی
$this->assertTrue($this->closeYearService->isDebitAccount('106')); // هزینه های بانکی
$this->assertTrue($this->closeYearService->isDebitAccount('107')); // سود و کارمزد وامها
$this->assertTrue($this->closeYearService->isDebitAccount('108')); // کارمزد خدمات بانکی
$this->assertTrue($this->closeYearService->isDebitAccount('109')); // جرائم دیرکرد بانکی
$this->assertTrue($this->closeYearService->isDebitAccount('110')); // هزینه تسعیر ارز
$this->assertTrue($this->closeYearService->isDebitAccount('111')); // هزینه مطالبات سوخت شده
}
public function testRouteExists(): void
{
$client = static::createClient();
$router = static::getContainer()->get('router');
// بررسی وجود route ها
$this->assertNotNull($router->getRouteCollection()->get('app_year_close_prepare'));
$this->assertNotNull($router->getRouteCollection()->get('app_year_close_execute'));
$this->assertNotNull($router->getRouteCollection()->get('app_year_close_accounts'));
}
}