3838 envVarRx = regexp .MustCompile (`\$\w+` )
3939 umaskConditionRx = regexp .MustCompile (`\Aumask:([0-7]{3})\z` )
4040
41- filterRegex string
41+ filterRegex = flag . String ( "filter" , "" , "regex to filter test scripts" )
4242
4343 //go:embed mockcommand.tmpl
4444 mockcommandTmplText string
4848)
4949
5050func TestMain (m * testing.M ) {
51- if strings .Contains (os .Args [0 ], "cmd.test" ) {
52- flag .StringVar (& filterRegex , "filter" , "" , "regex to filter test scripts" )
53- flag .Parse ()
54- }
5551 testscript .Main (m , map [string ]func (){
5652 "chezmoi" : func () {
5753 //nolint:revive
@@ -73,10 +69,10 @@ func TestScript(t *testing.T) {
7369 if err != nil {
7470 t .Fatalf ("failed to glob files: %v" , err )
7571 }
76- if filterRegex != "" {
77- re , err := regexp .Compile (filterRegex )
72+ if * filterRegex != "" {
73+ re , err := regexp .Compile (* filterRegex )
7874 if err != nil {
79- t .Fatalf ("invalid regex %q: %v" , filterRegex , err )
75+ t .Fatalf ("invalid regex %q: %v" , * filterRegex , err )
8076 }
8177 var filteredFiles []string
8278 for _ , f := range files {
@@ -87,7 +83,7 @@ func TestScript(t *testing.T) {
8783 }
8884 files = filteredFiles
8985 if len (files ) == 0 {
90- t .Fatalf ("no test scripts match regex %q" , filterRegex )
86+ t .Fatalf ("no test scripts match regex %q" , * filterRegex )
9187 }
9288 }
9389 testscript .Run (t , testscript.Params {
@@ -606,8 +602,8 @@ func cmdMockCommand(ts *testscript.TestScript, neg bool, args []string) {
606602 value := r .RequireEnv [key ]
607603 fmt .Fprintf (& builder , " IF NOT \" %%%s%%\" == \" %s\" (\n " , key , value )
608604 fmt .Fprintf (& builder , " echo.%s=%%%s%%, expected %s\n " , key , key , value )
609- fmt .Fprintf (& builder , " exit /b 1\n " ) //nolint:revive
610- fmt .Fprintf (& builder , " )\n " ) //nolint:revive
605+ fmt .Fprint (& builder , " exit /b 1\n " )
606+ fmt .Fprint (& builder , " )\n " )
611607 }
612608 var redirect string
613609 if r .Destination == "stderr" {
@@ -636,8 +632,8 @@ func cmdMockCommand(ts *testscript.TestScript, neg bool, args []string) {
636632 value := r .RequireEnv [key ]
637633 fmt .Fprintf (& builder , " if [ \" ${%s}\" != \" %s\" ]; then\n " , key , value )
638634 fmt .Fprintf (& builder , " echo \" %s=${%s}, expected %s\" \n " , key , key , value )
639- fmt .Fprintf (& builder , " exit 1\n " ) //nolint:revive
640- fmt .Fprintf (& builder , " fi\n " ) //nolint:revive
635+ fmt .Fprint (& builder , " exit 1\n " )
636+ fmt .Fprint (& builder , " fi\n " )
641637 }
642638 var redirect string
643639 if r .Destination == "stderr" {
0 commit comments