Task Attachments #104
|
@ -87,10 +87,13 @@ func Create(f io.ReadCloser, realname string, realsize int64, a web.Auth) (file
|
|||
|
||||
// Delete removes a file from the DB and the file system
|
||||
func (f *File) Delete() (err error) {
|
||||
_, err = x.Where("id = ?", f.ID).Delete(f)
|
||||
deleted, err := x.Where("id = ?", f.ID).Delete(f)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if deleted == 0 {
|
||||
return ErrFileDoesNotExist{FileID: f.ID}
|
||||
}
|
||||
|
||||
err = afs.Remove(f.getFileName())
|
||||
return
|
||||
|
|
|
@ -28,7 +28,17 @@ func TestCreate(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestFile_Delete(t *testing.T) {
|
||||
|
||||
t.Run("Normal", func(t *testing.T) {
|
||||
f := &File{ID: 1}
|
||||
err := f.Delete()
|
||||
assert.NoError(t, err)
|
||||
})
|
||||
t.Run("Nonexisting", func(t *testing.T) {
|
||||
f := &File{ID: 9999}
|
||||
err := f.Delete()
|
||||
assert.Error(t, err)
|
||||
assert.True(t, IsErrFileDoesNotExist(err))
|
||||
})
|
||||
}
|
||||
|
||||
func TestFile_LoadFileByID(t *testing.T) {
|
||||
|
|
Loading…
Reference in New Issue