package auth import ( "testing" "gitlab.crans.org/nounous/ghostream/auth/basic" "gitlab.crans.org/nounous/ghostream/auth/ldap" ) func TestLoadConfiguration(t *testing.T) { // Test to create a basic authentification backend _, err := New(&Options{ Enabled: true, Backend: "basic", Basic: basic.Options{Credentials: make(map[string]string)}, }) if err != nil { t.Errorf("Creating basic authentication backend failed: %s", err) } // Test to create a LDAP authentification backend // FIXME Should fail as there is no LDAP server _, err = New(&Options{ Enabled: true, Backend: "ldap", LDAP: ldap.Options{URI: "ldap://127.0.0.1:389", UserDn: "cn=users,dc=example,dc=com"}, }) if err == nil { t.Errorf("Creating ldap authentication backend successed mysteriously: %s", err) } // Test to bypass authentification backend backend, err := New(&Options{ Enabled: false, }) if backend != nil { t.Errorf("Failed to bypass authentication backend: %s", err) } // Test bad authentification backend _, err = New(&Options{ Enabled: true, Backend: "idonotexist", }) if err == nil { t.Error("Failed to fail authentication backend init:") } }