public function haveUserInDatabase($user_login, $role = 'subscriber', array $overrides = array())
{
$hasMeta = !empty($overrides['meta']);
$meta = [];
if ($hasMeta) {
$meta = $overrides['meta'];
unset($overrides['meta']);
}
$userTableData = User::generateUserTableDataFrom($user_login, $overrides);
$this->debugSection('Generated users table data', json_encode($userTableData));
$userId = $this->haveInDatabase($this->getUsersTableName(), $userTableData);
$this->haveUserCapabilitiesInDatabase($userId, $role);
$this->haveUserLevelsInDatabase($userId, $role);
if ($hasMeta) {
foreach ($meta as $key => $value) {
$this->haveUserMetaInDatabase($userId, $key, $value);
}
}
return $userId;
}