protocol tests