make vm test rule reusable