refactor test
can do delete self