@ -435,12 +435,12 @@ func TestTokenRenewalJob_RunExpired(t *testing.T) {
rw := db . New ( conn )
wrapper := db . TestWrapper ( t )
kmsCache := kms . TestKms ( t , conn , wrapper )
sche := scheduler . TestScheduler ( t , conn , wrapper )
sche := scheduler . TestScheduler ( t , conn , wrapper , scheduler . WithRunJobsInterval ( time . Second ) )
_ , prj := iam . TestScopes ( t , iam . TestRepo ( t , conn , wrapper ) )
v := NewTestVaultServer ( t )
// Create 1 s token so it expires in vault before we can renew it
_ , ct := v . CreateToken ( t , WithTokenPeriod ( time . Second ) )
// Create 2 s token so it expires in vault before we can renew it
_ , ct := v . CreateToken ( t , WithTokenPeriod ( time . Second * 2 ) )
in , err := NewCredentialStore ( prj . GetPublicId ( ) , v . Addr , [ ] byte ( ct ) )
assert . NoError ( err )
@ -469,6 +469,27 @@ func TestTokenRenewalJob_RunExpired(t *testing.T) {
token := allocToken ( )
require . NoError ( rw . LookupWhere ( context . Background ( ) , & token , "store_id = ?" , [ ] interface { } { cs . GetPublicId ( ) } ) )
assert . Equal ( string ( ExpiredToken ) , token . Status )
// Updating the credential store with a token that will expire before the job scheduler can run should return an error
_ , ct = v . CreateToken ( t , WithTokenPeriod ( time . Second ) )
in , err = NewCredentialStore ( prj . GetPublicId ( ) , v . Addr , [ ] byte ( ct ) )
assert . NoError ( err )
require . NotNil ( in )
cs , _ , err = repo . UpdateCredentialStore ( context . Background ( ) , in , cs . Version + 1 , [ ] string { "Token" } )
assert . Error ( err )
assert . Nil ( cs )
// Create 1s token so it expires in vault before the job scheduler can run
_ , ct = v . CreateToken ( t , WithTokenPeriod ( time . Second ) )
in , err = NewCredentialStore ( prj . GetPublicId ( ) , v . Addr , [ ] byte ( ct ) )
assert . NoError ( err )
require . NotNil ( in )
// Should return error because token ttl expires before the run job scheduler interval
cs , err = repo . CreateCredentialStore ( context . Background ( ) , in )
require . Error ( err )
require . Nil ( cs )
}
func TestTokenRenewalJob_NextRunIn ( t * testing . T ) {