code: def test_share(self, mock_load_personas):
      test_personas = ["your persona:I live on a pirate's shoulder"]
      with testing_utils.tempdir() as data_path:
          mock_load_personas.return_value = test_personas
          kwargs = {
              "task": "convai2",
              "datapath": data_path,
              "interactive_task": True,
              "interactive_mode": True,
          }
          parser = setup_args()
          parser.set_defaults(**kwargs)
          opt = parser.parse_args([])
          agent = RepeatLabelAgent(opt)
          agent2 = agent.clone()
          world = InteractiveWorld(opt=opt, agents=[agent, agent2])
          # We should not reload personas on share
          mock_load_personas.return_value = None
          new_world = world.clone()
  
          self.assertEqual(new_world.personas_list, test_personas)
  
file_path: ParlAI/tests/tasks/convai2/test_convai2_worlds.py
imports: import unittest
  from unittest.mock import patch
  import parlai.utils.testing
  from parlai.agents.repeat_label.repeat_label import RepeatLabelAgent
  from parlai.scripts.display_data import setup_args
  from parlai.tasks.convai2.worlds import InteractiveWorld
label_desc: Use image node_id 1 for calling the TestConvAI2InteractiveWorld obj's underlying member method code with example usage: obj.test_share(mock_load_personas) without return types