tests and examples