await get_input() doesn't enable testing since the caller has no access to the window or other resources. Presently the focus has been on doing window = create_window(); await window.wait(). Consider offering window = await nursery.start(create_window).