modify dependecy and add tests