blob: 19a826fbc16a6024236cf061b352749295039276 [file] [log] [blame]
/*
* Copyright (c) 2009-2012, 2015 Eike Stepper (Berlin, Germany) and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Eike Stepper - initial API and implementation
*/
package org.eclipse.emf.cdo.tests.bugzilla;
import org.eclipse.emf.cdo.eresource.CDOResource;
import org.eclipse.emf.cdo.session.CDOSession;
import org.eclipse.emf.cdo.tests.AbstractCDOTest;
import org.eclipse.emf.cdo.tests.model1.Customer;
import org.eclipse.emf.cdo.transaction.CDOTransaction;
import org.eclipse.emf.cdo.view.CDOView;
/**
* Make timeouts in read-access requests configurable
* <p>
* See bug 241464
*
* @author Eike Stepper
*/
public class Bugzilla_259949_Test extends AbstractCDOTest
{
public void testBugzilla_259949() throws Exception
{
{
Customer customer = getModel1Factory().createCustomer();
customer.setName("customer");
CDOSession session = openSession();
CDOTransaction transaction = session.openTransaction();
CDOResource resource = transaction.createResource(getResourcePath("/test1"));
resource.getContents().add(customer);
transaction.commit();
session.close();
}
CDOSession session1 = openSession();
session1.options().setPassiveUpdateEnabled(false);
CDOView view1 = session1.openView();
CDOResource res1 = view1.getResource(getResourcePath("/test1"));
assertEquals(1, res1.getContents().size());
assertEquals("customer", ((Customer)res1.getContents().get(0)).getName());
CDOSession session2 = openSession();
CDOTransaction transaction2 = session2.openTransaction();
CDOResource res2 = transaction2.getResource(getResourcePath("/test1"));
assertEquals(1, res2.getContents().size());
assertEquals("customer", ((Customer)res2.getContents().get(0)).getName());
res2.getContents().clear();
transaction2.commit();
session1.refresh();
assertEquals(0, res1.getContents().size());
session1.close();
session2.close();
}
}