public function testSettlementDeclineAltPayTransaction()
{
$gateway = new Braintree\Gateway(['environment' => 'development', 'merchantId' => 'altpay_merchant', 'publicKey' => 'altpay_merchant_public_key', 'privateKey' => 'altpay_merchant_private_key']);
$result = $gateway->customer()->create();
$this->assertTrue($result->success);
$customer = $result->customer;
$clientApi = new HttpClientApi($gateway->config);
$nonce = $clientApi->nonceForNewEuropeanBankAccount(["customerId" => $customer->id, "sepa_mandate" => ["locale" => "de-DE", "bic" => "DEUTDEFF", "iban" => "DE89370400440532013000", "accountHolderName" => "Bob Holder", "billingAddress" => ["streetAddress" => "123 Currywurst Way", "extendedAddress" => "Lager Suite", "firstName" => "Wilhelm", "lastName" => "Dix", "locality" => "Frankfurt", "postalCode" => "60001", "countryCodeAlpha2" => "DE", "region" => "Hesse"]]]);
$result = $gateway->transaction()->sale(['amount' => '47.00', 'merchantAccountId' => 'fake_sepa_ma', 'paymentMethodNonce' => $nonce, 'options' => ['submitForSettlement' => true]]);
$transaction = $result->transaction;
$gateway->testing()->settlementConfirm($transaction->id);
$gateway->testing()->settlementDecline($transaction->id);
$transaction = $gateway->transaction()->find($transaction->id);
$this->assertSame(Braintree\Transaction::SETTLEMENT_DECLINED, $transaction->status);
}