          with connection.schema_editor() as editor:
              editor.add_field(LocalAuthorWithM2M, new_field)
          # Ensure there is now an m2m table there
          columns = self.column_classes(new_field.remote_field.through)
          self.assertEqual(columns['tagm2mtest_id'][0], "IntegerField")
  
          # "Alter" the field. This should not rename the DB table to itself.
          with connection.schema_editor() as editor:
              editor.alter_field(LocalAuthorWithM2M, new_field, new_field, strict=True)
  
 
</s> remove         self.assertEqual(columns['tagm2mtest_id'][0], "IntegerField")
 </s> add         self.assertEqual(columns['tagm2mtest_id'][0], connection.features.introspected_field_types['IntegerField']) </s> remove         self.assertEqual(columns['author_id'][0], "IntegerField")
 </s> add         self.assertEqual(columns['author_id'][0], connection.features.introspected_field_types['IntegerField']) </s> remove         self.assertEqual(columns['display_name'][0], "CharField")
 </s> add         self.assertEqual(columns['display_name'][0], connection.features.introspected_field_types['CharField']) </s> remove         self.assertEqual(columns['name'][0], "CharField")
 </s> add         self.assertEqual(columns['name'][0], connection.features.introspected_field_types['CharField']) </s> remove         self.assertEqual(columns['name'][0], "CharField")
 </s> add         self.assertEqual(columns['name'][0], connection.features.introspected_field_types['CharField'])
        self.assertEqual(columns['tagm2mtest_id'][0], connection.features.introspected_field_types['IntegerField'])
          with connection.schema_editor() as editor:
              editor.add_field(LocalAuthorWithM2M, new_field)
          # Ensure there is now an m2m table there
          columns = self.column_classes(new_field.remote_field.through)
        self.assertEqual(columns['tagm2mtest_id'][0], connection.features.introspected_field_types['IntegerField'])
  
          # "Alter" the field. This should not rename the DB table to itself.
          with connection.schema_editor() as editor:
              editor.alter_field(LocalAuthorWithM2M, new_field, new_field, strict=True)
  
keep keep keep keep replace keep keep keep keep keep
 Refs #31630 -- Added CharField and IntegerField to DatabaseFeatures.introspected_field_types.

CockroachDB introspects CharField as TextField and IntegerField as
BigIntegerField. 
tests/schema/tests.py