assertIsAtolable($vat, [ 'type' => $vat->getType(), 'sum' => $vat->getCalculated(), ]); $this->assertSame($type, $vat->getType()); $this->assertSame($sum, $vat->getSum()); } /** * Тестирует расчёт суммы НДС от суммы 100+20р и 100-20р * * @dataProvider providerVatsAdd * @param VatType $type Тип НДС * @param float $after_plus Результат после +20р * @param float $after_minus Результат после -20р * @covers \AtolOnline\Entities\Vat::addSum * @covers \AtolOnline\Entities\Vat::getCalculated */ public function testVatAdd(VatType $type, float $after_plus, float $after_minus) { $vat = (new Vat($type, 100))->addSum(20); // 120р $this->assertSame($after_plus, $vat->getCalculated()); $vat->addSum(-20); // 100р $this->assertSame($after_minus, $vat->getCalculated()); } }