Protocol testing

the same with this