added tests + todo