diff --git a/pydantic/__init__.py b/pydantic/__init__.py
--- a/pydantic/__init__.py
+++ b/pydantic/__init__.py
@@ -48,6 +48,7 @@
     # network
     'AnyUrl',
     'AnyHttpUrl',
+    'FileUrl',
     'HttpUrl',
     'stricturl',
     'EmailStr',
diff --git a/pydantic/networks.py b/pydantic/networks.py
--- a/pydantic/networks.py
+++ b/pydantic/networks.py
@@ -60,6 +60,7 @@ class Parts(TypedDict, total=False):
 __all__ = [
     'AnyUrl',
     'AnyHttpUrl',
+    'FileUrl',
     'HttpUrl',
     'stricturl',
     'EmailStr',
@@ -125,6 +126,7 @@ class AnyUrl(str):
     allowed_schemes: Optional[Set[str]] = None
     tld_required: bool = False
     user_required: bool = False
+    host_required: bool = True
     hidden_parts: Set[str] = set()
 
     __slots__ = ('scheme', 'user', 'password', 'host', 'tld', 'host_type', 'port', 'path', 'query', 'fragment')
@@ -140,7 +142,7 @@ def __init__(
         scheme: str,
         user: Optional[str] = None,
         password: Optional[str] = None,
-        host: str,
+        host: Optional[str] = None,
         tld: Optional[str] = None,
         host_type: str = 'domain',
         port: Optional[str] = None,
@@ -270,7 +272,8 @@ def validate_host(cls, parts: 'Parts') -> Tuple[str, Optional[str], str, bool]:
                 break
 
         if host is None:
-            raise errors.UrlHostError()
+            if cls.host_required:
+                raise errors.UrlHostError()
         elif host_type == 'domain':
             is_international = False
             d = ascii_domain_regex().fullmatch(host)
@@ -340,6 +343,11 @@ def hide_parts(cls, original_parts: 'Parts') -> None:
             cls.hidden_parts.add('port')
 
 
+class FileUrl(AnyUrl):
+    allowed_schemes = {'file'}
+    host_required = False
+
+
 class PostgresDsn(AnyUrl):
     allowed_schemes = {
         'postgres',
@@ -356,6 +364,7 @@ class PostgresDsn(AnyUrl):
 
 class RedisDsn(AnyUrl):
     allowed_schemes = {'redis', 'rediss'}
+    host_required = False
 
     @staticmethod
     def get_default_parts(parts: 'Parts') -> 'Parts':
@@ -383,6 +392,7 @@ def stricturl(
     min_length: int = 1,
     max_length: int = 2 ** 16,
     tld_required: bool = True,
+    host_required: bool = True,
     allowed_schemes: Optional[Union[FrozenSet[str], Set[str]]] = None,
 ) -> Type[AnyUrl]:
     # use kwargs then define conf in a dict to aid with IDE type hinting
@@ -391,6 +401,7 @@ def stricturl(
         min_length=min_length,
         max_length=max_length,
         tld_required=tld_required,
+        host_required=host_required,
         allowed_schemes=allowed_schemes,
     )
     return type('UrlValue', (AnyUrl,), namespace)

I guess we could add `host_required` like `user_required`, then make it true for most of the descendant types.
diff --git a/tests/test_networks.py b/tests/test_networks.py
--- a/tests/test_networks.py
+++ b/tests/test_networks.py
@@ -4,6 +4,7 @@
     AnyUrl,
     BaseModel,
     EmailStr,
+    FileUrl,
     HttpUrl,
     KafkaDsn,
     NameEmail,
@@ -69,6 +70,7 @@
         'http://twitter.com/@handle/',
         'http://11.11.11.11.example.com/action',
         'http://abc.11.11.11.11.example.com/action',
+        'file://localhost/foo/bar',
     ],
 )
 def test_any_url_success(value):
@@ -113,6 +115,7 @@ class Model(BaseModel):
         ),
         ('http://[192.168.1.1]:8329', 'value_error.url.host', 'URL host invalid', None),
         ('http://example.com:99999', 'value_error.url.port', 'URL port invalid, port cannot exceed 65535', None),
+        ('file:///foo/bar', 'value_error.url.host', 'URL host invalid', None),
     ],
 )
 def test_any_url_invalid(value, err_type, err_msg, err_ctx):
@@ -265,7 +268,7 @@ def test_http_url_success(value):
     class Model(BaseModel):
         v: HttpUrl
 
-    assert Model(v=value).v == value, value
+    assert Model(v=value).v == value
 
 
 @pytest.mark.parametrize(
@@ -343,6 +346,17 @@ class Model(BaseModel):
     assert Model(v=input).v.tld == output
 
 
+@pytest.mark.parametrize(
+    'value',
+    ['file:///foo/bar', 'file://localhost/foo/bar' 'file:////localhost/foo/bar'],
+)
+def test_file_url_success(value):
+    class Model(BaseModel):
+        v: FileUrl
+
+    assert Model(v=value).v == value
+
+
 def test_get_default_parts():
     class MyConnectionString(AnyUrl):
         @staticmethod
@@ -403,6 +417,11 @@ class Model(BaseModel):
     error = exc_info.value.errors()[0]
     assert error == {'loc': ('a',), 'msg': 'userinfo required in URL but missing', 'type': 'value_error.url.userinfo'}
 
+    with pytest.raises(ValidationError) as exc_info:
+        Model(a='postgres://user@/foo/bar:5432/app')
+    error = exc_info.value.errors()[0]
+    assert error == {'loc': ('a',), 'msg': 'URL host invalid', 'type': 'value_error.url.host'}
+
 
 def test_redis_dsns():
     class Model(BaseModel):
@@ -464,7 +483,11 @@ def test_custom_schemes():
     class Model(BaseModel):
         v: stricturl(strip_whitespace=False, allowed_schemes={'ws', 'wss'})  # noqa: F821
 
+    class Model2(BaseModel):
+        v: stricturl(host_required=False, allowed_schemes={'foo'})  # noqa: F821
+
     assert Model(v='ws://example.org').v == 'ws://example.org'
+    assert Model2(v='foo:///foo/bar').v == 'foo:///foo/bar'
 
     with pytest.raises(ValidationError):
         Model(v='http://example.org')
@@ -472,6 +495,9 @@ class Model(BaseModel):
     with pytest.raises(ValidationError):
         Model(v='ws://example.org  ')
 
+    with pytest.raises(ValidationError):
+        Model(v='ws:///foo/bar')
+
 
 @pytest.mark.parametrize(
     'kwargs,expected',

AnyUrl doesn't accept file URLs with implicit host
# Bug

Output of `python -c "import pydantic.utils; print(pydantic.utils.version_info())"`:
```
             pydantic version: 1.5.1
            pydantic compiled: True
                 install path: /shared/conda/envs/ubide-mastr/lib/python3.6/site-packages/pydantic
               python version: 3.6.10 |Anaconda, Inc.| (default, May  8 2020, 02:54:21)  [GCC 7.3.0]
                     platform: Linux-5.4.0-48-generic-x86_64-with-debian-buster-sid
     optional deps. installed: []
```
```py
import pydantic

class MyModel(pydantic.BaseModel):
    url: pydantic.AnyUrl

MyModel(url='file:///foo/bar')
```
raises:
```
ValidationError: 1 validation error for MyModel
url
  URL host invalid (type=value_error.url.host)
```
However, `MyModel(url='file://hostname/foo/bar')`, i.e. a URL with an explicit hostname, works.

RFC 8089 [says](https://tools.ietf.org/html/rfc8089#section-2) that the hostname is optional. Hence I would expect that `AnyUrl` would accept that.

tests/test_networks.py::test_any_url_success[http://example.org] tests/test_networks.py::test_any_url_success[http://test] tests/test_networks.py::test_any_url_success[http://localhost0] tests/test_networks.py::test_any_url_success[https://example.org/whatever/next/] tests/test_networks.py::test_any_url_success[postgres://user:pass@localhost:5432/app] tests/test_networks.py::test_any_url_success[postgres://just-user@localhost:5432/app] tests/test_networks.py::test_any_url_success[postgresql+asyncpg://user:pass@localhost:5432/app] tests/test_networks.py::test_any_url_success[postgresql+pg8000://user:pass@localhost:5432/app] tests/test_networks.py::test_any_url_success[postgresql+psycopg2://postgres:postgres@localhost:5432/hatch] tests/test_networks.py::test_any_url_success[postgresql+psycopg2cffi://user:pass@localhost:5432/app] tests/test_networks.py::test_any_url_success[postgresql+py-postgresql://user:pass@localhost:5432/app] tests/test_networks.py::test_any_url_success[postgresql+pygresql://user:pass@localhost:5432/app] tests/test_networks.py::test_any_url_success[foo-bar://example.org] tests/test_networks.py::test_any_url_success[foo.bar://example.org] tests/test_networks.py::test_any_url_success[foo0bar://example.org] tests/test_networks.py::test_any_url_success[https://example.org] tests/test_networks.py::test_any_url_success[http://localhost1] tests/test_networks.py::test_any_url_success[http://localhost/] tests/test_networks.py::test_any_url_success[http://localhost:8000] tests/test_networks.py::test_any_url_success[http://localhost:8000/] tests/test_networks.py::test_any_url_success[https://foo_bar.example.com/] tests/test_networks.py::test_any_url_success[ftp://example.org] tests/test_networks.py::test_any_url_success[ftps://example.org] tests/test_networks.py::test_any_url_success[http://example.co.jp] tests/test_networks.py::test_any_url_success[http://www.example.com/a%C2%B1b] tests/test_networks.py::test_any_url_success[http://www.example.com/~username/] tests/test_networks.py::test_any_url_success[http://info.example.com?fred] tests/test_networks.py::test_any_url_success[http://info.example.com/?fred] tests/test_networks.py::test_any_url_success[http://xn--mgbh0fb.xn--kgbechtv/] tests/test_networks.py::test_any_url_success[http://example.com/blue/red%3Fand+green] tests/test_networks.py::test_any_url_success[http://www.example.com/?array%5Bkey%5D=value] tests/test_networks.py::test_any_url_success[http://xn--rsum-bpad.example.org/] tests/test_networks.py::test_any_url_success[http://123.45.67.8/] tests/test_networks.py::test_any_url_success[http://123.45.67.8:8329/] tests/test_networks.py::test_any_url_success[http://[2001:db8::ff00:42]:8329] tests/test_networks.py::test_any_url_success[http://[2001::1]:8329] tests/test_networks.py::test_any_url_success[http://[2001:db8::1]/] tests/test_networks.py::test_any_url_success[http://www.example.com:8000/foo] tests/test_networks.py::test_any_url_success[http://www.cwi.nl:80/%7Eguido/Python.html] tests/test_networks.py::test_any_url_success[https://www.python.org/\u043f\u0443\u0442\u044c] tests/test_networks.py::test_any_url_success[http://\u0430\u043d\u0434\u0440\u0435\u0439@example.com] tests/test_networks.py::test_any_url_success[https://example.com] tests/test_networks.py::test_any_url_success[https://exam_ple.com/] tests/test_networks.py::test_any_url_success[http://twitter.com/@handle/] tests/test_networks.py::test_any_url_success[http://11.11.11.11.example.com/action] tests/test_networks.py::test_any_url_success[http://abc.11.11.11.11.example.com/action] tests/test_networks.py::test_any_url_success[file://localhost/foo/bar] tests/test_networks.py::test_any_url_invalid[http:///example.com/-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[https:///example.com/-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[http://.example.com:8000/foo-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[https://example.org\\-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[https://exampl$e.org-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[http://??-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[http://.-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[http://..-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[https://example.org tests/test_networks.py::test_any_url_invalid[$https://example.org-value_error.url.scheme-invalid tests/test_networks.py::test_any_url_invalid[../icons/logo.gif-value_error.url.scheme-invalid tests/test_networks.py::test_any_url_invalid[abc-value_error.url.scheme-invalid tests/test_networks.py::test_any_url_invalid[..-value_error.url.scheme-invalid tests/test_networks.py::test_any_url_invalid[/-value_error.url.scheme-invalid tests/test_networks.py::test_any_url_invalid[+http://example.com/-value_error.url.scheme-invalid tests/test_networks.py::test_any_url_invalid[ht*tp://example.com/-value_error.url.scheme-invalid tests/test_networks.py::test_any_url_invalid[ tests/test_networks.py::test_any_url_invalid[-value_error.any_str.min_length-ensure tests/test_networks.py::test_any_url_invalid[None-type_error.none.not_allowed-none tests/test_networks.py::test_any_url_invalid[http://2001:db8::ff00:42:8329-value_error.url.extra-URL tests/test_networks.py::test_any_url_invalid[http://[192.168.1.1]:8329-value_error.url.host-URL tests/test_networks.py::test_any_url_invalid[http://example.com:99999-value_error.url.port-URL tests/test_networks.py::test_any_url_invalid[file:///foo/bar-value_error.url.host-URL tests/test_networks.py::test_any_url_parts tests/test_networks.py::test_url_repr tests/test_networks.py::test_ipv4_port tests/test_networks.py::test_ipv4_no_port tests/test_networks.py::test_ipv6_port tests/test_networks.py::test_int_domain tests/test_networks.py::test_co_uk tests/test_networks.py::test_user_no_password tests/test_networks.py::test_user_info_no_user tests/test_networks.py::test_at_in_path tests/test_networks.py::test_fragment_without_query tests/test_networks.py::test_http_url_success[http://example.org] tests/test_networks.py::test_http_url_success[http://example.org/foobar] tests/test_networks.py::test_http_url_success[http://example.org.] tests/test_networks.py::test_http_url_success[http://example.org./foobar] tests/test_networks.py::test_http_url_success[HTTP://EXAMPLE.ORG] tests/test_networks.py::test_http_url_success[https://example.org] tests/test_networks.py::test_http_url_success[https://example.org?a=1&b=2] tests/test_networks.py::test_http_url_success[https://example.org#a=3;b=3] tests/test_networks.py::test_http_url_success[https://foo_bar.example.com/] tests/test_networks.py::test_http_url_success[https://exam_ple.com/] tests/test_networks.py::test_http_url_success[https://example.xn--p1ai] tests/test_networks.py::test_http_url_success[https://example.xn--vermgensberatung-pwb] tests/test_networks.py::test_http_url_success[https://example.xn--zfr164b] tests/test_networks.py::test_http_url_invalid[ftp://example.com/-value_error.url.scheme-URL tests/test_networks.py::test_http_url_invalid[http://foobar/-value_error.url.host-URL tests/test_networks.py::test_http_url_invalid[http://localhost/-value_error.url.host-URL tests/test_networks.py::test_http_url_invalid[https://example.123-value_error.url.host-URL tests/test_networks.py::test_http_url_invalid[https://example.ab123-value_error.url.host-URL tests/test_networks.py::test_http_url_invalid[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx-value_error.any_str.max_length-ensure tests/test_networks.py::test_coerse_url[ tests/test_networks.py::test_coerse_url[https://www.example.com-https://www.example.com] tests/test_networks.py::test_coerse_url[https://www.\u0430\u0440\u0440\u04cf\u0435.com/-https://www.xn--80ak6aa92e.com/] tests/test_networks.py::test_coerse_url[https://exampl\xa3e.org-https://xn--example-gia.org] tests/test_networks.py::test_coerse_url[https://example.\u73e0\u5b9d-https://example.xn--pbt977c] tests/test_networks.py::test_coerse_url[https://example.verm\xf6gensberatung-https://example.xn--vermgensberatung-pwb] tests/test_networks.py::test_coerse_url[https://example.\u0440\u0444-https://example.xn--p1ai] tests/test_networks.py::test_coerse_url[https://exampl\xa3e.\u73e0\u5b9d-https://xn--example-gia.xn--pbt977c] tests/test_networks.py::test_parses_tld[ tests/test_networks.py::test_parses_tld[https://www.example.com-com] tests/test_networks.py::test_parses_tld[https://www.example.com?param=value-com] tests/test_networks.py::test_parses_tld[https://example.\u73e0\u5b9d-xn--pbt977c] tests/test_networks.py::test_parses_tld[https://exampl\xa3e.\u73e0\u5b9d-xn--pbt977c] tests/test_networks.py::test_parses_tld[https://example.verm\xf6gensberatung-xn--vermgensberatung-pwb] tests/test_networks.py::test_parses_tld[https://example.\u0440\u0444-xn--p1ai] tests/test_networks.py::test_parses_tld[https://example.\u0440\u0444?param=value-xn--p1ai] tests/test_networks.py::test_file_url_success[file:///foo/bar] tests/test_networks.py::test_file_url_success[file://localhost/foo/barfile:////localhost/foo/bar] tests/test_networks.py::test_get_default_parts tests/test_networks.py::test_http_urls_default_port[https://www.example.com-443] tests/test_networks.py::test_http_urls_default_port[https://www.example.com:443-443] tests/test_networks.py::test_http_urls_default_port[https://www.example.com:8089-8089] tests/test_networks.py::test_http_urls_default_port[http://www.example.com-80] tests/test_networks.py::test_http_urls_default_port[http://www.example.com:80-80] tests/test_networks.py::test_http_urls_default_port[http://www.example.com:8080-8080] tests/test_networks.py::test_postgres_dsns tests/test_networks.py::test_redis_dsns tests/test_networks.py::test_kafka_dsns tests/test_networks.py::test_custom_schemes tests/test_networks.py::test_build_url[kwargs0-ws://foo@example.net] tests/test_networks.py::test_build_url[kwargs1-ws://foo:x@example.net] tests/test_networks.py::test_build_url[kwargs2-ws://example.net?a=b#c=d] tests/test_networks.py::test_build_url[kwargs3-http://example.net:1234] tests/test_networks.py::test_son tests/test_networks.py::test_address_valid[foobar@example.com-foobar-foobar@example.com] tests/test_networks.py::test_address_valid[s@muelcolvin.com-s-s@muelcolvin.com] tests/test_networks.py::test_address_valid[Samuel tests/test_networks.py::test_address_valid[foobar tests/test_networks.py::test_address_valid[ tests/test_networks.py::test_address_valid[foo.bar@example.com tests/test_networks.py::test_address_valid[foo tests/test_networks.py::test_address_valid[FOO tests/test_networks.py::test_address_valid[<FOOBAR@example.com> tests/test_networks.py::test_address_valid[\xf1o\xf1\xf3@example.com-\xf1o\xf1\xf3-\xf1o\xf1\xf3@example.com] tests/test_networks.py::test_address_valid[\u6211\u8cb7@example.com-\u6211\u8cb7-\u6211\u8cb7@example.com] tests/test_networks.py::test_address_valid[\u7532\u6590\u9ed2\u5ddd\u65e5\u672c@example.com-\u7532\u6590\u9ed2\u5ddd\u65e5\u672c-\u7532\u6590\u9ed2\u5ddd\u65e5\u672c@example.com] tests/test_networks.py::test_address_valid[\u0447\u0435\u0431\u0443\u0440\u0430\u0448\u043a\u0430\u044f\u0449\u0438\u043a-\u0441-\u0430\u043f\u0435\u043b\u044c\u0441\u0438\u043d\u0430\u043c\u0438.\u0440\u0444@example.com-\u0447\u0435\u0431\u0443\u0440\u0430\u0448\u043a\u0430\u044f\u0449\u0438\u043a-\u0441-\u0430\u043f\u0435\u043b\u044c\u0441\u0438\u043d\u0430\u043c\u0438.\u0440\u0444-\u0447\u0435\u0431\u0443\u0440\u0430\u0448\u043a\u0430\u044f\u0449\u0438\u043a-\u0441-\u0430\u043f\u0435\u043b\u044c\u0441\u0438\u043d\u0430\u043c\u0438.\u0440\u0444@example.com] tests/test_networks.py::test_address_valid[\u0909\u0926\u093e\u0939\u0930\u0923.\u092a\u0930\u0940\u0915\u094d\u0937@domain.with.idn.tld-\u0909\u0926\u093e\u0939\u0930\u0923.\u092a\u0930\u0940\u0915\u094d\u0937-\u0909\u0926\u093e\u0939\u0930\u0923.\u092a\u0930\u0940\u0915\u094d\u0937@domain.with.idn.tld] tests/test_networks.py::test_address_valid[foo.bar@example.com-foo.bar-foo.bar@example.com] tests/test_networks.py::test_address_valid[foo.bar@exam-ple.com tests/test_networks.py::test_address_valid[\u03b9\u03c9\u03ac\u03bd\u03bd\u03b7\u03c2@\u03b5\u03b5\u03c4\u03c4.gr-\u03b9\u03c9\u03ac\u03bd\u03bd\u03b7\u03c2-\u03b9\u03c9\u03ac\u03bd\u03bd\u03b7\u03c2@\u03b5\u03b5\u03c4\u03c4.gr] tests/test_networks.py::test_address_invalid[f tests/test_networks.py::test_address_invalid[foo.bar@exam\nple.com tests/test_networks.py::test_address_invalid[foobar] tests/test_networks.py::test_address_invalid[foobar tests/test_networks.py::test_address_invalid[@example.com] tests/test_networks.py::test_address_invalid[foobar@.example.com] tests/test_networks.py::test_address_invalid[foobar@.com] tests/test_networks.py::test_address_invalid[foo tests/test_networks.py::test_address_invalid[foo@bar@example.com] tests/test_networks.py::test_address_invalid[\n@example.com] tests/test_networks.py::test_address_invalid[\r@example.com] tests/test_networks.py::test_address_invalid[\x0c@example.com] tests/test_networks.py::test_address_invalid[ tests/test_networks.py::test_address_invalid[\x1f@example.com] tests/test_networks.py::test_address_invalid["@example.com0] tests/test_networks.py::test_address_invalid["@example.com1] tests/test_networks.py::test_address_invalid[,@example.com] tests/test_networks.py::test_email_str tests/test_networks.py::test_name_email