emmit progress event before run the function
only todo function raise the progress event
the assertFunction Doesn't raise the progress event
two function with no timer between them considered as one opertion
task().run(function a(){}).run(function b(){}).sleep(50)
a & b considered as one progress
nothing to do if the q is not a known flag