diff --git a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/junit/MisorderedAssertEqualsArgumentsInspectionBase.java b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/junit/MisorderedAssertEqualsArgumentsInspectionBase.java index 0760b141c550..8850fce494e6 100644 --- a/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/junit/MisorderedAssertEqualsArgumentsInspectionBase.java +++ b/plugins/InspectionGadgets/InspectionGadgetsAnalysis/src/com/siyeh/ig/junit/MisorderedAssertEqualsArgumentsInspectionBase.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2013 JetBrains s.r.o. + * Copyright 2000-2014 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -185,7 +185,16 @@ public abstract class MisorderedAssertEqualsArgumentsInspectionBase extends Base return; } if (ExpressionUtils.computeConstantExpression(actualArgument) == null) { - return; + if (actualArgument instanceof PsiReferenceExpression) { + final PsiReferenceExpression referenceExpression = (PsiReferenceExpression)actualArgument; + final PsiElement target = referenceExpression.resolve(); + if (!(target instanceof PsiEnumConstant)) { + return; + } + } + else { + return; + } } registerMethodCallError(expression); } diff --git a/plugins/InspectionGadgets/test/com/siyeh/igtest/junit/misordered_assert_equals_parameters/Simple.java b/plugins/InspectionGadgets/test/com/siyeh/igtest/junit/misordered_assert_equals_parameters/Simple.java index e4497c605c80..3991e27403b4 100644 --- a/plugins/InspectionGadgets/test/com/siyeh/igtest/junit/misordered_assert_equals_parameters/Simple.java +++ b/plugins/InspectionGadgets/test/com/siyeh/igtest/junit/misordered_assert_equals_parameters/Simple.java @@ -1,5 +1,7 @@ import org.junit.Assert; +import java.util.concurrent.TimeUnit; + class Simple { public static final int EXPECTED = -9; @@ -10,7 +12,14 @@ class Simple { Assert.assertEquals(s, -1); Assert.assertSame(s, EXPECTED); junit.framework.Assert.failNotEquals("asdfasd", s, EXPECTED); + + TimeUnit timeUnit = TimeUnit.HOURS; + Assert.assertEquals(timeUnit, TimeUnit.HOURS); return null; } } + + enum TimeUnit { + HOURS + } } \ No newline at end of file diff --git a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/junit/MisorderedAssertEqualsParametersInspectionTest.java b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/junit/MisorderedAssertEqualsParametersInspectionTest.java index dfe13ca3d40a..d822720565d2 100644 --- a/plugins/InspectionGadgets/testsrc/com/siyeh/ig/junit/MisorderedAssertEqualsParametersInspectionTest.java +++ b/plugins/InspectionGadgets/testsrc/com/siyeh/ig/junit/MisorderedAssertEqualsParametersInspectionTest.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2013 JetBrains s.r.o. + * Copyright 2000-2014 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,6 +31,7 @@ public class MisorderedAssertEqualsParametersInspectionTest extends LightInspect "package org.junit;" + "public class Assert {" + " static public void assertEquals(long expected, long actual) {}" + + " static public void assertEquals(Object expected, Object actual){}" + " static public void assertSame(Object expected, Object actual) {}" + "}", "package junit.framework;" +