modify test
refact some