def get_geoip_country(self, request):
     try:
         GeoIP2 = get_geoip_module()
         if GeoIP2 is None:
             return False
         return GeoIP2().country_code(get_client_ip(request)).lower()
     except:
         return False
def test_get_client_ip_custom_get_client_ip_used(rf):
    assert get_client_ip(rf.get('/')) == '123.123.123.123'
def test_get_client_ip_custom_get_client_ip_function_does_not_exist(rf):
    with pytest.raises(ImportError):
        get_client_ip(rf.get('/'))
def test_get_client_ip_with_x_forwarded_for(rf):
    request = rf.get('/',
                     HTTP_X_FORWARDED_FOR='173.231.235.87',
                     REMOTE_ADDR='10.0.23.24')
    assert get_client_ip(request) == '173.231.235.87'
def test_get_client_ip_with_remote_addr(rf):
    request = rf.get('/', REMOTE_ADDR='173.231.235.87')
    assert get_client_ip(request) == '173.231.235.87'