When creating automated testing in unit testing. I get this error.
My code is in unit test
function testSavingUser()
{
$user = new User();
$user->auth_key='value';
$user->password_hash='value';
$user->password_reset_token='value';
$user->email='value';
$user->status=1;
$user->first_name='value';
$user->last_name='value';
$user->image='value';
$user->role_id=1;
$user->created_date='2016-08-31 16:57:10';
$user->updated_date='2016-08-31 16:57:10';
$user->save();
$this->assertEquals('Miles Davis', $user->getFullName());
$this->tester->seeInDatabase('users', ['name' => 'Miles', 'surname' => 'Davis']);
}
This my config file
$config = yii\helpers\ArrayHelper::merge(
require(__DIR__ . '/web.php'),
//require(__DIR__ . '/main-local.php'),
[
'id' => 'app-tests',
'components' => [
'db' => [
'class' => 'yii\db\Connection',
'dsn' => 'mysql:host=' . getenv('DB_HOST'). ';dbname=' . getenv('DB_NAME'),
'username' => getenv('DB_USER'),
'password' => getenv('DB_PASSWORD'),
'charset' => 'utf8',
],
]
]
);
return $config;
In functional.suite.yml
class_name: FunctionalTester
modules:
enabled:
- Yii2:
configFile: 'config/test.php'
When trying to execute my test with codecept run it shows error like this
[yii\db\Exception] SQLSTATE[28000] [1045] Access denied for user 'something'@'localhost' (using password: NO)