code: def test_collection_move_notloaded(self):
      Item, Keyword = self.classes.Item, self.classes.Keyword
  
      sess = fixture_session()
  
      k1 = Keyword(name="k1")
      i1 = Item(description="i1", keyword=k1)
      i2 = Item(description="i2")
  
      sess.add_all([i1, i2, k1])
      sess.commit()  # everything is expired
  
      i2.keyword = k1
  
      assert k1.item is i2
  
      assert i1.keyword is None
      assert i2.keyword is k1
  
imports: from sqlalchemy import testing
  from sqlalchemy import text
  from sqlalchemy.orm import attributes
  from sqlalchemy.orm import backref
  from sqlalchemy.orm import relationship
  from sqlalchemy.orm import Session
  from sqlalchemy.testing import eq_
  from sqlalchemy.testing import is_
  from sqlalchemy.testing.fixtures import fixture_session
  from test.orm import _fixtures
label_desc: Use image node_id 3 for calling the M2MScalarMoveTest obj's underlying member method code with example usage: obj.test_collection_move_notloaded() without return types