v4/auth/authmiddleware/validation_test.go

34 lines
819 B
Go

package authmiddleware_test
import (
"testing"
"git.sapphic.engineer/roleypoly/v4/auth/authmiddleware"
"git.sapphic.engineer/roleypoly/v4/discord/clientmock"
"git.sapphic.engineer/roleypoly/v4/types/fixtures"
"github.com/stretchr/testify/assert"
)
func TestExpiration(t *testing.T) {
dc := clientmock.NewDiscordClientMock()
app := getApp(dc)
mockUser(dc, &fixtures.User)
cookie, err := setSession(app, dc, authmiddleware.Session{
AccessToken: "access-token",
}, nil)
assert.Nil(t, err)
// Good request for now,,
err = get(t, app, cookie, "/must/user")
assert.Nil(t, err)
mockUser(dc, nil)
cookie, err = setSession(app, dc, authmiddleware.Session{
AccessToken: "access-token",
}, cookie)
assert.Nil(t, err)
err = get(t, app, cookie, "/must/user")
assert.ErrorIs(t, errUnauthorized, err)
}