add gtest and modify in detail