Assertion triggers on edge despite delay added

In reply to Azmo:

Assertions (immediate and concurrent are always evaluated on edges. The delay does not matter.
And of course you are doing an assigment in the assertion and this does not make any sense because there is no return value.