add spec expectations and logging system