package org.ovirt.engine.core.common.businessentities; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import org.junit.Test; import org.ovirt.engine.core.compat.Guid; public class VmDeviceTest { @Test public void testSelfAndIdentifyEquality() { Guid vmId = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2463"); Guid deviceId = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2464"); VmDevice device1 = createVmDevice(deviceId, vmId); assertEquals(0, device1.compareTo(device1)); VmDevice device2 = createVmDevice(deviceId, vmId); assertEquals(0, device1.compareTo(device2)); } @Test public void testCompareToVmIdsAreEqual() { // b23ad6d7-0df8-4d69-b4e5-d5b5e90c2463 Guid vmId = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2463"); Guid deviceId1 = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2464"); Guid deviceId2 = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2465"); VmDevice device1 = createVmDevice(deviceId1, vmId); VmDevice device2 = createVmDevice(deviceId2, vmId); assertCompareTo(device1, device2); } @Test public void testCompareToVmIdsAreNotEqual() { Guid vmId1 = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2463"); Guid vmId2 = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2464"); Guid deviceId1 = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2465"); Guid deviceId2 = new Guid("b23ad6d7-0df8-4d69-b4e5-d5b5e90c2466"); VmDevice device1 = createVmDevice(deviceId1, vmId1); VmDevice device2 = createVmDevice(deviceId2, vmId2); assertCompareTo(device1, device2); // Test in case the device IDs are equal device1 = createVmDevice(deviceId1, vmId1); device2 = createVmDevice(deviceId1, vmId2); assertCompareTo(device1, device2); } private void assertCompareTo(VmDevice device1, VmDevice device2) { assertTrue(device2.compareTo(device1) > 0); assertTrue(device1.compareTo(device2) < 0); } private VmDevice createVmDevice(Guid deviceId, Guid vmId) { VmDevice device = new VmDevice(); device.setId(new VmDeviceId(deviceId, vmId)); return device; } }