@@ -86,9 +86,12 @@ fn test_list_users_with_table_styles() -> Result<(), Box<dyn std::error::Error>>
8686}
8787
8888#[ test]
89- fn test_create_user ( ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
90- let username = "test_create_user.1" ;
91- let password = "pa$$w0rd///8*9" ;
89+ fn test_create_user_using_sha256_for_hashing ( ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
90+ let username = "test_create_user_using_sha256_for_hashing.1" ;
91+ let password = "pa$$w0rd_9w798f__sd8f7" ;
92+
93+ run_succeeds ( [ "users" , "delete" , "--name" , username, "--idempotently" ] ) ;
94+
9295 run_succeeds ( [
9396 "users" ,
9497 "declare" ,
@@ -107,5 +110,33 @@ fn test_create_user() -> Result<(), Box<dyn std::error::Error>> {
107110
108111 run_succeeds ( [ "list" , "users" ] ) . stdout ( predicate:: str:: contains ( username) . not ( ) ) ;
109112
113+ Ok ( ( ) )
114+ }
115+
116+ #[ test]
117+ fn test_create_user_using_sha512_for_hashing ( ) -> Result < ( ) , Box < dyn std:: error:: Error > > {
118+ let username = "test_create_user_using_sha512_for_hashing.1" ;
119+ let password = "pa$$w0rd///8*9" ;
120+
121+ run_succeeds ( [ "users" , "delete" , "--name" , username, "--idempotently" ] ) ;
122+
123+ run_succeeds ( [
124+ "users" ,
125+ "declare" ,
126+ "--name" ,
127+ username,
128+ "--password" ,
129+ password,
130+ "--hashing-algorithm" ,
131+ "sha512" ,
132+ "--tags" ,
133+ "administrator" ,
134+ ] ) ;
135+ // unless the node is also configured to use SHA-512, we cannot try this
136+ // password the same way we do in the SHA-256 version, by passing in --username and --password
137+ run_succeeds ( [ "users" , "delete" , "--name" , username] ) ;
138+
139+ run_succeeds ( [ "list" , "users" ] ) . stdout ( predicate:: str:: contains ( username) . not ( ) ) ;
140+
110141 Ok ( ( ) )
111142}
0 commit comments