public function haveUserInDatabase($user_login, $role = 'subscriber', array $overrides = [])
    {
        $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->grabUsersTableName(), $userTableData);

        $this->haveUserCapabilitiesInDatabase($userId, $role);
        $this->haveUserLevelsInDatabase($userId, $role);

        if ($hasMeta) {
            foreach ($meta as $key => $value) {
                $this->haveUserMetaInDatabase($userId, $key, $value);
            }
        }

        return $userId;
    }