mirror of
https://github.com/barryvdh/laravel-ide-helper.git
synced 2026-08-17 17:47:13 +00:00
Fix alias fake error (#1745)
* Add catch block in Alias::detectFake * Update Alias unit tests
This commit is contained in:
@@ -256,6 +256,8 @@ class Alias
|
|||||||
if ($fake !== $real) {
|
if ($fake !== $real) {
|
||||||
$this->addClass(get_class($fake));
|
$this->addClass(get_class($fake));
|
||||||
}
|
}
|
||||||
|
} catch (Throwable $throwable) {
|
||||||
|
// Ignore error
|
||||||
} finally {
|
} finally {
|
||||||
$facade::swap($real);
|
$facade::swap($real);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ use Barryvdh\LaravelIdeHelper\Macro;
|
|||||||
use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
|
use Illuminate\Database\Eloquent\Builder as EloquentBuilder;
|
||||||
use Illuminate\Database\Query\Builder;
|
use Illuminate\Database\Query\Builder;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
|
use Illuminate\Support\Facades\Facade;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @internal
|
* @internal
|
||||||
@@ -66,6 +67,22 @@ class AliasTest extends TestCase
|
|||||||
$this->assertNotNull($this->getAliasMacro($alias, EloquentBuilder::class, $macro));
|
$this->assertNotNull($this->getAliasMacro($alias, EloquentBuilder::class, $macro));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @covers ::detectFake
|
||||||
|
*/
|
||||||
|
public function testNoExceptionOnRequiredFakeParameters(): void
|
||||||
|
{
|
||||||
|
// Mock
|
||||||
|
$alias = new AliasMock();
|
||||||
|
|
||||||
|
// Prepare
|
||||||
|
$alias->setFacade(MockFacade::class);
|
||||||
|
$this->expectNotToPerformAssertions();
|
||||||
|
|
||||||
|
// Test
|
||||||
|
$alias->detectFake();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @covers ::detectTemplateNames
|
* @covers ::detectTemplateNames
|
||||||
*/
|
*/
|
||||||
@@ -118,4 +135,26 @@ class AliasMock extends Alias
|
|||||||
{
|
{
|
||||||
parent::detectMethods();
|
parent::detectMethods();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function detectFake()
|
||||||
|
{
|
||||||
|
parent::detectFake();
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setFacade(string $facade)
|
||||||
|
{
|
||||||
|
$this->facade = $facade;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class MockFacade extends Facade
|
||||||
|
{
|
||||||
|
protected static function getFacadeAccessor()
|
||||||
|
{
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
public static function fake(string $test1, $test2 = null)
|
||||||
|
{
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user