mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-09-30 10:33:30 +00:00
Currency code test.
This commit is contained in:
@@ -38,9 +38,11 @@ class CurrencyCode implements BinderInterface
|
|||||||
*/
|
*/
|
||||||
public static function routeBinder($value, $route)
|
public static function routeBinder($value, $route)
|
||||||
{
|
{
|
||||||
$currency = TransactionCurrency::where('code', $value)->first();
|
if (auth()->check()) {
|
||||||
if (null !== $currency) {
|
$currency = TransactionCurrency::where('code', $value)->first();
|
||||||
return $currency;
|
if (null !== $currency) {
|
||||||
|
return $currency;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
throw new NotFoundHttpException;
|
throw new NotFoundHttpException;
|
||||||
}
|
}
|
||||||
|
@@ -373,6 +373,62 @@ class BinderTest extends TestCase
|
|||||||
$this->assertEquals(Response::HTTP_NOT_FOUND, $response->getStatusCode());
|
$this->assertEquals(Response::HTTP_NOT_FOUND, $response->getStatusCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::performBinding
|
||||||
|
* @covers \FireflyIII\Support\Binder\CurrencyCode::routeBinder
|
||||||
|
*/
|
||||||
|
public function testCurrencyCode()
|
||||||
|
{
|
||||||
|
Route::middleware(Binder::class)->any(
|
||||||
|
'/_test/binder/{fromCurrencyCode}', function () {
|
||||||
|
return 'OK';
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->be($this->user());
|
||||||
|
$response = $this->get('/_test/binder/USD');
|
||||||
|
$this->assertEquals(Response::HTTP_OK, $response->getStatusCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::performBinding
|
||||||
|
* @covers \FireflyIII\Support\Binder\CurrencyCode::routeBinder
|
||||||
|
*/
|
||||||
|
public function testCurrencyCodeNotFound()
|
||||||
|
{
|
||||||
|
Route::middleware(Binder::class)->any(
|
||||||
|
'/_test/binder/{fromCurrencyCode}', function () {
|
||||||
|
return 'OK';
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->be($this->user());
|
||||||
|
$response = $this->get('/_test/binder/ABC');
|
||||||
|
$this->assertEquals(Response::HTTP_NOT_FOUND, $response->getStatusCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::performBinding
|
||||||
|
* @covers \FireflyIII\Support\Binder\CurrencyCode::routeBinder
|
||||||
|
*/
|
||||||
|
public function testCurrencyCodeNotLoggedIn()
|
||||||
|
{
|
||||||
|
Route::middleware(Binder::class)->any(
|
||||||
|
'/_test/binder/{fromCurrencyCode}', function () {
|
||||||
|
return 'OK';
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
$response = $this->get('/_test/binder/EUR');
|
||||||
|
$this->assertEquals(Response::HTTP_NOT_FOUND, $response->getStatusCode());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
||||||
@@ -448,6 +504,24 @@ class BinderTest extends TestCase
|
|||||||
$this->assertEquals(Response::HTTP_OK, $response->getStatusCode());
|
$this->assertEquals(Response::HTTP_OK, $response->getStatusCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
||||||
|
* @covers \FireflyIII\Http\Middleware\Binder::performBinding
|
||||||
|
* @covers \FireflyIII\Models\ImportJob::routeBinder
|
||||||
|
*/
|
||||||
|
public function testImportJobBadStatus()
|
||||||
|
{
|
||||||
|
Route::middleware(Binder::class)->any(
|
||||||
|
'/_test/binder/{importJob}', function () {
|
||||||
|
return 'OK';
|
||||||
|
}
|
||||||
|
);
|
||||||
|
$this->be($this->user());
|
||||||
|
$response = $this->get('/_test/binder/bad-status');
|
||||||
|
$this->assertEquals(Response::HTTP_INTERNAL_SERVER_ERROR, $response->getStatusCode());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
||||||
@@ -485,27 +559,6 @@ class BinderTest extends TestCase
|
|||||||
$this->assertEquals(Response::HTTP_NOT_FOUND, $response->getStatusCode());
|
$this->assertEquals(Response::HTTP_NOT_FOUND, $response->getStatusCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::performBinding
|
|
||||||
* @covers \FireflyIII\Models\ImportJob::routeBinder
|
|
||||||
*/
|
|
||||||
public function testImportJobBadStatus()
|
|
||||||
{
|
|
||||||
Route::middleware(Binder::class)->any(
|
|
||||||
'/_test/binder/{importJob}', function () {
|
|
||||||
return 'OK';
|
|
||||||
}
|
|
||||||
);
|
|
||||||
$this->be($this->user());
|
|
||||||
$response = $this->get('/_test/binder/bad-status');
|
|
||||||
$this->assertEquals(Response::HTTP_INTERNAL_SERVER_ERROR, $response->getStatusCode());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
* @covers \FireflyIII\Http\Middleware\Binder::handle
|
||||||
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
* @covers \FireflyIII\Http\Middleware\Binder::__construct
|
||||||
@@ -1011,6 +1064,4 @@ class BinderTest extends TestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
Reference in New Issue
Block a user