fix virtual network comparator

Change-Id: Ifb2aba3c302a77c06283649bed90b2db11a04732
diff --git a/core/common/src/main/java/org/onosproject/utils/Comparators.java b/core/common/src/main/java/org/onosproject/utils/Comparators.java
index b5d843e..c03c99b 100644
--- a/core/common/src/main/java/org/onosproject/utils/Comparators.java
+++ b/core/common/src/main/java/org/onosproject/utils/Comparators.java
@@ -118,7 +118,10 @@
             (t1, t2) -> t1.id().compareTo(t2.id());
 
     public static final Comparator<VirtualNetwork> VIRTUAL_NETWORK_COMPARATOR =
-            (v1, v2) -> v1.tenantId().toString().compareTo(v2.tenantId().toString());
+            (v1, v2) -> {
+                int compareId = v1.tenantId().toString().compareTo(v2.tenantId().toString());
+                return (compareId != 0) ? compareId : Long.signum(v1.id().id() - v2.id().id());
+            };
 
     public static final Comparator<VirtualDevice> VIRTUAL_DEVICE_COMPARATOR =
             (v1, v2) -> v1.id().toString().compareTo(v2.id().toString());
diff --git a/core/common/src/test/java/org/onosproject/utils/ComparatorsTest.java b/core/common/src/test/java/org/onosproject/utils/ComparatorsTest.java
index f4b4dc2..8562d7e 100644
--- a/core/common/src/test/java/org/onosproject/utils/ComparatorsTest.java
+++ b/core/common/src/test/java/org/onosproject/utils/ComparatorsTest.java
@@ -338,7 +338,7 @@
     public void testVirtualNetworkComparator() {
         assertNotEquals(0, VIRTUAL_NETWORK_COMPARATOR.compare(network(10, "tenantID"), network(10, "tenantID1")));
         assertNotEquals(0, VIRTUAL_NETWORK_COMPARATOR.compare(network(10, "tenantID"), network(15, "tenantID1")));
-        assertEquals(0, VIRTUAL_NETWORK_COMPARATOR.compare(network(15, "tenantID1"), network(10, "tenantID1")));
+        assertNotEquals(0, VIRTUAL_NETWORK_COMPARATOR.compare(network(15, "tenantID1"), network(10, "tenantID1")));
         assertNotEquals(0, VIRTUAL_NETWORK_COMPARATOR.compare(network(15, "tenantID"), network(10, "tenantID1")));
     }