test properties and protocol