add testcase for #1
refactor trigger
ignore exception in callback list #1