Skip to content

Commit e80397c

Browse files
author
Yves Ulrich Tittes
committed
fixed testing, reduced complexity
1 parent 8684a68 commit e80397c

File tree

5 files changed

+39
-72
lines changed

5 files changed

+39
-72
lines changed

LICENSE.txt

-28
This file was deleted.

copy.go

-40
This file was deleted.

go.mod

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
module xmlshift
1+
module github.com/SwissOpenEM/epu_dataset_merger
22

33
go 1.22.2

main.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ func main() {
4040
log.Println("EPU folder:", yRoot)
4141
}
4242

43-
if err := syncXMLFromYtoX(xRoot, yRoot, maxWorkers, *aFlag); err != nil {
43+
if err := SyncXMLFromYtoX(xRoot, yRoot, maxWorkers, *aFlag); err != nil {
4444
log.Fatalf("Error syncing XML files: %v", err)
4545
}
4646
}
4747

48-
func syncXMLFromYtoX(xDir, yDir string, workers int, atlas string) error {
48+
func SyncXMLFromYtoX(xDir, yDir string, workers int, atlas string) error {
4949
ctx, cancel := context.WithCancel(context.Background())
5050
defer cancel()
5151

copy_test.go renamed to main_test.go

+36-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package main
33
import (
44
"bytes"
55
"fmt"
6+
"io"
67
"io/ioutil"
78
"log"
89
"os"
@@ -29,7 +30,7 @@ func TestMyFileOperations(t *testing.T) {
2930
atlasdir := dstDir
3031
datadir := filepath.Join(dstDir, "X")
3132
epudir := filepath.Join(dstDir, "Y")
32-
if err := syncXMLFromYtoX(datadir, epudir, 8, atlasdir); err != nil {
33+
if err := SyncXMLFromYtoX(datadir, epudir, 8, atlasdir); err != nil {
3334
t.Errorf("runFileOperations failed: %v", err)
3435
}
3536
expectedFolder, err := filepath.Abs("CorrectTarget")
@@ -95,3 +96,37 @@ func compareDirectories(expectedDir, targetDir string) error {
9596
})
9697
return err
9798
}
99+
100+
// for the initial copy to tmp
101+
func copyDir(src, dst string) error {
102+
return filepath.Walk(src, func(path string, info os.FileInfo, err error) error {
103+
if err != nil {
104+
return err
105+
}
106+
107+
rel, err := filepath.Rel(src, path)
108+
if err != nil {
109+
return err
110+
}
111+
targetPath := filepath.Join(dst, rel)
112+
if info.IsDir() {
113+
return os.MkdirAll(targetPath, info.Mode())
114+
}
115+
in, err := os.Open(path)
116+
if err != nil {
117+
return err
118+
}
119+
defer in.Close()
120+
121+
out, err := os.Create(targetPath)
122+
if err != nil {
123+
return err
124+
}
125+
defer out.Close()
126+
127+
if _, err := io.Copy(out, in); err != nil {
128+
return err
129+
}
130+
return os.Chmod(targetPath, info.Mode())
131+
})
132+
}

0 commit comments

Comments
 (0)