class_docstr: Resuming from a foreach join should work.
  Check that data changes in all downstream steps after resume.
code: def inner(self):
      self.stack = [
          list(map(str, getattr(self, frame.var)))
          for frame in self._foreach_stack
      ]
      self.var = ["".join(str(x[2]) for x in self.foreach_stack())]
  
file_path: metaflow/test/core/tests/resume_foreach_join.py
imports: from metaflow_test import MetaflowTest, ExpectationFailed, steps
label_desc: Use image node_id 3 for calling the ResumeForeachJoinTest obj's underlying member method code with example usage: obj.inner() without return types