imansyaefulloh's avatar

Laravel 5.3 Integration test error when using sqlite, works fine using mysql

Hi,

i'm trying to learn testing using diferent database, when i'm running phpunit and DB_CONNECTION set to mysql everyting works fine, but when i'm change the DB_CONNECTION to sqlite several test got an error authorization like this,

Caused by
Illuminate\Auth\Access\AuthorizationException: This action is unauthorized. in /home/vagrant/Sites/laravel/l53_todo_tdd/vendor/laravel/framework/src/Illuminate/Auth/Access/HandlesAuthorization.php:28

0 likes
2 replies
imansyaefulloh's avatar

@spencerfeng I already solved this issue, this occurs because i'm forgot to include DatabaseMigrations Traits on Integration test.

use Illuminate\Foundation\Testing\DatabaseMigrations;

class ExampleTest extends TestCase
{
    use DatabaseMigrations;
}

and this is my phpunit settings

<php>
        <env name="APP_ENV" value="testing"/>
        <env name="CACHE_DRIVER" value="array"/>
        <env name="SESSION_DRIVER" value="array"/>
        <env name="QUEUE_DRIVER" value="sync"/>
        <env name="DB_CONNECTION" value="sqlite"/>
        <env name="DB_DATABASE" value=":memory:"/>
</php>

hope this whill help

Please or to participate in this conversation.