/** @depends test_it_can_create_a_payment */ function test_it_can_get_a_single_payment(Payment $old) { $new = $this->api->getPayment($old->getId()); $this->assertEquals($old->toArray(), $new->toArray()); return $new; }
/** * @see https://developer.gocardless.com/pro/#payments-create-a-payment * * @param Payment $payment * * @return Payment */ public function createPayment(Payment $payment) { $response = $this->post(self::PAYMENTS, $payment->toArray()); return Payment::fromArray($response); }
/** @test */ function it_can_be_converted_an_array_for_the_api() { $payment = new Payment(); $payment->setAmount(300)->setCurrency('GBP')->setChargeDate('2014-05-19')->setDescription('My simple description')->setMandate(Mandate::fromArray(['id' => 'MD123'])); $this->assertEquals(['amount' => '300', 'currency' => 'GBP', 'charge_date' => '2014-05-19', 'description' => 'My simple description', 'links' => ['mandate' => 'MD123']], $payment->toArray()); }