adding test that incorporates everything