code: def test_shape_to_str(self):
      self.assertEqual("``", shape_to_str(torch.Size([])))
      self.assertEqual("`1`", shape_to_str(torch.Size([1])))
      self.assertEqual("`1 x 2`", shape_to_str(torch.Size([1, 2])))
      self.assertEqual(
          "`1 x 2 x 3`", shape_to_str(torch.Size([1, 2, 3]))
      )
  
file_path: botorch/test/test_logging.py
imports: import logging
  import torch
  from botorch import settings
  from botorch.logging import LOG_LEVEL_DEFAULT, logger, shape_to_str
  from botorch.utils.testing import BotorchTestCase
label_desc: Use image node_id 3 for calling the TestLogging obj's underlying member method code with example usage: obj.test_shape_to_str() without return types