<?php

namespace Tests\Unit\Payroll;

use App\Services\Payroll\SalaryStructureResolver;
use Tests\TestCase;

class SalaryStructureResolverTest extends TestCase
{
    public function test_normalize_revision_components_filters_invalid_rows(): void
    {
        $resolver = new SalaryStructureResolver();

        $components = [
            ['name' => ' Basic ', 'annual' => 120000],
            ['name' => '', 'annual' => 50000],
            ['annual' => 40000],
            'invalid',
            ['name' => 'HRA', 'annual' => -10],
        ];

        $normalized = $resolver->normalizeRevisionComponents($components);

        $this->assertEquals([
            ['name' => 'Basic', 'annual' => 120000.00],
            ['name' => 'HRA', 'annual' => 0.00],
        ], $normalized);
    }
}
