refactor unittest
blocks can be set dirty