aboutsummaryrefslogtreecommitdiffhomepage
path: root/internal/acl/perms_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/acl/perms_test.go')
-rw-r--r--internal/acl/perms_test.go30
1 files changed, 30 insertions, 0 deletions
diff --git a/internal/acl/perms_test.go b/internal/acl/perms_test.go
new file mode 100644
index 00000000..3920046d
--- /dev/null
+++ b/internal/acl/perms_test.go
@@ -0,0 +1,30 @@
+package acl_test
+
+import (
+ "testing"
+
+ "hakurei.app/internal/acl"
+)
+
+func TestPerms(t *testing.T) {
+ testCases := []struct {
+ name string
+ perms acl.Perms
+ }{
+ {"---", acl.Perms{}},
+ {"r--", acl.Perms{acl.Read}},
+ {"-w-", acl.Perms{acl.Write}},
+ {"--x", acl.Perms{acl.Execute}},
+ {"rw-", acl.Perms{acl.Read, acl.Read, acl.Write}},
+ {"r-x", acl.Perms{acl.Read, acl.Execute, acl.Execute}},
+ {"-wx", acl.Perms{acl.Write, acl.Write, acl.Execute, acl.Execute}},
+ {"rwx", acl.Perms{acl.Read, acl.Write, acl.Execute}},
+ }
+ for _, tc := range testCases {
+ t.Run(tc.name, func(t *testing.T) {
+ if got := tc.perms.String(); got != tc.name {
+ t.Errorf("String: %q, want %q", got, tc.name)
+ }
+ })
+ }
+}