more tests
throw exception if depend is not defined.
check cycle depends