File: asyncio_dns.py

package info (click to toggle)
python-eventlet 0.40.1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 3,200 kB
  • sloc: python: 25,101; sh: 78; makefile: 31
file content (29 lines) | stat: -rw-r--r-- 594 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import eventlet
eventlet.monkey_patch()

import asyncio
import socket

from eventlet.asyncio import spawn_for_awaitable
from eventlet.support import greendns


def fail(*args, **kwargs):
    raise RuntimeError("This should not have been called")


greendns.resolve = fail
greendns.resolver.query = fail


async def lookups():
    loop = asyncio.get_running_loop()
    await loop.getaddrinfo("127.0.0.1", 80)
    await loop.getnameinfo(("127.0.0.1", 80), socket.NI_NUMERICHOST)
    return "ok"


if not spawn_for_awaitable(lookups()).wait() == "ok":
    raise RuntimeError("ono")

print("pass")