add some more auth tests
It's going to be difficult to get 100% code coverage, but we can at least ensure that checkAuth works properly.
This commit is contained in:
parent
cc4e2ca0d9
commit
adbc1604dc
|
@ -0,0 +1,24 @@
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestCheckAuth(t *testing.T) {
|
||||||
|
authKeys := []string{
|
||||||
|
"vhvZ/PT1jeTbTAJ8JdoxddqFtebSxdVb0vwPlYO+4HM=",
|
||||||
|
"vFpNprT9wbHgwAubpvRxYCCpA2FQMAK6hFqPvAGrdZo=",
|
||||||
|
}
|
||||||
|
|
||||||
|
if r, err := checkAuth(authKeys, []byte("")); err != nil && r {
|
||||||
|
t.Fatal("Authorization passed for empty key")
|
||||||
|
}
|
||||||
|
|
||||||
|
if r, err := checkAuth(authKeys, []byte("thisisnotvalid")); err != nil && r {
|
||||||
|
t.Fatal("Authorization passed for invalid key")
|
||||||
|
}
|
||||||
|
|
||||||
|
if r, err := checkAuth(authKeys, []byte("haPVipRnGJ0QovA9nyqK")); err != nil && !r {
|
||||||
|
t.Fatal("Authorization failed for valid key")
|
||||||
|
}
|
||||||
|
}
|
|
@ -52,7 +52,7 @@ func TestIndex(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestAuthKeysRedirects(t *testing.T) {
|
func TestAuthKeys(t *testing.T) {
|
||||||
Config.authFile = "/dev/null"
|
Config.authFile = "/dev/null"
|
||||||
|
|
||||||
redirects := []string{
|
redirects := []string{
|
||||||
|
@ -77,6 +77,19 @@ func TestAuthKeysRedirects(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
w := httptest.NewRecorder()
|
||||||
|
|
||||||
|
req, err := http.NewRequest("POST", "/paste/", nil)
|
||||||
|
if err != nil {
|
||||||
|
t.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
mux.ServeHTTP(w, req)
|
||||||
|
|
||||||
|
if w.Code != 401 {
|
||||||
|
t.Fatalf("Status code is not 401, but %d", w.Code)
|
||||||
|
}
|
||||||
|
|
||||||
Config.authFile = ""
|
Config.authFile = ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue