add spec hook
refactoring
run block if got failed
should not execute block
refactoring
play audio