code: def test_async_mode(self):
      with self.call_init(mode="async", flush_period=0.5) as exp:
          exp["some/variable"] = 13
          exp["copied/variable"] = exp["some/variable"]
          with self.assertRaises(MetadataInconsistency):
              exp["some/variable"].fetch()
          exp.wait()
          self.assertEqual(13, exp["some/variable"].fetch())
          self.assertEqual(13, exp["copied/variable"].fetch())
  
          exp_dir = f"{exp.container_type.value}__{exp._id}"
          self.assertIn(exp_dir, os.listdir(".neptune/async"))
          execution_dir = os.listdir(f".neptune/async/{exp_dir}")[0]
          self.assertIn(
              "data-1.log",
              os.listdir(f".neptune/async/{exp_dir}/{execution_dir}"),
          )
  
imports: import contextlib
  import os
  import time
  import unittest
  from abc import abstractmethod
  from io import StringIO
  from unittest.mock import Mock
  from neptune.exceptions import MetadataInconsistency, MissingFieldException, NeptuneOfflineModeFetchException, NeptuneSynchronizationAlreadyStoppedException, TypeDoesNotSupportAttributeException
label_desc: Use image node_id 6 for calling the AbstractExperimentTestMixin obj's underlying member method code with example usage: obj.test_async_mode() without return types