Skip to content

Commit df6c8de

Browse files
committed
Test unique index is enforced when updating documents
1 parent d310bac commit df6c8de

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

tests/Database/Base.php

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1567,4 +1567,26 @@ public function testUniqueIndexDuplicate()
15671567
'generes' => ['animation', 'kids'],
15681568
]));
15691569
}
1570+
1571+
/**
1572+
* @depends testUniqueIndexDuplicate
1573+
*/
1574+
public function testUniqueIndexDuplicateUpdate()
1575+
{
1576+
// create document then update to conflict with index
1577+
$document = static::getDatabase()->createDocument('movies', new Document([
1578+
'$read' => ['role:all', 'user1', 'user2'],
1579+
'$write' => ['role:all', 'user1x', 'user2x'],
1580+
'name' => 'Frozen 5',
1581+
'director' => 'Chris Buck & Jennifer Lee',
1582+
'year' => 2013,
1583+
'price' => 39.50,
1584+
'active' => true,
1585+
'generes' => ['animation', 'kids'],
1586+
]));
1587+
1588+
$this->expectException(DuplicateException::class);
1589+
1590+
static::getDatabase()->updateDocument('movies', $document->getId(), $document->setAttribute('name', 'Frozen'));
1591+
}
15701592
}

0 commit comments

Comments
 (0)