fix: enforce group file upload governance

This commit is contained in:
richjohnrambo
2026-10-17 17:08:52 +08:00
parent 178ecff21f
commit 4c2c35b55b
3 changed files with 634 additions and 0 deletions
+17
View File
@@ -52,6 +52,23 @@ func (h *testLargeFileMediaHandler) GetIdFromUrl(string) types.Uid {
return h.fid
}
func TestCanUploadGroupFileHonorsGovernance(t *testing.T) {
settings := &types.GroupSettings{MemberUploadFiles: false}
if canUploadGroupFile(settings, types.ModeRead|types.ModeWrite) {
t.Fatal("ordinary member must not upload when group files are admin-only")
}
if !canUploadGroupFile(settings, types.ModeRead|types.ModeApprove) {
t.Fatal("group admin must be allowed to upload when group files are admin-only")
}
settings.MemberUploadFiles = true
if !canUploadGroupFile(settings, types.ModeRead|types.ModeWrite) {
t.Fatal("ordinary member must be allowed when group files are open to all")
}
if !canUploadGroupFile(nil, types.ModeRead|types.ModeWrite) {
t.Fatal("groups without business settings must retain the default allow behavior")
}
}
func TestLargeFileUploadPreflightAllowsPost(t *testing.T) {
ctrl := gomock.NewController(t)
defer ctrl.Finish()