Files
threshold/internal/authtoken/testing.go
T

36 lines
1.1 KiB
Go
Raw Normal View History

2020-07-07 07:44:49 -07:00
package authtoken
import (
"context"
"testing"
2020-08-10 17:15:02 -04:00
"github.com/hashicorp/boundary/internal/auth/password"
"github.com/hashicorp/boundary/internal/db"
"github.com/hashicorp/boundary/internal/iam"
2020-07-07 07:44:49 -07:00
wrapping "github.com/hashicorp/go-kms-wrapping"
"github.com/jinzhu/gorm"
"github.com/stretchr/testify/require"
)
func TestAuthToken(t *testing.T, conn *gorm.DB, wrapper wrapping.Wrapper, scopeId string) *AuthToken {
2020-07-07 07:44:49 -07:00
t.Helper()
authMethod := password.TestAuthMethods(t, conn, scopeId, 1)[0]
2020-07-07 07:44:49 -07:00
// auth account is only used to join auth method to user.
// We don't do anything else with the auth account in the test setup.
acct := password.TestAccounts(t, conn, authMethod.GetPublicId(), 1)[0]
2020-07-07 07:44:49 -07:00
ctx := context.Background()
2020-07-07 07:44:49 -07:00
rw := db.New(conn)
iamRepo, err := iam.NewRepository(rw, rw, wrapper)
require.NoError(t, err)
u, err := iamRepo.LookupUserWithLogin(ctx, acct.GetPublicId(), iam.WithAutoVivify(true))
require.NoError(t, err)
2020-07-07 07:44:49 -07:00
repo, err := NewRepository(rw, rw, wrapper)
require.NoError(t, err)
2020-07-07 07:44:49 -07:00
at, err := repo.CreateAuthToken(ctx, u.GetPublicId(), acct.GetPublicId())
require.NoError(t, err)
2020-07-07 07:44:49 -07:00
return at
}