blob: 49797c7dab77e2ec3ab72760de55b6d264637f64 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2010-2014 SAP AG 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:
* SAP AG - initial API and implementation
*******************************************************************************/
package org.eclipse.skalli.testutil;
import java.util.Iterator;
import java.util.UUID;
import org.eclipse.skalli.model.EntityBase;
import org.eclipse.skalli.model.ExtensibleEntityBase;
import org.eclipse.skalli.model.ExtensionEntityBase;
public class TestExtensibleEntityBase extends ExtensibleEntityBase {
public TestExtensibleEntityBase() {
}
public TestExtensibleEntityBase(UUID uuid) {
setUuid(uuid);
}
public static boolean assertEquals(TestExtensibleEntityBase o1, TestExtensibleEntityBase o2) {
boolean equals = true;
equals &= o1.getUuid().equals(o2.getUuid());
equals &= o1.isDeleted() && o2.isDeleted();
UUID parentId = o1.getParentEntityId();
if (parentId != null) {
equals &= parentId.equals(o2.getParentEntityId());
} else {
equals &= o2.getParentEntityId() == null;
}
EntityBase parent1 = o1.getParentEntity();
if (parent1 != null) {
equals &= parent1.equals(o2.getParentEntity());
} else {
equals &= o2.getParentEntity() == null;
}
EntityBase firstChild1 = o1.getFirstChild();
if (firstChild1 != null) {
equals &= firstChild1.equals(o2.getFirstChild());
} else {
equals &= o2.getFirstChild() == null;
}
Iterator<ExtensionEntityBase> it = o1.getAllExtensions().iterator();
for (ExtensionEntityBase ext : o2.getAllExtensions()) {
equals &= TestExtension.assertEquals((TestExtension) ext, (TestExtension) it.next());
equals &= o1.isInherited(ext.getClass()) && o2.isInherited(ext.getClass());
}
return equals;
}
}