Changeset: 4c7e8ae71892 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/4c7e8ae71892 Modified Files: sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.SQL.py sql/test/BugTracker-2019/Tests/grant-select-column.Bug-6765.py sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py sql/test/Users/Tests/changeSchemaUser.SQL.py sql/test/Users/Tests/userCallFunction.SQL.py sql/test/transactions/Tests/transaction_isolation.SQL.py sql/test/transactions/Tests/transaction_isolation2.SQL.py sql/test/transactions/Tests/transaction_isolation3.SQL.py sql/test/transactions/Tests/transaction_isolation4.SQL.py sql/test/transactions/Tests/transaction_isolation5.SQL.py Branch: Jan2022 Log Message:
Assert query succeeded before asserting result set diffs (truncated from 607 to 300 lines): diff --git a/sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.SQL.py b/sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.SQL.py --- a/sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.SQL.py +++ b/sql/test/BugTracker-2018/Tests/grant-role-not-idempotent.Bug-6660.SQL.py @@ -16,20 +16,20 @@ with SQLTestCase() as mdb: tc.connect(username="mydummyuser", password="mydummyuser") tc.execute("set role sysadmin;").assertFailed(err_code="42000", err_message="Role (sysadmin) missing") - mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertDataResultMatch([(0,)]) + mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertSucceeded().assertDataResultMatch([(0,)]) mdb.execute("grant sysadmin to mydummyuser;").assertSucceeded() - mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertDataResultMatch([(1,)]) + mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertSucceeded().assertDataResultMatch([(1,)]) tc.execute("set role sysadmin;").assertSucceeded() mdb.execute("grant sysadmin to mydummyuser;").assertFailed(err_code="M1M05", err_message="GRANT: User 'mydummyuser' already has ROLE 'sysadmin'") - mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertDataResultMatch([(1,)]) + mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertSucceeded().assertDataResultMatch([(1,)]) mdb.execute("revoke sysadmin from mydummyuser;").assertSucceeded() - mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertDataResultMatch([(0,)]) + mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertSucceeded().assertDataResultMatch([(0,)]) mdb.execute("revoke sysadmin from mydummyuser;").assertFailed(err_code="01006", err_message="REVOKE: User 'mydummyuser' does not have ROLE 'sysadmin'") - mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertDataResultMatch([(0,)]) + mdb.execute("select count(*) from user_role where login_id in (select id from sys.auths where name = 'mydummyuser');").assertSucceeded().assertDataResultMatch([(0,)]) # clean up mdb.execute("drop user mydummyuser;").assertSucceeded() diff --git a/sql/test/BugTracker-2019/Tests/grant-select-column.Bug-6765.py b/sql/test/BugTracker-2019/Tests/grant-select-column.Bug-6765.py --- a/sql/test/BugTracker-2019/Tests/grant-select-column.Bug-6765.py +++ b/sql/test/BugTracker-2019/Tests/grant-select-column.Bug-6765.py @@ -27,24 +27,24 @@ with SQLTestCase() as mdb: # 'myuser' can SELECT test(id) mdb.execute("GRANT SELECT (id) ON test TO myuser;").assertSucceeded() - tc.execute("select id from test").assertDataResultMatch([(1,),(2,)]) + tc.execute("select id from test").assertSucceeded().assertDataResultMatch([(1,),(2,)]) tc.execute("select name from test").assertFailed(err_code='42000', err_message="SELECT: identifier 'name' unknown") tc.execute("select address from test").assertFailed(err_code='42000', err_message="SELECT: identifier 'address' unknown") - tc.execute("select * from test").assertDataResultMatch([(1,),(2,)]) + tc.execute("select * from test").assertSucceeded().assertDataResultMatch([(1,),(2,)]) # 'myuser' can SELECT test(id, address) mdb.execute("GRANT SELECT (address) ON test TO myuser;").assertSucceeded() - tc.execute("select id from test").assertDataResultMatch([(1,),(2,)]) + tc.execute("select id from test").assertSucceeded().assertDataResultMatch([(1,),(2,)]) tc.execute("select name from test").assertFailed(err_code='42000', err_message="SELECT: identifier 'name' unknown") - tc.execute("select address from test").assertDataResultMatch([('planet',),('earth',)]) - tc.execute("select * from test").assertDataResultMatch([(1,'planet'),(2,'earth')]) + tc.execute("select address from test").assertSucceeded().assertDataResultMatch([('planet',),('earth',)]) + tc.execute("select * from test").assertSucceeded().assertDataResultMatch([(1,'planet'),(2,'earth')]) # 'myuser' can only SELECT test(address) mdb.execute("REVOKE SELECT (id) ON test FROM myuser;").assertSucceeded() tc.execute("select id from test").assertFailed(err_code='42000', err_message="SELECT: identifier 'id' unknown") tc.execute("select name from test").assertFailed(err_code='42000', err_message="SELECT: identifier 'name' unknown") - tc.execute("select address from test").assertDataResultMatch([('planet',),('earth',)]) - tc.execute("select * from test").assertDataResultMatch([('planet',),('earth',)]) + tc.execute("select address from test").assertSucceeded().assertDataResultMatch([('planet',),('earth',)]) + tc.execute("select * from test").assertSucceeded().assertDataResultMatch([('planet',),('earth',)]) # clean up mdb.execute("SET SCHEMA sys;").assertSucceeded() diff --git a/sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py b/sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py --- a/sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py +++ b/sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py @@ -14,8 +14,8 @@ with SQLTestCase() as mdb1: mdb1.execute('commit;').assertSucceeded() mdb2.execute('commit;').assertFailed(err_code="40001", err_message="COMMIT: transaction is aborted because of concurrency conflicts, will ROLLBACK instead") - mdb1.execute('select * from test;').assertDataResultMatch([(1,None)]) - mdb2.execute('select * from test;').assertDataResultMatch([(1,None)]) + mdb1.execute('select * from test;').assertSucceeded().assertDataResultMatch([(1,None)]) + mdb2.execute('select * from test;').assertSucceeded().assertDataResultMatch([(1,None)]) mdb1.execute('start transaction;').assertSucceeded() mdb2.execute('start transaction;').assertSucceeded() @@ -24,7 +24,7 @@ with SQLTestCase() as mdb1: mdb1.execute('commit;').assertSucceeded() mdb2.execute('commit;').assertSucceeded() - mdb1.execute('select * from test;').assertDataResultMatch([(1,),(3,)]) - mdb2.execute('select * from test;').assertDataResultMatch([(1,),(3,)]) + mdb1.execute('select * from test;').assertSucceeded().assertDataResultMatch([(1,),(3,)]) + mdb2.execute('select * from test;').assertSucceeded().assertDataResultMatch([(1,),(3,)]) mdb1.execute('drop table test;').assertSucceeded() diff --git a/sql/test/Users/Tests/changeSchemaUser.SQL.py b/sql/test/Users/Tests/changeSchemaUser.SQL.py --- a/sql/test/Users/Tests/changeSchemaUser.SQL.py +++ b/sql/test/Users/Tests/changeSchemaUser.SQL.py @@ -26,11 +26,11 @@ with SQLTestCase() as mdb: # Check that the admin can change the default schema of a user, and # this will take effect the next time this user logs-in. tc.connect(username="april", password="april") - tc.execute("SELECT current_schema;").assertDataResultMatch([('bank',)]) + tc.execute("SELECT current_schema;").assertSucceeded().assertDataResultMatch([('bank',)]) tc.execute('SELECT * from accounts;').assertSucceeded() mdb.execute('ALTER USER "april" SET SCHEMA library').assertSucceeded() tc.connect(username="april", password="april") - tc.execute("SELECT current_schema;").assertDataResultMatch([('library',)]) + tc.execute("SELECT current_schema;").assertSucceeded().assertDataResultMatch([('library',)]) # Check that after the schema change, the user no longer has direct access to tables in schema 'bank' tc.execute('SELECT * from accounts;').assertFailed(err_code="42S02", err_message="SELECT: no such table 'accounts'") diff --git a/sql/test/Users/Tests/userCallFunction.SQL.py b/sql/test/Users/Tests/userCallFunction.SQL.py --- a/sql/test/Users/Tests/userCallFunction.SQL.py +++ b/sql/test/Users/Tests/userCallFunction.SQL.py @@ -29,15 +29,15 @@ with SQLTestCase() as mdb: mdb.execute('GRANT EXECUTE ON FUNCTION s1.f1 TO u1;').assertFailed(err_code="42000", err_message="GRANT FUNCTION: there are more than one function called 'f1', please use the full signature") mdb.execute('GRANT EXECUTE ON FUNCTION s1.f1() TO u1;').assertSucceeded() - tc.execute('SELECT s1.f1();').assertDataResultMatch([(10,)]) + tc.execute('SELECT s1.f1();').assertSucceeded().assertDataResultMatch([(10,)]) tc.execute('SELECT s1.f1(1);').assertFailed(err_code="42000", err_message="SELECT: insufficient privileges for unary operator 's1'.'f1'(tinyint)") tc.execute('SELECT s1.f1(cast(1 as int));').assertFailed(err_code="42000", err_message="SELECT: insufficient privileges for unary operator 's1'.'f1'(int)") mdb.execute('REVOKE EXECUTE ON FUNCTION s1.f1() FROM u1;').assertSucceeded() tc.execute('SELECT s1.f1();').assertFailed(err_code="42000", err_message="SELECT: insufficient privileges for operator 's1'.'f1'()") mdb.execute('GRANT EXECUTE ON FUNCTION s1.f1(int) TO u1;').assertSucceeded() - tc.execute('SELECT s1.f1(1);').assertDataResultMatch([(11,)]) - tc.execute('SELECT s1.f1(cast(1 as int));').assertDataResultMatch([(11,)]) + tc.execute('SELECT s1.f1(1);').assertSucceeded().assertDataResultMatch([(11,)]) + tc.execute('SELECT s1.f1(cast(1 as int));').assertSucceeded().assertDataResultMatch([(11,)]) mdb.execute(""" start transaction; diff --git a/sql/test/transactions/Tests/transaction_isolation.SQL.py b/sql/test/transactions/Tests/transaction_isolation.SQL.py --- a/sql/test/transactions/Tests/transaction_isolation.SQL.py +++ b/sql/test/transactions/Tests/transaction_isolation.SQL.py @@ -7,48 +7,48 @@ with SQLTestCase() as mdb1: mdb1.execute("CREATE TABLE integers (i int);").assertSucceeded() mdb1.execute("insert into integers values (1),(2),(3),(NULL);").assertSucceeded() - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute('start transaction;').assertSucceeded() - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute('TRUNCATE integers;').assertRowCount(4) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute("insert into integers values (4),(5),(6);").assertRowCount(3) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(5,),(6,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(5,),(6,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute("update integers set i = 7 where i = 6;").assertRowCount(1) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(5,),(7,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(5,),(7,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute("delete from integers where i = 5;").assertRowCount(1) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(7,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(7,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute('rollback;').assertSucceeded() - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute('start transaction;').assertSucceeded() - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute('TRUNCATE integers;').assertRowCount(4) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute("insert into integers values (4),(5),(6);").assertRowCount(3) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(5,),(6,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(5,),(6,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute("update integers set i = 7 where i = 6;").assertRowCount(1) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(5,),(7,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(5,),(7,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute("delete from integers where i = 5;").assertRowCount(1) - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(7,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(1,),(2,),(3,),(None,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(7,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(1,),(2,),(3,),(None,)]) mdb1.execute('commit;').assertSucceeded() - mdb1.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(7,)]) - mdb2.execute('SELECT i FROM integers;').assertDataResultMatch([(4,),(7,)]) + mdb1.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(7,)]) + mdb2.execute('SELECT i FROM integers;').assertSucceeded().assertDataResultMatch([(4,),(7,)]) mdb1.execute('TRUNCATE integers;').assertRowCount(2) mdb1.execute("insert into integers (select value from generate_series(1,21,1));").assertRowCount(20) # 1 - 20 @@ -56,92 +56,92 @@ with SQLTestCase() as mdb1: mdb1.execute('start transaction;').assertSucceeded() mdb2.execute('start transaction;').assertSucceeded() mdb1.execute("delete from integers where i % 5 <> 0;").assertRowCount(16) - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(4,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(20,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(4,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(20,)]) mdb1.execute("update integers set i = i + 1 where i % 2 = 0;").assertRowCount(2) - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(4,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(20,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(4,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(20,)]) mdb1.execute("insert into integers (select value from generate_series(1,11,1));").assertRowCount(10) - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(14,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(20,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(14,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(20,)]) mdb1.execute("delete from integers where i between 1 and 5;").assertRowCount(6) - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(8,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(20,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(8,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(20,)]) mdb1.execute('TRUNCATE integers;').assertRowCount(8) - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(0,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(20,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(0,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(20,)]) mdb1.execute('rollback;').assertSucceeded() mdb2.execute('rollback;').assertSucceeded() mdb1.execute("insert into integers (select value from generate_series(1,21,1));").assertRowCount(20) # 1 - 20, 1 - 20 - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(40,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(40,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(40,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(40,)]) mdb1.execute("insert into integers (select value from generate_series(1,201,1));").assertRowCount(200) # 1 - 20, 1 - 20, 1 - 200 mdb1.execute('start transaction;').assertSucceeded() mdb1.execute("delete from integers where i < 21;").assertRowCount(60) # 21 - 200 - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(180,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(240,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(180,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(240,)]) mdb1.execute("insert into integers (select value from generate_series(11,301,1));").assertRowCount(290) # 21 - 200, 11 - 300 mdb1.execute('commit;').assertSucceeded() - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute('start transaction;').assertSucceeded() - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute("delete from integers where i < 101;").assertRowCount(170) # 101 - 200, 101 - 300 - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(300,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(300,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute("insert into integers (select value from generate_series(41,161,1));").assertRowCount(120) # 101 - 200, 101 - 300, 41 - 160 - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(420,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(420,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute("delete from integers where i between 91 and 120;").assertRowCount(70) # 121 - 200, 121 - 300, 41 - 90, 121 - 160 - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(350,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(350,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute("delete from integers where i between 131 and 140 or i < 91;").assertRowCount(80) # 121 - 130, 141 - 200, 121 - 130, 141 - 300, 121 - 130, 141 - 160 - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(270,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(270,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute("insert into integers (select value from generate_series(41,51,1));").assertRowCount(10) # 121 - 130, 141 - 200, 121 - 130, 141 - 300, 121 - 130, 141 - 160, 41 - 50 - mdb1.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(280,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(280,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute("delete from integers where i > 99;").assertRowCount(270) # 41 - 50 - mdb1.execute('SELECT i FROM integers order by i;').assertDataResultMatch([(41,),(42,),(43,),(44,),(45,),(46,),(47,),(48,),(49,),(50,)]) - mdb2.execute('SELECT count(*) FROM integers;').assertDataResultMatch([(470,)]) + mdb1.execute('SELECT i FROM integers order by i;').assertSucceeded().assertDataResultMatch([(41,),(42,),(43,),(44,),(45,),(46,),(47,),(48,),(49,),(50,)]) + mdb2.execute('SELECT count(*) FROM integers;').assertSucceeded().assertDataResultMatch([(470,)]) mdb1.execute('commit;').assertSucceeded() - mdb1.execute('SELECT i FROM integers order by i;').assertDataResultMatch([(41,),(42,),(43,),(44,),(45,),(46,),(47,),(48,),(49,),(50,)]) - mdb2.execute('SELECT i FROM integers order by i;').assertDataResultMatch([(41,),(42,),(43,),(44,),(45,),(46,),(47,),(48,),(49,),(50,)]) + mdb1.execute('SELECT i FROM integers order by i;').assertSucceeded().assertDataResultMatch([(41,),(42,),(43,),(44,),(45,),(46,),(47,),(48,),(49,),(50,)]) + mdb2.execute('SELECT i FROM integers order by i;').assertSucceeded().assertDataResultMatch([(41,),(42,),(43,),(44,),(45,),(46,),(47,),(48,),(49,),(50,)]) _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list