完成protocol

完成protocol和test