code: def test_autoclose_on_insert_implicit_returning(self, connection):
      r = connection.execute(
          # return_defaults() ensures RETURNING will be used,
          # new in 2.0 as sqlite/mariadb offer both RETURNING and
          # cursor.lastrowid
          self.tables.autoinc_pk.insert().return_defaults(),
          dict(data="some data"),
      )
      assert r._soft_closed
      assert not r.closed
      assert r.is_insert
  
      # note we are experimenting with having this be True
      # as of I8091919d45421e3f53029b8660427f844fee0228 .
      # implicit returning has fetched the row, but it still is a
      # "returns rows"
      assert r.returns_rows
  
      # and we should be able to fetchone() on it, we just get no row
      eq_(r.fetchone(), None)
  
      # and the keys, etc.
      eq_(r.keys(), ["id"])
  
imports: from decimal import Decimal
  import uuid
  from .None import testing
  from ..None import fixtures
  from ..assertions import eq_
  from ..config import requirements
  from ..schema import Column
  from ..schema import Table
  from ...None import Double
  from ...None import Float
  from ...None import Identity
  from ...None import Integer
  from ...None import literal
  from ...None import literal_column
  from ...None import Numeric
  from ...None import select
  from ...None import String
  from ...types import LargeBinary
  from ...types import UUID
  from ...types import Uuid
label_desc: Use image node_id 4 for calling the InsertBehaviorTest obj's underlying member method code with example usage: obj.test_autoclose_on_insert_implicit_returning(connection) without return types