This fixes various test issues with Go 1.20. - Most tests rewritten to use fakefs where possible - Some tests that were already skipped, or dubious (invasive, unmaintainable, unclear what they even tested) have been removed - Some actual code rewritten to better support testing in fakefs Co-authored-by: Eric P <eric@kastelo.net>
This commit is contained in:
@@ -7,9 +7,6 @@
|
||||
package model
|
||||
|
||||
import (
|
||||
"os"
|
||||
"time"
|
||||
|
||||
"github.com/syncthing/syncthing/lib/fs"
|
||||
)
|
||||
|
||||
@@ -19,10 +16,6 @@ type fatal interface {
|
||||
Helper()
|
||||
}
|
||||
|
||||
type fatalOs struct {
|
||||
fatal
|
||||
}
|
||||
|
||||
func must(f fatal, err error) {
|
||||
f.Helper()
|
||||
if err != nil {
|
||||
@@ -36,56 +29,3 @@ func mustRemove(f fatal, err error) {
|
||||
f.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func (f *fatalOs) Chmod(name string, mode os.FileMode) {
|
||||
f.Helper()
|
||||
must(f, os.Chmod(name, mode))
|
||||
}
|
||||
|
||||
func (f *fatalOs) Chtimes(name string, atime time.Time, mtime time.Time) {
|
||||
f.Helper()
|
||||
must(f, os.Chtimes(name, atime, mtime))
|
||||
}
|
||||
|
||||
func (f *fatalOs) Create(name string) *os.File {
|
||||
f.Helper()
|
||||
file, err := os.Create(name)
|
||||
must(f, err)
|
||||
return file
|
||||
}
|
||||
|
||||
func (f *fatalOs) Mkdir(name string, perm os.FileMode) {
|
||||
f.Helper()
|
||||
must(f, os.Mkdir(name, perm))
|
||||
}
|
||||
|
||||
func (f *fatalOs) MkdirAll(name string, perm os.FileMode) {
|
||||
f.Helper()
|
||||
must(f, os.MkdirAll(name, perm))
|
||||
}
|
||||
|
||||
func (f *fatalOs) Remove(name string) {
|
||||
f.Helper()
|
||||
if err := os.Remove(name); err != nil && !os.IsNotExist(err) {
|
||||
f.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func (f *fatalOs) RemoveAll(name string) {
|
||||
f.Helper()
|
||||
if err := os.RemoveAll(name); err != nil && !os.IsNotExist(err) {
|
||||
f.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
func (f *fatalOs) Rename(oldname, newname string) {
|
||||
f.Helper()
|
||||
must(f, os.Rename(oldname, newname))
|
||||
}
|
||||
|
||||
func (f *fatalOs) Stat(name string) os.FileInfo {
|
||||
f.Helper()
|
||||
info, err := os.Stat(name)
|
||||
must(f, err)
|
||||
return info
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user