61 lines
1.2 KiB
Go
61 lines
1.2 KiB
Go
package audit
|
|
|
|
import (
|
|
"bytes"
|
|
"log"
|
|
"testing"
|
|
|
|
"github.com/filebrowser/filebrowser/v2/users"
|
|
)
|
|
|
|
func TestLogFileActivity(t *testing.T) {
|
|
resultBuffer := setupTestLogger()
|
|
|
|
info := ResourceActivity{
|
|
Event: "Deletion",
|
|
ResourcePath: "/srv/test.txt",
|
|
User: &users.User{
|
|
Username: "test",
|
|
ID: 42,
|
|
},
|
|
}
|
|
|
|
LogResourceActivity(info)
|
|
|
|
result := resultBuffer.String()
|
|
expectedResult := "Deletion of resource with path /srv/test.txt by user test (42)\n"
|
|
if result != expectedResult {
|
|
t.Errorf("Log entry should be \"%v\" but is \"%v\"", expectedResult, result)
|
|
}
|
|
}
|
|
|
|
func TestLogFileActivityDirectory(t *testing.T) {
|
|
resultBuffer := setupTestLogger()
|
|
|
|
info := ResourceActivity{
|
|
Event: "Creation",
|
|
ResourcePath: "/srv/test.txt",
|
|
User: &users.User{
|
|
Username: "test",
|
|
ID: 42,
|
|
},
|
|
}
|
|
|
|
LogResourceActivity(info)
|
|
|
|
result := resultBuffer.String()
|
|
expectedResult := "Creation of resource with path /srv/test.txt by user test (42)\n"
|
|
if result != expectedResult {
|
|
t.Errorf("Log entry should be \"%v\" but is \"%v\"", expectedResult, result)
|
|
}
|
|
}
|
|
|
|
func setupTestLogger() *bytes.Buffer {
|
|
var testBuffer bytes.Buffer
|
|
testLogger := log.New(&testBuffer, "", 0)
|
|
|
|
auditLogger = testLogger
|
|
|
|
return &testBuffer
|
|
}
|