blob: efff830a898a2b41e6b209b0e300ff6459838a78 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 1998, 2013 Oracle and/or its affiliates. All rights reserved.
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
* which accompanies this distribution.
* The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
* and the Eclipse Distribution License is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* Contributors:
* Oracle - initial API and implementation from Oracle TopLink
******************************************************************************/
package org.eclipse.persistence.testing.tests.lob;
import org.eclipse.persistence.testing.framework.DeleteObjectTest;
import org.eclipse.persistence.queries.ReadObjectQuery;
import org.eclipse.persistence.sessions.UnitOfWork;
/**
* <p>
* <b>Purpose</b>: Define a test for deleting CLOB/BLOB from the database.
* <p>
* <b>Responsibilities</b>:
* <ul>
* <li> Insert a new object (with BLOB/CLOB value) ready for deleting
* <li> Execute the delete object query to delete the inserted object and verify no errors occurred.
* <li> Verify the object has been completely deleted from the database.
* </ul>
*
* @author King Wang (Aug. 2002)
* @since TopLink/Java 5.0
*/
public class LOBDeleteTest extends DeleteObjectTest {
public LOBDeleteTest(Object originalObject) {
this.originalObject = originalObject;
setName("LOBDeleteTest(" + originalObject + ")");
setDescription("This case tests the BLOB/CLOB delete with size less or bigger than 4k and checks if it was deleted properly");
}
protected void setup() {
getAbstractSession().beginTransaction();
//insert the object into database during the setup (assume the brand new object)
UnitOfWork uow = getSession().acquireUnitOfWork();
uow.registerObject(this.originalObject);
uow.assignSequenceNumber(originalObject);
uow.commit();
this.query = new ReadObjectQuery();
this.query.setSelectionObject(this.originalObject);
objectFromDatabase = getSession().executeQuery(this.query);
}
}