updated usecases and testcases