implement test protocol insead of using etheruem protocol for test