          timedelta = MockTimedelta()
          expected = (timedelta.days * 86400.0) + float(timedelta.seconds) + (timedelta.microseconds / 1000000.0)
          assert compat.total_seconds(timedelta) == expected
  
      def test_get_remote_field_with_old_django_version(self):
          class MockField(object):
              rel = 'example_rel'
          compat.django.VERSION = (1, 8)
          assert compat.get_remote_field(MockField(), default='default_value') == 'example_rel'
          assert compat.get_remote_field(object(), default='default_value') == 'default_value'
  
      def test_get_remote_field_with_new_django_version(self):
          class MockField(object):
              remote_field = 'example_remote_field'
          compat.django.VERSION = (1, 10)
          assert compat.get_remote_field(MockField(), default='default_value') == 'example_remote_field'
          assert compat.get_remote_field(object(), default='default_value') == 'default_value'
  
      def test_set_rollback_for_transaction_in_managed_mode(self):
          class MockTransaction(object):
              called_rollback = False
              called_leave_transaction_management = False
  
 
</s> remove         self.assertTrue(is_anonymous(self.request.user))
 </s> add         self.assertTrue(self.request.user.is_anonymous) </s> remove         self.assertFalse(is_anonymous(self.request.user))
 </s> add         self.assertFalse(self.request.user.is_anonymous) </s> remove         return template_render(template, context)
 </s> add         return template.render(context) </s> remove         return template_render(template, context)
 </s> add         return template.render(context) </s> remove                 return Template("404: {{ detail }}")
 </s> add                 return engines['django'].from_string("404: {{ detail }}")
          timedelta = MockTimedelta()
          expected = (timedelta.days * 86400.0) + float(timedelta.seconds) + (timedelta.microseconds / 1000000.0)
          assert compat.total_seconds(timedelta) == expected
  














      def test_set_rollback_for_transaction_in_managed_mode(self):
          class MockTransaction(object):
              called_rollback = False
              called_leave_transaction_management = False
  
keep keep keep keep replace replace replace replace replace replace replace replace replace replace replace replace replace replace keep keep keep keep keep
 Remove Django 1.8 & 1.9 compatibility code (#5481)

* Identify code that needs to be pulled out of/removed from compat.py

* Extract modern code from get_names_and_managers in compat.py and remove compat code

* Extract modern code from is_authenticated() in compat.py and remove.

* Extract modern code from is_anonymous() in compat.py and remove

* Extract modern code from get_related_model() from compat.py and remove

* Extract modern code from value_from_object() in compat.py and remove

* Update postgres compat

JSONField now always available.

* Remove DecimalValidator compat

* Remove get_remote_field compat

* Remove template_render compat

Plus isort.

* Remove set_many compat

* Remove include compat 
tests/test_compat.py