code: def test_assignment_frame(self):
      psdf = ps.from_pandas(self.pdf1)
      pdf = self.pdf1
      psser = psdf.a
      pser = pdf.a
      psdf[["a", "b"]] = self.psdf1
      pdf[["a", "b"]] = self.pdf1
  
      self.assert_eq(psdf.sort_index(), pdf.sort_index())
      self.assert_eq(psser, pser)
  
      # 'c' does not exist in `psdf`.
      psdf = ps.from_pandas(self.pdf1)
      pdf = self.pdf1
      psser = psdf.a
      pser = pdf.a
      psdf[["b", "c"]] = self.psdf1
      pdf[["b", "c"]] = self.pdf1
  
      self.assert_eq(psdf.sort_index(), pdf.sort_index())
      self.assert_eq(psser, pser)
  
      # 'c' and 'd' do not exist in `psdf`.
      psdf = ps.from_pandas(self.pdf1)
      pdf = self.pdf1
      psdf[["c", "d"]] = self.psdf1
      pdf[["c", "d"]] = self.pdf1
  
      self.assert_eq(psdf.sort_index(), pdf.sort_index())
  
      # Multi-index columns
      columns = pd.MultiIndex.from_tuples([("x", "a"), ("x", "b")])
      psdf = ps.from_pandas(self.pdf1)
      pdf = self.pdf1
      psdf.columns = columns
      pdf.columns = columns
      psdf[[("y", "c"), ("z", "d")]] = self.psdf1
      pdf[[("y", "c"), ("z", "d")]] = self.pdf1
  
      self.assert_eq(psdf.sort_index(), pdf.sort_index())
  
      psdf = ps.from_pandas(self.pdf1)
      pdf = self.pdf1
      psdf1 = ps.from_pandas(self.pdf1)
      pdf1 = self.pdf1
      psdf1.columns = columns
      pdf1.columns = columns
      psdf[["c", "d"]] = psdf1
      pdf[["c", "d"]] = pdf1
  
      self.assert_eq(psdf.sort_index(), pdf.sort_index())
  
imports: import pandas
  from pyspark import pandas
  from pyspark.pandas.config import set_option, reset_option
  from pyspark.testing.pandasutils import PandasOnSparkTestCase
  from pyspark.testing.sqlutils import SQLTestUtils
label_desc: Use image node_id 18 for calling the AssignFrameMixin obj's underlying member method code with example usage: obj.test_assignment_frame() without return types