# README
go-assistant
installation
cd cmd/ && go install
command
generator
- generate unittest from a function
goass -cmd=generate -opt=unittest -file=<FILE_PATH> -func=<FUNC_NAME> -mode=<TYPE_MODE>
- generate unittest from a generic function specified type args
goass -cmd=generate -opt=unittest -file=<FILE_REL_PATH> -func=<FUNC_NAME> -types=<TYPE_ARG>[,TYPE_ARG] -mode=<TYPE_MODE>
- generate benchmark from a function
goass -cmd=generate -opt=benchmark -file=<FILE_PATH> -func=<FUNC_NAME> -mode=<TYPE_MODE>
- generate benchmark from a generic function specified type args
goass -cmd=generate -opt=benchmark -file=<FILE_REL_PATH> -func=<FUNC_NAME> -types=<TYPE_ARG>[,TYPE_ARG] -mode=<TYPE_MODE>
- generate unittest from a struct method
goass -cmd=generate -opt=unittest -file=<FILE_PATH> -func=<FUNC_NAME> -struct=<STRUCT_NAME> -mode=<TYPE_MODE>
- generate unittest from a generic struct method specified type args
goass -cmd=generate -opt=unittest -file=<FILE_REL_PATH> -func=<FUNC_NAME> -struct=<STRUCT_NAME> -types=<TYPE_ARG>[,TYPE_ARG] -mode=<TYPE_MODE>
- generate benchmark from a struct method
goass -cmd=generate -opt=benchmark -file=<FILE_PATH> -func=<FUNC_NAME> -struct=<STRUCT_NAME> -mode=<TYPE_MODE>
- generate benchmark from a generic struct method specified type args
goass -cmd=generate -opt=benchmark -file=<FILE_REL_PATH> -func=<FUNC_NAME> -struct=<STRUCT_NAME> -types=<TYPE_ARG>[,TYPE_ARG] -mode=<TYPE_MODE>
- generate unittest from a interface method
goass -cmd=generate -opt=unittest -file=<FILE_PATH> -func=<FUNC_NAME> -interface=<INTERFACE_NAME> -mode=<TYPE_MODE>
- generate unittest from a generic interface method specified type args
goass -cmd=generate -opt=unittest -file=<FILE_REL_PATH> -func=<FUNC_NAME> -interface=<INTERFACE_NAME> -types=<TYPE_ARG>[,TYPE_ARG] -mode=<TYPE_MODE>
- generate benchmark from a interface method
goass -cmd=generate -opt=benchmark -file=<FILE_PATH> -func=<FUNC_NAME> -interface=<INTERFACE_NAME> -mode=<TYPE_MODE>
- generate benchmark from a generic interface method specified type args
goass -cmd=generate -opt=benchmark -file=<FILE_REL_PATH> -func=<FUNC_NAME> -interface=<INTERFACE_NAME> -types=<TYPE_ARG>[,TYPE_ARG] -mode=<TYPE_MODE>
- generate go AST
goass -cmd=generate -opt=ast -file=<FILE_REL_PATH> -meta=<META> -ident=<IDENT>[,IDENT]
META supports: func, method, struct, interface note that method whichever from struct or interface needs two ident as struct/interface name and method name IMPORTANT: not support type constraints