code: def testDetails(self):
      replay_details = self._replay.details()
      self.assertEmpty(replay_details["m_cacheHandles"])
      self.assertEqual(replay_details["m_campaignIndex"], 0)
      self.assertEqual(replay_details["m_defaultDifficulty"], 3)
      self.assertEqual(replay_details["m_description"], "")
      self.assertEqual(replay_details["m_difficulty"], "")
      self.assertFalse(replay_details["m_disableRecoverGame"])
      self.assertEqual(replay_details["m_gameSpeed"], 4)
      self.assertEqual(replay_details["m_imageFilePath"], "")
      self.assertFalse(replay_details["m_isBlizzardMap"])
      self.assertEqual(
          replay_details["m_mapFileName"],
          "Ladder2019Season1May/CyberForestLE.SC2Map",
      )
      self.assertFalse(replay_details["m_miniSave"])
      self.assertEqual(
          replay_details["m_modPaths"],
          [
              "Mods/Liberty.SC2Mod",
              "Mods/Swarm.SC2Mod",
              "Mods/Void.SC2Mod",
              "Mods/VoidMulti.SC2Mod",
          ],
      )
      # (there is more data here, just listing the most interesting bits)
      self.assertEqual(
          replay_details["m_playerList"][0]["m_name"], "Supervised"
      )
      self.assertFalse(replay_details["m_playerList"][0]["m_observe"])
      self.assertEqual(
          replay_details["m_playerList"][0]["m_race"], "Protoss"
      )
      self.assertEqual(replay_details["m_playerList"][0]["m_result"], 2)
      self.assertEqual(
          replay_details["m_playerList"][1]["m_name"],
          "temp_x1_5_beast3f_6571236_final",
      )
      self.assertFalse(replay_details["m_playerList"][1]["m_observe"])
      self.assertEqual(
          replay_details["m_playerList"][1]["m_race"], "Protoss"
      )
      self.assertEqual(replay_details["m_playerList"][1]["m_result"], 1)
      self.assertFalse(replay_details["m_restartAsTransitionMap"])
      self.assertEqual(
          replay_details["m_thumbnail"]["m_file"], "Minimap.tga"
      )
      self.assertEqual(replay_details["m_timeLocalOffset"], 0)
      self.assertEqual(replay_details["m_timeUTC"], 132772394814660570)
      self.assertEqual(replay_details["m_title"], "Cyber Forest LE")
  
file_path: pysc2/pysc2/lib/replay/sc2_replay_test.py
imports: from absl import flags
  from absl.testing import absltest
  from pysc2.lib.replay import sc2_replay
  from pysc2.lib import gfile
  from pysc2.lib import resources
label_desc: Use image node_id 2 for calling the Sc2ReplayTest obj's underlying member method code with example usage: obj.testDetails() without return types