server läuft
This commit is contained in:
1 parent
c8df9d7651
commit
42f0c0accb
21 files changed
+4185
-10
No files matched your search
@@ -0,0 +1,57 @@
|
||||
package license
|
||||
|
||||
import "testing"
|
||||
|
||||
func TestAllowsDomain(t *testing.T) {
|
||||
l := License{AllowedDomains: []string{"*.firma.de", "shop.de"}}
|
||||
tests := map[string]bool{
|
||||
"shop.de": true,
|
||||
"SHOP.de": true,
|
||||
"shop.de.": true,
|
||||
"www.shop.de": false, // exakter Eintrag deckt keine Subdomains
|
||||
"a.firma.de": true,
|
||||
"a.b.firma.de": true, // Wildcard deckt alle Subdomain-Ebenen
|
||||
"firma.de": false, // Wildcard deckt nicht die Domain selbst
|
||||
"evilfirma.de": false,
|
||||
"firma.de.evil.com": false,
|
||||
"a.firma.de.evil.com": false,
|
||||
"": false,
|
||||
".firma.de": false,
|
||||
"a..firma.de": false,
|
||||
}
|
||||
for host, want := range tests {
|
||||
if got := l.AllowsDomain(host); got != want {
|
||||
t.Errorf("AllowsDomain(%q) = %v, erwartet %v", host, got, want)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestNormalizeDomainPattern(t *testing.T) {
|
||||
valid := map[string]string{
|
||||
"firma.de": "firma.de",
|
||||
"Firma.DE.": "firma.de",
|
||||
"*.firma.de": "*.firma.de",
|
||||
"xn--mnchen-3ya.de": "xn--mnchen-3ya.de",
|
||||
"a-b.c1.de": "a-b.c1.de",
|
||||
}
|
||||
for in, want := range valid {
|
||||
got, err := normalizePattern(in)
|
||||
if err != nil || got != want {
|
||||
t.Errorf("normalizePattern(%q) = %q, %v; erwartet %q", in, got, err, want)
|
||||
}
|
||||
}
|
||||
for _, bad := range []string{"", "*", "*.de", "de", "a.*.de", "**.de", "-a.de", "a-.de", "a_b.de", "münchen.de", "a..de", "foo bar.de", strings63() + "x.de"} {
|
||||
if _, err := normalizePattern(bad); err == nil {
|
||||
t.Errorf("normalizePattern(%q): erwartet Fehler", bad)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// strings63 liefert ein Label mit 63 Zeichen (Maximum); mit "x" wird es zu lang.
|
||||
func strings63() string {
|
||||
b := make([]byte, 63)
|
||||
for i := range b {
|
||||
b[i] = 'a'
|
||||
}
|
||||
return string(b)
|
||||
}
|
||||
Reference in new issue
Block a user