<?php

namespace Tests\Unit\Models;

use App\Models\Invoice;
use PHPUnit\Framework\TestCase;

class InvoiceTest extends TestCase
{
    public function test_model_metadata_is_converted(): void
    {
        $model = new Invoice();

        $this->assertSame('invoices', $model->getTable());
        $this->assertSame('id', $model->getKeyName());
        $this->assertSame(true, $model->timestamps);
        $this->assertSame(["parent_id", "invoice_number", "total_amount", "balance", "paid_amount", "has_discount", "issue_date", "due_date", "status", "description", "school_year", "created_at", "updated_at", "updated_by", "semester"], $model->getFillable());
    }

    public function test_model_class_loads(): void
    {
        $this->assertInstanceOf(Invoice::class, new Invoice());
    }
}
