@@ -99,10 +99,11 @@ func generateOneDir(t *testing.T, overwriteExpected bool, conf testSpec, srcType
9999 t .Logf ("Testing in a temporary directory %s" , genDir )
100100 assert .NoErr (t , os .MkdirAll (genDir , 0700 ))
101101
102- if conf .helper != nil {
103- if errTrans := conf .helper .prepareTempDir (t , conf , srcDir , genDir , tempRoot ); errTrans != nil {
104- errorTransformer = errTrans
105- }
102+ // copy the source dir, including the relative paths (to make sure expected errors contain same paths)
103+ assert .NoErr (t , copyDirectory (srcDir , genDir , 0700 , 0600 ))
104+
105+ if errTrans := conf .helper .prepareTempDir (t , conf , srcDir , genDir , tempRoot ); errTrans != nil {
106+ errorTransformer = errTrans
106107 }
107108
108109 // Go generator updates generator go.mod when loading files (adds the missing objectbox-go import).
@@ -137,7 +138,7 @@ func generateOneDir(t *testing.T, overwriteExpected bool, conf testSpec, srcType
137138 }
138139
139140 // verify the result can be built
140- if ! testing .Short () && conf . helper != nil {
141+ if ! testing .Short () {
141142 // override the defer to prevent cleanup before compilation is actually run
142143 var cleanupAfterCompile = cleanup
143144 cleanup = func () {}
@@ -195,11 +196,14 @@ func assertSameFile(t *testing.T, file string, expectedFile string, overwriteExp
195196func generateAllFiles (t * testing.T , overwriteExpected bool , conf testSpec , srcDir , expDir , genDir string , modelInfoFile string , errorTransformer func (error ) error ) int {
196197 // remove generated files during development (they might be syntactically wrong)
197198 if overwriteExpected {
198- files , err := filepath .Glob (filepath .Join (genDir , "*" + conf .generatedExt ))
199- assert .NoErr (t , err )
199+ for _ , generatedExt := range conf .generatedExt {
200+ files , err := filepath .Glob (filepath .Join (genDir , "*" + generatedExt ))
201+ assert .NoErr (t , err )
200202
201- for _ , file := range files {
202- assert .NoErr (t , os .Remove (file ))
203+ for _ , file := range files {
204+ t .Logf ("removing previously generated %s" , file )
205+ assert .NoErr (t , os .Remove (file ))
206+ }
203207 }
204208 }
205209
@@ -208,6 +212,8 @@ func generateAllFiles(t *testing.T, overwriteExpected bool, conf testSpec, srcDi
208212 // process all source files in the directory
209213 inputFiles , err := filepath .Glob (filepath .Join (srcDir , "*" + conf .sourceExt ))
210214 assert .NoErr (t , err )
215+ assert .True (t , len (inputFiles ) > 0 )
216+
211217 for _ , sourceFile := range inputFiles {
212218 // skip generated files & "expected results" files
213219 if conf .generator .IsGeneratedFile (sourceFile ) ||
0 commit comments