add testing method shift_and_perform
no need to assert job result
use DirectWorker
rename shift_and_perform to perform_one
raise error upon empty queue
better formatting for readability
Merge pull request #963 from fumin/master

Add a testing method shift_and_perform to dequeue a single job