add back tests and emit removed event