update DataCtrl, and add test spec