code: def test_update(
      sync_db: "Session",
      cli_runner: CliRunner,
      cli: Typer,
      new_role_string: str,
  ):
      user = UserSyncFactory.create(
          username="username", role=UserRole.annotator
      )
  
      result = cli_runner.invoke(
          cli,
          f"database users update username --role {new_role_string}",
      )
  
      assert result.exit_code == 0
  
      # user = (await db.execute(select(User).filter_by(username="username"))).scalar_one_or_none()
      user = sync_db.query(User).filter_by(username="username").first()
      assert user.role.value == UserRole(new_role_string).value
  
file_path: argilla/tests/unit/server/cli/database/users/test_update.py
imports: from typing import TYPE_CHECKING
  import pytest
  from argilla.server.models import User, UserRole
  from click.testing import CliRunner
  from typer import Typer
  from tests.factories import UserSyncFactory
label_desc: Use image node_id 1 for calling a global function with example usage: test_update(sync_db, cli_runner, cli, new_role_string) without return types