setRawAttributes([ 'payment_purpose' => $purpose, ], true); // Amount-Casts umgehen und die Value-Objects direkt setzen. $participant->amount = new Amount($amount, ' Euro'); $participant->amount_paid = new Amount($amountPaid, ' Euro'); return $participant; } public function test_cash_summary_empty_when_no_text_configured(): void { $module = new UndefinedPaymentModule(); $summary = $module->registrationSummary(new RegistrationSummaryRequest( $this->participant(50.0, 0.0), [], )); $this->assertFalse($summary->hasPaymentInformation); } public function test_cash_module_requires_payment_information_option(): void { $module = new UndefinedPaymentModule(); $this->assertSame(['payment_information'], $module->requiredOptionKeys()); $this->assertFalse($module->isConfigurationComplete([])); $this->assertTrue($module->isConfigurationComplete(['payment_information' => '

Text

'])); } }