snipe-it/tests/Feature/Livewire/CategoryEditFormTest.php

106 lines
3.5 KiB
PHP
Raw Normal View History

2023-08-02 12:58:07 -07:00
<?php
namespace Tests\Feature\Livewire;
2024-05-29 12:07:48 -07:00
use App\Livewire\CategoryEditForm;
2023-08-02 12:58:07 -07:00
use Livewire\Livewire;
use Tests\TestCase;
class CategoryEditFormTest extends TestCase
{
public function testTheComponentCanRender()
{
Livewire::test(CategoryEditForm::class)->assertStatus(200);
}
public function testSendEmailCheckboxIsCheckedOnLoadWhenSendEmailIsExistingSetting()
{
Livewire::test(CategoryEditForm::class, [
2023-08-02 16:06:59 -07:00
'sendCheckInEmail' => true,
'eulaText' => '',
'useDefaultEula' => false,
2023-08-02 16:06:59 -07:00
])->assertSet('sendCheckInEmail', true);
}
public function testSendEmailCheckboxIsCheckedOnLoadWhenCategoryEulaSet()
{
Livewire::test(CategoryEditForm::class, [
2023-08-02 16:06:59 -07:00
'sendCheckInEmail' => false,
'eulaText' => 'Some Content',
'useDefaultEula' => false,
2023-08-02 16:06:59 -07:00
])->assertSet('sendCheckInEmail', true);
}
public function testSendEmailCheckboxIsCheckedOnLoadWhenUsingDefaultEula()
{
Livewire::test(CategoryEditForm::class, [
2023-08-02 16:06:59 -07:00
'sendCheckInEmail' => false,
'eulaText' => '',
'useDefaultEula' => true,
2023-08-02 16:06:59 -07:00
])->assertSet('sendCheckInEmail', true);
}
public function testSendEmailCheckBoxIsUncheckedOnLoadWhenSendEmailIsFalseNoCategoryEulaSetAndNotUsingDefaultEula()
{
Livewire::test(CategoryEditForm::class, [
2023-08-02 16:06:59 -07:00
'sendCheckInEmail' => false,
'eulaText' => '',
'useDefaultEula' => false,
2023-08-02 16:06:59 -07:00
])->assertSet('sendCheckInEmail', false);
}
public function testSendEmailCheckboxIsCheckedWhenCategoryEulaEntered()
{
Livewire::test(CategoryEditForm::class, [
2023-08-02 16:06:59 -07:00
'sendCheckInEmail' => false,
'useDefaultEula' => false,
2023-08-02 16:06:59 -07:00
])->assertSet('sendCheckInEmail', false)
->set('eulaText', 'Some Content')
2023-08-02 16:06:59 -07:00
->assertSet('sendCheckInEmail', true);
}
public function testSendEmailCheckboxCheckedAndDisabledAndEulaTextDisabledWhenUseDefaultEulaSelected()
{
Livewire::test(CategoryEditForm::class, [
2023-08-02 16:06:59 -07:00
'sendCheckInEmail' => false,
'useDefaultEula' => false,
2023-08-02 16:06:59 -07:00
])->assertSet('sendCheckInEmail', false)
->set('useDefaultEula', true)
->assertSet('sendCheckInEmail', true)
->assertSet('eulaTextDisabled', true)
->assertSet('sendCheckInEmailDisabled', true);
}
public function testSendEmailCheckboxEnabledAndSetToOriginalValueWhenNoCategoryEulaAndNotUsingGlobalEula()
{
Livewire::test(CategoryEditForm::class, [
'eulaText' => 'Some Content',
'sendCheckInEmail' => false,
'useDefaultEula' => true,
])
->set('useDefaultEula', false)
->set('eulaText', '')
->assertSet('sendCheckInEmail', false)
->assertSet('sendCheckInEmailDisabled', false);
Livewire::test(CategoryEditForm::class, [
'eulaText' => 'Some Content',
'sendCheckInEmail' => true,
'useDefaultEula' => true,
])
->set('useDefaultEula', false)
->set('eulaText', '')
->assertSet('sendCheckInEmail', true)
->assertSet('sendCheckInEmailDisabled', false);
}
public function testEulaFieldEnabledOnLoadWhenNotUsingDefaultEula()
{
Livewire::test(CategoryEditForm::class, [
'sendCheckInEmail' => false,
'eulaText' => '',
'useDefaultEula' => false,
])->assertSet('eulaTextDisabled', false);
}
2023-08-02 12:58:07 -07:00
}