remove some minor bugs and add test for DataController