Fix red tests

Change-Id: I134f04a1a425553ec6afec613358fdc06f56fa0c
diff --git a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java
index 06f4eae..908d125 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/enums/EnumValueOptimizer.java
@@ -10,6 +10,7 @@
 import com.android.tools.r8.graph.DexField;
 import com.android.tools.r8.graph.DexItemFactory;
 import com.android.tools.r8.graph.DexMethod;
+import com.android.tools.r8.graph.DexProgramClass;
 import com.android.tools.r8.graph.DexType;
 import com.android.tools.r8.graph.EnumValueInfoMapCollection.EnumValueInfo;
 import com.android.tools.r8.graph.EnumValueInfoMapCollection.EnumValueInfoMap;
@@ -119,8 +120,10 @@
         Instruction arrayDefinition = current.asArrayLength().array().definition;
         if (arrayDefinition != null && arrayDefinition.isInvokeStatic()) {
           DexMethod invokedMethod = arrayDefinition.asInvokeStatic().getInvokedMethod();
-          if (factory.enumMethods.isValuesMethod(
-              invokedMethod, appView.definitionForProgramType(invokedMethod.holder))) {
+          DexProgramClass enumClass = appView.definitionForProgramType(invokedMethod.holder);
+          if (enumClass != null
+              && enumClass.isEnum()
+              && factory.enumMethods.isValuesMethod(invokedMethod, enumClass)) {
             EnumValueInfoMap enumValueInfoMap =
                 appView.appInfo().withLiveness().getEnumValueInfoMap(invokedMethod.holder);
             if (enumValueInfoMap != null) {
diff --git a/src/test/java/com/android/tools/r8/enumunboxing/SwitchEnumUnboxingTest.java b/src/test/java/com/android/tools/r8/enumunboxing/SwitchEnumUnboxingTest.java
index 4bfa568..b7c7005 100644
--- a/src/test/java/com/android/tools/r8/enumunboxing/SwitchEnumUnboxingTest.java
+++ b/src/test/java/com/android/tools/r8/enumunboxing/SwitchEnumUnboxingTest.java
@@ -50,7 +50,13 @@
             .setMinApi(parameters.getApiLevel())
             .compile()
             .inspectDiagnosticMessages(
-                m -> assertEnumIsBoxed(ENUM_CLASS, classToTest.getSimpleName(), m))
+                m -> {
+                  if (enumValueOptimization) {
+                    assertEnumIsUnboxed(ENUM_CLASS, classToTest.getSimpleName(), m);
+                  } else {
+                    assertEnumIsBoxed(ENUM_CLASS, classToTest.getSimpleName(), m);
+                  }
+                })
             .run(parameters.getRuntime(), classToTest)
             .assertSuccess();
     assertLines2By2Correct(run.getStdOut());