mirror of
				https://github.com/invoiceninja/invoiceninja.git
				synced 2025-10-31 14:07:32 -04:00 
			
		
		
		
	Gateways: Stripe: SOFORT: Paying with SOFORT
This commit is contained in:
		
							parent
							
								
									9be5de3e89
								
							
						
					
					
						commit
						274703b3b0
					
				
							
								
								
									
										67
									
								
								tests/Browser/ClientPortal/Gateways/Stripe/SofortTest.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								tests/Browser/ClientPortal/Gateways/Stripe/SofortTest.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,67 @@ | ||||
| <?php | ||||
| 
 | ||||
| /** | ||||
|  * Invoice Ninja (https://invoiceninja.com). | ||||
|  * | ||||
|  * @link https://github.com/invoiceninja/invoiceninja source repository | ||||
|  * | ||||
|  * @copyright Copyright (c) 2021. Invoice Ninja LLC (https://invoiceninja.com) | ||||
|  * | ||||
|  * @license https://www.elastic.co/licensing/elastic-license | ||||
|  */ | ||||
| 
 | ||||
| namespace Tests\Browser\ClientPortal\Gateways\Stripe; | ||||
| 
 | ||||
| use App\DataMapper\FeesAndLimits; | ||||
| use App\Models\Client; | ||||
| use App\Models\CompanyGateway; | ||||
| use App\Models\GatewayType; | ||||
| use Laravel\Dusk\Browser; | ||||
| use Tests\Browser\Pages\ClientPortal\Login; | ||||
| use Tests\DuskTestCase; | ||||
| 
 | ||||
| class SofortTest extends DuskTestCase | ||||
| { | ||||
|     protected function setUp(): void | ||||
|     { | ||||
|         parent::setUp(); | ||||
| 
 | ||||
|         foreach (static::$browsers as $browser) { | ||||
|             $browser->driver->manage()->deleteAllCookies(); | ||||
|         } | ||||
| 
 | ||||
|         $this->browse(function (Browser $browser) { | ||||
|             $browser | ||||
|                 ->visit(new Login()) | ||||
|                 ->auth(); | ||||
|         }); | ||||
| 
 | ||||
|         // Enable SOFORT.
 | ||||
|         $cg = CompanyGateway::where('gateway_key', 'd14dd26a37cecc30fdd65700bfb55b23')->firstOrFail(); | ||||
|         $fees_and_limits = $cg->fees_and_limits; | ||||
|         $fees_and_limits->{GatewayType::SOFORT} = new FeesAndLimits(); | ||||
|         $cg->fees_and_limits = $fees_and_limits; | ||||
|         $cg->save(); | ||||
| 
 | ||||
|         // SOFORT required ['AUT', 'BEL', 'DEU', 'ITA', 'NLD', 'ESP'] to be billing country.
 | ||||
|         // Setting country  to DEU (276).
 | ||||
|         $client = Client::first(); | ||||
|         $client->country_id = 276; | ||||
|         $client->save(); | ||||
|     } | ||||
| 
 | ||||
|     public function testPayingWithSofort() | ||||
|     { | ||||
|         $this->browse(function (Browser $browser) { | ||||
|             $browser | ||||
|                 ->visitRoute('client.invoices.index') | ||||
|                 ->click('@pay-now') | ||||
|                 ->press('Pay Now') | ||||
|                 ->clickLink('Sofort') | ||||
|                 ->press('Pay Now') | ||||
|                 ->waitForText('Sofort test payment page', 120) | ||||
|                 ->press('.common-Button.common-Button--default') | ||||
|                 ->waitForText('Details of the payment', 60); | ||||
|       }); | ||||
|     } | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user