protocol testing