diff --git a/tests/frontend/iva-l1-delta.test.mjs b/tests/frontend/iva-l1-delta.test.mjs index 3db00386..1f02ec8a 100644 --- a/tests/frontend/iva-l1-delta.test.mjs +++ b/tests/frontend/iva-l1-delta.test.mjs @@ -34,7 +34,7 @@ test('missing inputs still block only the affected result; invalid fractions do const {draft}=l1DeltaFixture();book.rows[0].sourceAmount='1';const stale=calculateSales(draft,book).rows[0];assert.equal(stale.vat,null);assert.equal(stale.exact,undefined); assert.throws(()=>fractionPresentation({numerator:'1',denominator:'0'}));assert.equal(fractionPresentation(fraction(1n,21n)).approximate,true);assert.equal(fractionPresentation(decimalFraction('105')).approximate,false); }); -test('form06 is not automatically inferred from a foreign operation or old stock instructions',()=>{ - const {book}=l1DeltaFixture();const r=evaluateSalesOperation({...book.rows[0],treatment:'foreign_operation'},'MZN');assert.equal(r.field,null);assert.equal(r.vat,null);assert.match(modeloA06Correspondence,/existências/);assert.match(modeloA06Correspondence,/separe05\/06/); +test('form06 keeps the agreed residual message and does not infer a foreign operation',()=>{ + const {book}=l1DeltaFixture();const r=evaluateSalesOperation({...book.rows[0],treatment:'foreign_operation'},'MZN');assert.equal(r.field,null);assert.equal(r.vat,null);assert.match(modeloA06Correspondence,/P001 residual/);assert.match(modeloA06Correspondence,/Não há atribuição automática06/);assert.match(modeloA06Correspondence,/provas anteriores preservadas/); }); if(process.env.IVA_L1_DELTA_OUT)fs.writeFileSync(process.env.IVA_L1_DELTA_OUT,JSON.stringify(l1DeltaFixture().draft,null,2));