In the following code, how can you test that Player is making the correct API calls? struct Player<'a> { api: &'a Api, } impl<'a> Player<'a> { pub fn new(api: &'a Api) -> Player<'a> { Player { api } } pub fn play(&self, song: &str) { self.api.sing(song); } pub fn stop(&self) { self.api.shush(); } }