feat(tenant): add master toggle for ticket refunds
This commit is contained in:
@@ -18,12 +18,14 @@ class TenantRefundConfigurationTest extends TestCase
|
||||
{
|
||||
$tenant = $this->createTenant('refund-defaults');
|
||||
|
||||
$this->assertFalse($tenant->allow_ticket_refund);
|
||||
$this->assertFalse($tenant->allow_ticket_total_refund);
|
||||
$this->assertFalse($tenant->allow_ticket_partial_refund);
|
||||
$this->assertSame('0.00', $tenant->ticket_partial_refund_percentage);
|
||||
|
||||
$this->getJson("/api/tenants/{$tenant->codigo}")
|
||||
->assertOk()
|
||||
->assertJsonPath('data.allow_ticket_refund', false)
|
||||
->assertJsonPath('data.allow_ticket_total_refund', false)
|
||||
->assertJsonPath('data.allow_ticket_partial_refund', false)
|
||||
->assertJsonPath('data.ticket_partial_refund_percentage', '0.00');
|
||||
@@ -34,17 +36,20 @@ class TenantRefundConfigurationTest extends TestCase
|
||||
$tenant = $this->createTenant('refund-update');
|
||||
|
||||
$this->putJson("/api/tenants/{$tenant->codigo}", [
|
||||
'allow_ticket_refund' => true,
|
||||
'allow_ticket_total_refund' => true,
|
||||
'allow_ticket_partial_refund' => true,
|
||||
'ticket_partial_refund_percentage' => 25.50,
|
||||
])
|
||||
->assertOk()
|
||||
->assertJsonPath('data.allow_ticket_refund', true)
|
||||
->assertJsonPath('data.allow_ticket_total_refund', true)
|
||||
->assertJsonPath('data.allow_ticket_partial_refund', true)
|
||||
->assertJsonPath('data.ticket_partial_refund_percentage', '25.50');
|
||||
|
||||
$this->assertDatabaseHas('tenants', [
|
||||
'id' => $tenant->id,
|
||||
'allow_ticket_refund' => true,
|
||||
'allow_ticket_total_refund' => true,
|
||||
'allow_ticket_partial_refund' => true,
|
||||
'ticket_partial_refund_percentage' => 25.50,
|
||||
@@ -64,6 +69,7 @@ class TenantRefundConfigurationTest extends TestCase
|
||||
public function test_tenant_allow_refund_logic(): void
|
||||
{
|
||||
$tenant = new Tenant([
|
||||
'allow_ticket_refund' => false,
|
||||
'allow_ticket_total_refund' => false,
|
||||
'allow_ticket_partial_refund' => false,
|
||||
'ticket_partial_refund_percentage' => 0,
|
||||
@@ -83,6 +89,10 @@ class TenantRefundConfigurationTest extends TestCase
|
||||
|
||||
// Partial refund enabled and percentage is set
|
||||
$tenant->ticket_partial_refund_percentage = 25.50;
|
||||
$this->assertFalse($tenant->allow_refund());
|
||||
$this->assertFalse($tenant->allow_partial_refund());
|
||||
|
||||
$tenant->allow_ticket_refund = true;
|
||||
$this->assertTrue($tenant->allow_refund());
|
||||
$this->assertTrue($tenant->allowRefund());
|
||||
$this->assertTrue($tenant->allow_refund);
|
||||
@@ -101,6 +111,13 @@ class TenantRefundConfigurationTest extends TestCase
|
||||
$tenant->ticket_partial_refund_percentage = 50.00;
|
||||
$this->assertTrue($tenant->allow_refund());
|
||||
$this->assertTrue($tenant->allow_partial_refund());
|
||||
|
||||
$tenant->allow_ticket_refund = false;
|
||||
$this->assertFalse($tenant->allow_refund());
|
||||
$this->assertFalse($tenant->allow_partial_refund());
|
||||
$this->assertTrue($tenant->allow_ticket_total_refund);
|
||||
$this->assertTrue($tenant->allow_ticket_partial_refund);
|
||||
$this->assertSame('50.00', $tenant->ticket_partial_refund_percentage);
|
||||
}
|
||||
|
||||
private function createTenant(string $code): Tenant
|
||||
|
||||
Reference in New Issue
Block a user