160 - Testing Callbacks with Invokables

This commit is contained in:
Adam Wathan
2018-01-22 15:09:16 -05:00
parent 9174e9d0c3
commit 079d442ded
2 changed files with 27 additions and 2 deletions

View File

@@ -14,12 +14,12 @@ class ForceStripeAccount
* @param \Closure $next * @param \Closure $next
* @return mixed * @return mixed
*/ */
public function handle($request, Closure $next) public function handle($request, $next)
{ {
if (Auth::user()->stripe_account_id === null) { if (Auth::user()->stripe_account_id === null) {
return redirect()->route('backstage.stripe-connect.connect'); return redirect()->route('backstage.stripe-connect.connect');
} }
// return $next($request); return $next($request);
} }
} }

View File

@@ -30,4 +30,29 @@ class ForceStripeAccountTest extends TestCase
$this->assertInstanceOf(RedirectResponse::class, $response); $this->assertInstanceOf(RedirectResponse::class, $response);
$this->assertEquals(route('backstage.stripe-connect.connect'), $response->getTargetUrl()); $this->assertEquals(route('backstage.stripe-connect.connect'), $response->getTargetUrl());
} }
/** @test */
function users_with_a_stripe_account_can_continue()
{
$this->be(factory(User::class)->create([
'stripe_account_id' => 'test_stripe_account_1234',
]));
$request = new Request;
$next = new class {
public $called = false;
public function __invoke($request)
{
$this->called = true;
return $request;
}
};
$middleware = new ForceStripeAccount;
$response = $middleware->handle($request, $next);
$this->assertTrue($next->called);
$this->assertSame($response, $request);
}
} }