use dataProvider for test cases