expanded tests + todo