@@ -106,30 +106,38 @@ func TestIdrisUsesCurrentDirectory(t *testing.T) {
106106 currentDir , err := os .Getwd ()
107107 assert .NoError (t , err )
108108
109- exerciseDir := filepath .Join (currentDir , "hello-world" )
110- defer os .RemoveAll (exerciseDir )
111- err = os .Mkdir (exerciseDir , os .ModePerm )
109+ tmpDir , err := os .MkdirTemp ("" , "solution" )
110+ assert .NoError (t , err )
111+ defer os .RemoveAll (tmpDir )
112+
113+ em := & ExerciseMetadata {
114+ Track : "idris" ,
115+ ExerciseSlug : "bogus-exercise" ,
116+ ID : "abc" ,
117+ URL : "http://example.com" ,
118+ Handle : "alice" ,
119+ IsRequester : true ,
120+ Dir : tmpDir ,
121+ }
122+ err = em .Write (tmpDir )
112123 assert .NoError (t , err )
113124
114125 defer os .Chdir (currentDir )
115- err = os .Chdir (exerciseDir )
126+ err = os .Chdir (tmpDir )
116127 assert .NoError (t , err )
117128
118129 exercismDir := filepath .Join ("." , ".exercism" )
119- err = os .Mkdir (exercismDir , os .ModePerm )
120- assert .NoError (t , err )
121-
122130 f , err := os .Create (filepath .Join (exercismDir , "config.json" ))
123131 assert .NoError (t , err )
124132 defer f .Close ()
125133
126- _ , err = f .WriteString (`{ "files": { "solution": [ "src/HelloWorld .idr" ], "test": [ "test/src/Main.idr" ] } }` )
134+ _ , err = f .WriteString (`{ "files": { "solution": [ "src/BogusExercise .idr" ], "test": [ "test/src/Main.idr" ] } }` )
127135 assert .NoError (t , err )
128136
129137 testConfig , ok := TestConfigurations ["idris" ]
130138 assert .True (t , ok , "unexpectedly unable to find idris test config" )
131139
132140 cmd , err := testConfig .GetTestCommand ()
133141 assert .NoError (t , err )
134- assert .Equal (t , cmd , "pack test hello-world " )
142+ assert .Equal (t , cmd , "pack test bogus-exercise " )
135143}
0 commit comments