Changeset: 27fd9f59eae0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/27fd9f59eae0
Added Files:
        sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.test
Removed Files:
        sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py
Branch: Sep2022
Log Message:

Convert test to .test format.


diffs (112 lines):

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.test
rename from sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py
rename to sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.test
--- a/sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.SQL.py
+++ b/sql/test/BugTracker-2021/Tests/concurrent-add-column.Bug-7196.test
@@ -1,30 +1,82 @@
-from MonetDBtesting.sqltest import SQLTestCase
+@connection(id=1, username=monetdb, password=monetdb)
+statement ok
+create table test (id bigint)
+
+@connection(id=1)
+statement ok
+insert into test values (1)
+
+@connection(id=1)
+statement ok
+start transaction
+
+@connection(id=2, username=monetdb, password=monetdb)
+statement ok
+start transaction
 
-with SQLTestCase() as mdb1:
-    with SQLTestCase() as mdb2:
-        mdb1.connect(username="monetdb", password="monetdb")
-        mdb2.connect(username="monetdb", password="monetdb")
+@connection(id=1)
+statement ok
+alter table test add column data int
+
+@connection(id=2)
+statement ok
+insert into test values (2)
+
+@connection(id=1)
+statement ok
+commit
+
+@connection(id=2)
+statement error 40001!COMMIT: transaction is aborted because of concurrency 
conflicts, will ROLLBACK instead
+commit
+
+@connection(id=1)
+query II nosort
+select * from test
+----
+1
+NULL
 
-        mdb1.execute('create table test (id bigint);').assertSucceeded()
-        mdb1.execute("insert into test values (1);").assertSucceeded()
-        mdb1.execute('start transaction;').assertSucceeded()
-        mdb2.execute('start transaction;').assertSucceeded()
-        mdb1.execute('alter table test add column data int;').assertSucceeded()
-        mdb2.execute("insert into test values (2);").assertSucceeded()
-        mdb1.execute('commit;').assertSucceeded()
-        mdb2.execute('commit;').assertFailed(err_code="40001", 
err_message="COMMIT: transaction is aborted because of concurrency conflicts, 
will ROLLBACK instead")
+@connection(id=2)
+query II nosort
+select * from test
+----
+1
+NULL
 
-        mdb1.execute('select * from 
test;').assertSucceeded().assertDataResultMatch([(1,None)])
-        mdb2.execute('select * from 
test;').assertSucceeded().assertDataResultMatch([(1,None)])
+@connection(id=1)
+statement ok
+start transaction
+
+@connection(id=2)
+statement ok
+start transaction
+
+@connection(id=1)
+statement ok
+alter table test drop column data
 
-        mdb1.execute('start transaction;').assertSucceeded()
-        mdb2.execute('start transaction;').assertSucceeded()
-        mdb1.execute('alter table test drop column data;').assertSucceeded()
-        mdb2.execute("insert into test values (3,4);").assertSucceeded()
-        mdb1.execute('commit;').assertSucceeded()
-        mdb2.execute('commit;').assertFailed(err_code="40001", 
err_message="COMMIT: transaction is aborted because of concurrency conflicts, 
will ROLLBACK instead")
+@connection(id=2)
+statement ok
+insert into test values (3,4)
+
+@connection(id=1)
+statement ok
+commit
+
+@connection(id=2)
+statement error 40001!COMMIT: transaction is aborted because of concurrency 
conflicts, will ROLLBACK instead
+commit
 
-        mdb1.execute('select * from 
test;').assertSucceeded().assertDataResultMatch([(1,),(3,)])
-        mdb2.execute('select * from 
test;').assertSucceeded().assertDataResultMatch([(1,),(3,)])
+@connection(id=1)
+query I nosort
+select * from test
+----
+1
 
-        mdb1.execute('drop table test;').assertSucceeded()
+@connection(id=2)
+query I nosort
+select * from test
+----
+1
+
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to