On Laravel 8, I've created a facade and registered the service provider in Laravel. In my Pest test I've added \App\Facades\Twilio::shouldReceive('AsAdmin');
.
Running the test results in:
PHP Fatal error: Cannot redeclare Mockery_2_App_Facades_Twilio::shouldReceive() in /app/vendor/mockery/mockery/library/Mockery/Loader/EvalLoader.php(34) : eval()'d code on line 1032
There's nothing special in my Facade:
class Twilio extends Facade
{
protected Client $adminCli;
protected PendingRequest $http;
protected static function getFacadeAccessor()
{
return 'twilio'; // same as bind method in service provider
}
public function AsAdmin()
{
$username = config('twilio.account_sid');
$password = config('twilio.auth_token');
$this->adminCli = new Client($username, $password);
$this->http = Http::withBasicAuth($username, $password);
return $this;
}
Any guidance would be much appreciated.