Files
pos_heidiver/tests/Unit/ConfeccionRecepcionesTest.php
T
2026-01-19 20:05:07 -05:00

39 lines
1.2 KiB
PHP

<?php
namespace Tests\Unit;
use Tests\TestCase;
use Illuminate\Foundation\Testing\RefreshDatabase;
use App\Models\Confeccion;
use App\Models\Recepcion;
use App\Models\Proveedor;
use App\Models\OrdenProduccion;
class ConfeccionRecepcionesTest extends TestCase
{
use RefreshDatabase;
/** @test */
public function recibido_total_and_faltantes_are_calculated_from_recepciones()
{
$proveedor = Proveedor::factory()->create(['categoria' => 'talleres']);
$op = OrdenProduccion::factory()->create(['cantidad_total' => 100]);
$conf = Confeccion::create([
'proveedor_id' => $proveedor->id,
'orden_produccion_id' => $op->id,
'cantidad_enviada' => 100,
]);
// Crear recepciones 40 y 40 con defectos en la segunda (10)
Recepcion::create(['referencia_type' => Confeccion::class,'referencia_id' => $conf->id,'cantidad' => 40]);
Recepcion::create(['referencia_type' => Confeccion::class,'referencia_id' => $conf->id,'cantidad' => 40, 'prendas_defectuosas' => 10]);
$conf->refresh();
// recibido efectivo: 40 + (40 - 10) = 70
$this->assertEquals(70, $conf->recibido_total);
$this->assertEquals(30, $conf->faltantes);
}
}