blob: 4ecfff4fd89d871932595e450cd74df8208f03aa [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2011-2015 EclipseSource Muenchen GmbH 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:
* Edgar Mueller - initial API and implementation
******************************************************************************/
package org.eclipse.emf.emfstore.internal.client.test.persistence;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.fail;
import java.util.Date;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.emf.emfstore.client.ESLocalProject;
import org.eclipse.emf.emfstore.client.test.common.cases.ESTestWithSharedProject;
import org.eclipse.emf.emfstore.client.test.common.dsl.Add;
import org.eclipse.emf.emfstore.client.test.common.dsl.Create;
import org.eclipse.emf.emfstore.client.test.common.util.ProjectUtil;
import org.eclipse.emf.emfstore.server.exceptions.ESException;
import org.eclipse.emf.emfstore.test.model.TestElement;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
/**
* Test for Bug 470553.
*
* @author emueller
*
*/
public class ProjectLastUpdatedTest extends ESTestWithSharedProject {
private ESLocalProject clonedProject;
@BeforeClass
public static void beforeClass() {
startEMFStore();
}
@AfterClass
public static void afterClass() {
stopEMFStore();
}
@Override
@Before
public void before() {
super.before();
final TestElement testElement = Create.testElement();
Add.toProject(getLocalProject(), testElement);
try {
clonedProject = getLocalProject().getRemoteProject().checkout("Copy", new NullProgressMonitor());
} catch (final ESException ex) {
fail(ex.getMessage());
}
}
@Test
public void lastUpdatedIsSetAfterCheckout() {
assertNotNull(clonedProject.getLastUpdated());
}
@Test
public void lastUpdatedDidChange() throws ESException {
Add.toProject(getLocalProject(), Create.testElement());
ProjectUtil.commit(getLocalProject());
final Date before = clonedProject.getLastUpdated();
clonedProject.update(new NullProgressMonitor());
final Date after = clonedProject.getLastUpdated();
assertFalse(before.equals(after));
}
}