mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-01 06:27:03 +03:00
Add test cases to improve coverage of VDBE branches. Still some to go.
FossilOrigin-Name: 4cef609d61de272cfdc2b39e1d49c7cd56ec834086bd63095116ff98f4d402bd
This commit is contained in:
@ -355,5 +355,30 @@ do_execsql_test 10.1 {
|
||||
DELETE FROM t2 WHERE b=1
|
||||
}
|
||||
|
||||
#-------------------------------------------------------------------------
|
||||
# UNIQUE constraint violation in an UPDATE with a multi-column PK.
|
||||
#
|
||||
reset_db
|
||||
do_execsql_test 10.0 {
|
||||
CREATE TABLE t1(a, b, c UNIQUE, PRIMARY KEY(a, b)) WITHOUT ROWID;
|
||||
INSERT INTO t1 VALUES('a', 'a', 1);
|
||||
INSERT INTO t1 VALUES('a', 'b', 2);
|
||||
INSERT INTO t1 VALUES('b', 'a', 3);
|
||||
INSERT INTO t1 VALUES('b', 'b', 4);
|
||||
}
|
||||
|
||||
do_catchsql_test 10.1 {
|
||||
UPDATE t1 SET c=1 WHERE (a, b) = ('a', 'a');
|
||||
} {0 {}}
|
||||
do_catchsql_test 10.2 {
|
||||
UPDATE t1 SET c=1 WHERE (a, b) = ('a', 'b');
|
||||
} {1 {UNIQUE constraint failed: t1.c}}
|
||||
do_catchsql_test 10.3 {
|
||||
UPDATE t1 SET c=1 WHERE (a, b) = ('b', 'a');
|
||||
} {1 {UNIQUE constraint failed: t1.c}}
|
||||
do_catchsql_test 10.4 {
|
||||
UPDATE t1 SET c=1 WHERE (a, b) = ('b', 'b');
|
||||
} {1 {UNIQUE constraint failed: t1.c}}
|
||||
|
||||
|
||||
finish_test
|
||||
|
Reference in New Issue
Block a user