code: def test_assign_copy(self):
      now = datetime.now()
      for exp in self.get_experiments():
          with self.subTest(msg=f"For type {exp.container_type}"):
              test_values = [
                  ("num", 42),
                  ("str", "Bat'leth"),
                  ("float", 63.2),
                  ("bool", True),
                  (
                      "datetime",
                      now.replace(
                          microsecond=1000 * int(now.microsecond / 1000)
                      ),
                  ),
              ]
              for attr_name, attr_value in test_values:
                  exp[f"some/path/{attr_name}"] = attr_value
                  exp[f"copied/{attr_name}"] = exp[
                      f"some/path/{attr_name}"
                  ]
  
              exp.wait()
  
              for attr_name, attr_value in test_values:
                  self.assertEqual(
                      attr_value, exp[f"copied/{attr_name}"].fetch()
                  )
  
imports: import os
  import unittest
  from datetime import datetime
  from neptune import ANONYMOUS_API_TOKEN, Run, init_model, init_model_version, init_project, init_run
  from neptune.envs import API_TOKEN_ENV_NAME, PROJECT_ENV_NAME
  from neptune.exceptions import InactiveModelException, InactiveModelVersionException, InactiveProjectException, InactiveRunException, MetadataInconsistency, NeptuneProtectedPathException
  from neptune.metadata_containers import Model, ModelVersion, Project
  from neptune.types.atoms.float import Float
  from neptune.types.atoms.string import String
  from neptune.types.series import FloatSeries, StringSeries
label_desc: Use image node_id 13 for calling the TestExperiment obj's underlying member method code with example usage: obj.test_assign_copy() without return types