LP#1817645: Update passwd storage test user/bshum/lp1817645-perl-test-fixes
authorBen Shum <ben@evergreener.net>
Mon, 9 Sep 2019 12:04:34 +0000 (08:04 -0400)
committerBen Shum <ben@evergreener.net>
Mon, 9 Sep 2019 12:06:57 +0000 (08:06 -0400)
This test failed because the user IDs moved whenever we add new users.
Change test to find the user we're testing first, and then use that ID
variable for all subsequent testing.

Signed-off-by: Ben Shum <ben@evergreener.net>
Open-ILS/src/sql/Pg/live_t/lp1468422_passwd_storage.pg

index 18b7cdd..562deeb 100644 (file)
 
 BEGIN;
 
+-- Find our test user ID
+SELECT actor.usr.id INTO actoruserid FROM actor.usr WHERE usrname = 'br1mclark';
+
 -- Plan the tests.
 SELECT plan(6);
 
 SELECT ok(
     (SELECT TRUE AS verify_old_pw FROM actor.usr 
-        WHERE id = 189 AND passwd = MD5('montyc1234')),
+        WHERE id = (SELECT * FROM actorusrid) AND passwd = MD5('montyc1234')),
     'Legacy password should match'
 );
 
 SELECT isnt_empty(
-    'SELECT actor.get_salt(189, ''main'')',
+    'SELECT actor.get_salt((SELECT * FROM actorusrid), ''main'')',
     'get_salt() returns a new salt'
 );
 
 SELECT isnt_empty(
-    'SELECT * FROM actor.passwd WHERE usr = 189 AND passwd_type = ''main''',
+    'SELECT * FROM actor.passwd WHERE usr = (SELECT * FROM actorusrid) AND passwd_type = ''main''',
     'get_salt() should migrate the password'
 );
 
 SELECT ok(
-    (SELECT actor.verify_passwd(189, 'main', 
-        MD5(actor.get_salt(189, 'main') || MD5('montyc1234')))),
+    (SELECT actor.verify_passwd((SELECT * FROM actorusrid), 'main', 
+        MD5(actor.get_salt((SELECT * FROM actorusrid), 'main') || MD5('montyc1234')))),
     'verify_passwd should verify migrated password'
 );
 
 SELECT ok(
     (SELECT NOT (
-        SELECT actor.verify_passwd(189, 'main', 
-            MD5(actor.get_salt(189, 'main') || MD5('BADPASSWORD'))))
+        SELECT actor.verify_passwd((SELECT * FROM actorusrid), 'main', 
+            MD5(actor.get_salt((SELECT * FROM actorusrid), 'main') || MD5('BADPASSWORD'))))
     ),
     'verify_passwd should fail with wrong password'
 );
@@ -55,12 +58,12 @@ BEGIN
     -- calls will create a new one.
     SELECT INTO new_salt actor.create_salt('main');
     PERFORM actor.set_passwd(
-        189, 'main', MD5(new_salt || MD5('bobblehead')), new_salt);
+        (SELECT * FROM actorusrid), 'main', MD5(new_salt || MD5('bobblehead')), new_salt);
 END $$;
 
 SELECT ok(
-    (SELECT actor.verify_passwd(189, 'main', 
-        MD5(actor.get_salt(189, 'main') || MD5('bobblehead')))),
+    (SELECT actor.verify_passwd((SELECT * FROM actorusrid), 'main', 
+        MD5(actor.get_salt((SELECT * FROM actorusrid), 'main') || MD5('bobblehead')))),
     'verify_passwd should verify new password'
 );