@@ -71,7 +71,7 @@ export class ValkeyContainer extends GenericContainer {
7171 ] ) ;
7272 }
7373
74- return new StartedValkeyContainer ( await super . start ( ) , this . password ) ;
74+ return new StartedValkeyContainer ( await super . start ( ) , this . password , this . username ) ;
7575 }
7676
7777 private async importInitialData ( container : StartedTestContainer ) {
@@ -85,7 +85,8 @@ export class ValkeyContainer extends GenericContainer {
8585export class StartedValkeyContainer extends AbstractStartedContainer {
8686 constructor (
8787 startedTestContainer : StartedTestContainer ,
88- private readonly password ?: string
88+ private readonly password ?: string ,
89+ private readonly username ?: string ,
8990 ) {
9091 super ( startedTestContainer ) ;
9192 }
@@ -98,18 +99,27 @@ export class StartedValkeyContainer extends AbstractStartedContainer {
9899 return this . password ? this . password . toString ( ) : "" ;
99100 }
100101
102+ public getUsername ( ) : string {
103+ return this . username ? this . username . toString ( ) : "" ;
104+ }
105+
101106 public getConnectionUrl ( ) : string {
102107 const url = new URL ( "" , "redis://" ) ;
103108 url . hostname = this . getHost ( ) ;
104109 url . port = this . getPort ( ) . toString ( ) ;
105110 url . password = this . getPassword ( ) ;
111+ url . username = this . getUsername ( ) ;
106112 return url . toString ( ) ;
107113 }
108114
109115 public async executeCliCmd ( cmd : string , additionalFlags : string [ ] = [ ] ) : Promise < string > {
116+ const authCommand = this . password ? [
117+ `--pass ${ this . password } ` ,
118+ ...( this . username ? [ `--user ${ this . username } ` ] : [ ] )
119+ ] : [ ] ;
110120 const result = await this . startedTestContainer . exec ( [
111121 "redis-cli" ,
112- ...( this . password != "" ? [ `-a ${ this . password } ` ] : [ ] ) ,
122+ ...authCommand ,
113123 `${ cmd } ` ,
114124 ...additionalFlags ,
115125 ] ) ;
0 commit comments