Rebrand project as Skald
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"testing"
|
||||
|
||||
"git.stormux.org/storm/skald/group"
|
||||
)
|
||||
|
||||
func TestMakePassword(t *testing.T) {
|
||||
doit := func(pw group.Password) {
|
||||
ok, _ := pw.Match("secret")
|
||||
if !ok {
|
||||
t.Errorf("%v didn't match", pw)
|
||||
}
|
||||
ok, _ = pw.Match("notsecret")
|
||||
if ok {
|
||||
t.Errorf("%v did match", pw)
|
||||
}
|
||||
}
|
||||
pw, err := makePassword("secret", "pbkdf2", 4096, 32, 8, 0)
|
||||
if err != nil {
|
||||
t.Errorf("PBKDF2: %v", err)
|
||||
}
|
||||
doit(pw)
|
||||
|
||||
pw, err = makePassword("secret", "bcrypt", 0, 0, 0, 10)
|
||||
if err != nil {
|
||||
t.Errorf("bcrypt: %v", err)
|
||||
}
|
||||
doit(pw)
|
||||
|
||||
pw, err = makePassword("", "wildcard", 0, 0, 0, 0)
|
||||
if err != nil {
|
||||
t.Errorf("Wildcard: %v", err)
|
||||
}
|
||||
ok, _ := pw.Match("notsecretatall")
|
||||
if !ok {
|
||||
t.Errorf("Wildcard didn't match")
|
||||
}
|
||||
}
|
||||
|
||||
func TestFormatPermissions(t *testing.T) {
|
||||
tests := []struct{ j, v, p string }{
|
||||
{`"op"`, "op", "[cmopt]"},
|
||||
{`"present"`, "present", "[mp]"},
|
||||
{`"observe"`, "observe", "[]"},
|
||||
{`"admin"`, "admin", "[a]"},
|
||||
{`["message", "present", "token"]`, "[mpt]", "[mpt]"},
|
||||
{`[]`, "[]", "[]"},
|
||||
}
|
||||
for _, test := range tests {
|
||||
var p group.Permissions
|
||||
err := json.Unmarshal([]byte(test.j), &p)
|
||||
if err != nil {
|
||||
t.Errorf("Unmarshal %#v: %v", test.j, err)
|
||||
continue
|
||||
}
|
||||
v := formatPermissions(p)
|
||||
if v != test.v {
|
||||
t.Errorf("Expected %v, got %v", test.v, v)
|
||||
}
|
||||
pp := formatRawPermissions(p.Permissions(nil))
|
||||
if pp != test.p {
|
||||
t.Errorf("Expected %v, got %v", test.p, pp)
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user