def METHOD_NAME(self, privilege, on, grant_target_name, user_name, node=None):
    """Check that user is only able to execute `SYSTEM STOP REPLICATION QUEUES` when they have privilege.
    """
    exitcode, message = errors.not_enough_privileges(name=user_name)
    table_name = f"table_name_{getuid()}"
    if node is None:
        node = self.context.node
    on = on.replace("table", f"{table_name}")
    with table(node, table_name, "ReplicatedMergeTree-sharded_cluster"):
        with Scenario("SYSTEM STOP REPLICATION QUEUES without privilege"):
            with When("I grant the user NONE privilege"):
                node.query(f"GRANT NONE TO {grant_target_name}")
            with And("I grant the user USAGE privilege"):
                node.query(f"GRANT USAGE ON *.* TO {grant_target_name}")
            with Then("I check the user can't stop sends"):
                node.query(f"SYSTEM STOP REPLICATION QUEUES {table_name}", settings = [("user", f"{user_name}")],
                    exitcode=exitcode, message=message)
        with Scenario("SYSTEM STOP REPLICATION QUEUES with privilege"):
            with When(f"I grant {privilege} on the table"):
                node.query(f"GRANT {privilege} ON {on} TO {grant_target_name}")
            with Then("I check the user can start sends"):
                node.query(f"SYSTEM STOP REPLICATION QUEUES {table_name}", settings = [("user", f"{user_name}")])
        with Scenario("SYSTEM STOP REPLICATION QUEUES with revoked privilege"):
            with When(f"I grant {privilege} on the table"):
                node.query(f"GRANT {privilege} ON {on} TO {grant_target_name}")
            with And(f"I revoke {privilege} on the table"):
                node.query(f"REVOKE {privilege} ON {on} FROM {grant_target_name}")
            with Then("I check the user can't start sends"):
                node.query(f"SYSTEM STOP REPLICATION QUEUES {table_name}", settings = [("user", f"{user_name}")],
                    exitcode=exitcode, message=message)