Delegated logic to BasicAction
Added more assertions