code: def test_warning_once(self, capsys):
      logger.warning_once("#")
      logger.warning_once("#")
      logger.warning_once("@")
      captured = capsys.readouterr()
      assert captured.out.count("#") == 1
      assert captured.out.count("@") == 1
  
imports: import os
  import tempfile
  import datetime
  from pathlib import Path
  import logging
  import re
  import pytest
  from fastNLP.envs.env import FASTNLP_LAUNCH_TIME
  from fastNLP.envs.distributed import rank_zero_rm
  from fastNLP.core.log.logger import logger
  from tests.helpers.utils import magic_argv_env_context, recover_logger
label_desc: Use image node_id 6 for calling the TestLogger obj's underlying member method code with example usage: obj.test_warning_once(capsys) without return types