added a test for compose()