OPUS4 / framework

OPUS 4 Database Implementation
Other
2 stars 7 forks source link

Opus_Model_AbstractDb::isNewRecord() liefert nicht in jedem Fall ein korrektes Ergebnis #308

Open j3nsch opened 2 years ago

j3nsch commented 2 years ago

Wird ein Model über die Methode Opus_Document::deleteFields() gelöscht und dann diesem Feld nach dem Speichern des Dokuments eine neue Model-Instanz zugewiesen, so liefert die Methode Opus_Model_AbstractDb::isNewRecord() für dieses neue Model den Wert false, obwohl das Model noch nicht in der Datenbank persistiert ist und also keine ID hat.

Das Verhalten ist dokumentiert im Test, der an Ticket OPUSVIER-3203 hängt (Opus_DocumentTest::testDeleteFields(); auch wenn hier nicht explizit der Rückgabewert von Opus_Model_AbstractDb::isNewRecord() geprüft wird).