blob: 8d0778c469642d4f07f39f3af06275bd4c6d3563 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2009 The University of York.
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* Contributors:
* Louis Rose - initial API and implementation
******************************************************************************
*
* $Id$
*/
package org.eclipse.epsilon.flock.emc.wrappers;
import static org.easymock.EasyMock.expect;
import static org.easymock.classextension.EasyMock.createMock;
import static org.easymock.classextension.EasyMock.replay;
import static org.easymock.classextension.EasyMock.verify;
import static org.junit.Assert.assertEquals;
import org.eclipse.epsilon.eol.exceptions.EolRuntimeException;
import org.eclipse.epsilon.flock.context.ConservativeCopyContext;
import org.eclipse.epsilon.flock.execution.exceptions.ConservativeCopyException;
import org.eclipse.epsilon.hutn.test.model.families.DogBreed;
import org.junit.Test;
public class EnumValueTests {
private static final Model dummyModel = createMock(Model.class);
private static final EnumValue value = new EnumValue(dummyModel, DogBreed.LABRADOR);
@Test
public void unwrapShouldReturnUnderlyingModelObject() {
assertEquals(DogBreed.LABRADOR, value.unwrap());
}
@Test
public void getEquivalentShouldCreateEquivalentValue() throws ConservativeCopyException, EolRuntimeException {
final Model mockMigratedModel = createMock(Model.class);
final ConservativeCopyContext dummyContext = createMock(ConservativeCopyContext.class);
// Expectations
expect(mockMigratedModel.getEquivalentEnumerationValue(DogBreed.LABRADOR))
.andReturn(DogBreed.POODLE);
replay(mockMigratedModel);
// Verification
assertEquals(new EnumValue(mockMigratedModel, DogBreed.POODLE),
value.getEquivalentIn(mockMigratedModel, dummyContext));
verify(mockMigratedModel);
}
}