modularizing features and testcases