Fixes issue #116: org.testng.internal.BaseTestMethod does respect general contract of Comparable
diff --git a/pom-test.xml b/pom-test.xml
index 0af9d07..8a29968 100644
--- a/pom-test.xml
+++ b/pom-test.xml
@@ -65,9 +65,14 @@
       <version>1.27</version>
     </dependency>
     <dependency>
+        <groupId>org.yaml</groupId>
+        <artifactId>snakeyaml</artifactId>
+        <version>1.12</version>
+    </dependency>
+    <dependency>
       <groupId>org.testng</groupId>
       <artifactId>testng</artifactId>
-      <version>6.8.6-SNAPSHOT</version>
+      <version>6.8.8-SNAPSHOT</version>
       <scope>test</scope>
     </dependency>
    </dependencies>
diff --git a/src/main/java/org/testng/internal/BaseTestMethod.java b/src/main/java/org/testng/internal/BaseTestMethod.java
index 8aa78a7..5257ebd 100755
--- a/src/main/java/org/testng/internal/BaseTestMethod.java
+++ b/src/main/java/org/testng/internal/BaseTestMethod.java
@@ -153,7 +153,9 @@
     int result = -2;

     Class<?> thisClass = getRealClass();

     Class<?> otherClass = ((ITestNGMethod) o).getRealClass();

-    if (thisClass.isAssignableFrom(otherClass)) {

+    if (this == o) {
+      result = 0;
+    } else if (thisClass.isAssignableFrom(otherClass)) {

       result = -1;

     } else if (otherClass.isAssignableFrom(thisClass)) {

       result = 1;