add test for callback asynchronicity
make dns error callback async