This comes from bug 17733: I manipulated guarantorid of some borrower (with your calculation ;) And the first time I ran the test, it failed: not ok 65 - TrackLastPatronActivity - 2 patrons must be deleted # Failed test 'TrackLastPatronActivity - 2 patrons must be deleted' # at t/db_dependent/Members.t line 363. # got: '1' # expected: '2' not ok 66 - TrackLastPatronActivity - 3 patrons must be deleted # Failed test 'TrackLastPatronActivity - 3 patrons must be deleted' # at t/db_dependent/Members.t line 365. # got: '2' # expected: '3' As expected, the test did not fail when running it again. So you need to remove some guarantorids here too. GetBorrowersToExpunge checks for this column.
Created attachment 58117 [details] [review] Bug 17759: Remove invalid guarantorid's in Members.t See also bug 17733. As long as we have no FK, these invalid guarantorid's can make tests fail. Adding a sql statement to clear them in the beginning of the test. Test plan: [1] Since it seems that AUTO_INC+8, +9 and +10 may fail one or two tests, we should manipulate one or two borrowers: Run this SQL query first: SELECT `AUTO_INCREMENT` FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '[your database]' and table_name='borrowers'; Now run: UPDATE borrowers SET guarantorid=[former value + 8] WHERE borrowernumber=[some existing borrowernumber] [2] Without this patch, run Members.t. Should fail two tests. [3] Apply the patch. Fetch the new AUTO_INCREMENT value and update guarantorid accordingly again for the manipulated borrower. [4] Run the test. It should not fail. Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Created attachment 58119 [details] [review] Bug 17759: Remove invalid guarantorid's in Members.t See also bug 17733. As long as we have no FK, these invalid guarantorid's can make tests fail. Adding a sql statement to clear them in the beginning of the test. Test plan: [1] Since it seems that AUTO_INC+8, +9 and +10 may fail one or two tests, we should manipulate one or two borrowers: Run this SQL query first: SELECT `AUTO_INCREMENT` FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '[your database]' and table_name='borrowers'; Now run: UPDATE borrowers SET guarantorid=[former value + 8] WHERE borrowernumber=[some existing borrowernumber] [2] Without this patch, run Members.t. Should fail two tests. [3] Apply the patch. Fetch the new AUTO_INCREMENT value and update guarantorid accordingly again for the manipulated borrower. [4] Run the test. It should not fail. Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl> Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Skipping QA, too much time spent on these tests already.
Pushed to master for 17.05, thanks Marcel!
This patch has been pushed to 16.11.x, will be in 16.11.01.