imported jwt module
This commit is contained in:
90
jwt/generator_test.go
Normal file
90
jwt/generator_test.go
Normal file
@@ -0,0 +1,90 @@
|
||||
package jwt
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/DATA-DOG/go-sqlmock"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestCreateGenerator_Success_NoDB(t *testing.T) {
|
||||
gen, err := CreateGenerator(
|
||||
15,
|
||||
60,
|
||||
5,
|
||||
"example.com",
|
||||
"secret",
|
||||
nil,
|
||||
)
|
||||
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, gen)
|
||||
}
|
||||
|
||||
func TestCreateGenerator_Success_WithDB(t *testing.T) {
|
||||
db, mock, err := sqlmock.New()
|
||||
require.NoError(t, err)
|
||||
defer db.Close()
|
||||
|
||||
gen, err := CreateGenerator(
|
||||
15,
|
||||
60,
|
||||
5,
|
||||
"example.com",
|
||||
"secret",
|
||||
db,
|
||||
)
|
||||
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, gen)
|
||||
require.NoError(t, mock.ExpectationsWereMet())
|
||||
}
|
||||
|
||||
func TestCreateGenerator_InvalidInputs(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
fn func() error
|
||||
}{
|
||||
{
|
||||
"access expiry <= 0",
|
||||
func() error {
|
||||
_, err := CreateGenerator(0, 1, 1, "h", "s", nil)
|
||||
return err
|
||||
},
|
||||
},
|
||||
{
|
||||
"refresh expiry <= 0",
|
||||
func() error {
|
||||
_, err := CreateGenerator(1, 0, 1, "h", "s", nil)
|
||||
return err
|
||||
},
|
||||
},
|
||||
{
|
||||
"fresh expiry <= 0",
|
||||
func() error {
|
||||
_, err := CreateGenerator(1, 1, 0, "h", "s", nil)
|
||||
return err
|
||||
},
|
||||
},
|
||||
{
|
||||
"empty trustedHost",
|
||||
func() error {
|
||||
_, err := CreateGenerator(1, 1, 1, "", "s", nil)
|
||||
return err
|
||||
},
|
||||
},
|
||||
{
|
||||
"empty secretKey",
|
||||
func() error {
|
||||
_, err := CreateGenerator(1, 1, 1, "h", "", nil)
|
||||
return err
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
require.Error(t, tt.fn())
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user