/** * @expectedException \Magento\Framework\Exception\LocalizedException * @expectedExceptionMessage Some transactions are already settled or voided and cannot be voided. */ public function testVoidInvalidState() { $orderId = 1005; $paymentObject = $this->setupPaymentObjectForVoid($orderId); $transactions = ['1' => \Braintree_Transaction::factory(['id' => '1', 'status' => \Braintree_Transaction::SETTLED])]; $this->setupTransactionIds($orderId, array_keys($transactions)); $index = 0; foreach ($transactions as $id => $transaction) { $this->braintreeTransactionMock->expects($this->at($index))->method('find')->with($id)->willReturn($transaction); $index++; } $this->model->void($paymentObject); }