add modification test and modify type method