Skylark: 'enumerate' function is fixed (see the extra check in MethodLibraryTest#testEnumerate), it returns a SkylarkList of tuples.

MethodLibrary tests are cleaned up.

--
MOS_MIGRATED_REVID=87592639
diff --git a/src/main/java/com/google/devtools/build/lib/packages/MethodLibrary.java b/src/main/java/com/google/devtools/build/lib/packages/MethodLibrary.java
index 43dc269..65ad87a 100644
--- a/src/main/java/com/google/devtools/build/lib/packages/MethodLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/packages/MethodLibrary.java
@@ -641,14 +641,16 @@
     @Override
     public Object call(Object[] args, FuncallExpression ast) throws EvalException,
         ConversionException {
-      List<Object> input = Type.OBJECT_LIST.convert(args[0], "'enumerate' operand");
-      List<List<Object>> result = Lists.newArrayList();
+      // Note that enumerate is only available in Skylark.
+      SkylarkList input = cast(
+          args[0], SkylarkList.class, "enumerate operand", ast.getLocation());
+      List<SkylarkList> result = Lists.newArrayList();
       int count = 0;
       for (Object obj : input) {
-        result.add(Lists.newArrayList(count, obj));
+        result.add(SkylarkList.tuple(Lists.newArrayList(count, obj)));
         count++;
       }
-      return result;
+      return SkylarkList.list(result, ast.getLocation());
     }
   };
 
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkFunction.java b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkFunction.java
index ecfd660..6a1aadf 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkFunction.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkFunction.java
@@ -300,7 +300,7 @@
       return type.cast(elem);
     } catch (ClassCastException e) {
       throw new EvalException(loc, String.format("expected %s for '%s' but got %s instead",
-          type.getSimpleName(), what, EvalUtils.getDataTypeName(elem)));
+          EvalUtils.getDataTypeNameFromClass(type), what, EvalUtils.getDataTypeName(elem)));
     }
   }
 }
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkList.java b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkList.java
index 4e25b77..9e9788a 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/SkylarkList.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/SkylarkList.java
@@ -353,7 +353,7 @@
   /**
    * @param elements the contents of the list
    * @return a Skylark list containing elements
-   * @throws an EvalException in case the list is not monomorphic
+   * @throws EvalException in case the list is not monomorphic
    */
   public static SkylarkList list(Collection<?> elements, Location loc) throws EvalException {
     if (elements.isEmpty()) {