use vows and remove some redundance assertion. Need really rewrite the tests