driver->manage()->deleteAllCookies(); } $this->browse(function (Browser $browser) { $browser ->visit(new Login()) ->auth(); }); } public function testAddingPaymentMethodShouldntBePossible() { $this->browse(function (Browser $browser) { $browser ->visitRoute('client.payment_methods.index') ->press('Add Payment Method') ->clickLink('Credit Card') ->assertSee('Checkout.com can be can saved as payment method for future use, once you complete your first transaction. Don\'t forget to check "Store credit card details" during payment process.'); }); } public function testPayWithNewCard() { $this->browse(function (Browser $browser) { $browser ->visitRoute('client.invoices.index') ->click('@pay-now') ->press('Pay Now') ->clickLink('Credit Card') ->withinFrame('iframe', function (Browser $browser) { $browser ->type('cardnumber', '4242424242424242') ->type('exp-date', '04/22') ->type('cvc', '100'); }) ->press('#pay-button') ->waitForText('Details of the payment', 60); }); } public function testPayWithNewCardAndSaveForFutureUse() { $this->browse(function (Browser $browser) { $browser ->visitRoute('client.invoices.index') ->click('@pay-now') ->press('Pay Now') ->clickLink('Credit Card') ->withinFrame('iframe', function (Browser $browser) { $browser ->type('cardnumber', '4242424242424242') ->type('exp-date', '04/22') ->type('cvc', '100'); }) ->radio('#proxy_is_default', true) ->press('#pay-button') ->waitForText('Details of the payment', 60) ->visitRoute('client.payment_methods.index') ->clickLink('View') ->assertSee('4242'); }); } }