assertIsAtolable( new Payment(PaymentType::ELECTRON, 123.456789), [ 'type' => PaymentType::ELECTRON, 'sum' => 123.46, ] ); } /** * Тестирует исключение при слишком большой сумме * * @covers \AtolOnline\Entities\Payment * @covers \AtolOnline\Entities\Payment::setSum * @covers \AtolOnline\Exceptions\TooHighPaymentSumException * @return void * @throws NegativePaymentSumException */ public function testTooHighPaymentSumException(): void { $this->expectException(TooHighPaymentSumException::class); new Payment(PaymentType::ELECTRON, Constraints::MAX_COUNT_PAYMENT_SUM + 1); } /** * Тестирует исключение при отрицательной сумме * * @covers \AtolOnline\Entities\Payment * @covers \AtolOnline\Entities\Payment::setSum * @covers \AtolOnline\Exceptions\NegativePaymentSumException * @return void * @throws NegativePaymentSumException * @throws TooHighPaymentSumException */ public function testNegativePaymentSumException(): void { $this->expectException(NegativePaymentSumException::class); new Payment(PaymentType::ELECTRON, -1); } }