From 94908d6a378f777e88d70ef697ad5f1fdca6fa69 Mon Sep 17 00:00:00 2001 From: Pieter Dirk Soels Date: Mon, 11 Apr 2022 17:55:57 +0200 Subject: [PATCH] Require static import of `java.util.UUID#randomUUID` (#42) --- .../tech/picnic/errorprone/bugpatterns/StaticImportCheck.java | 1 + .../picnic/errorprone/bugpatterns/StaticImportCheckTest.java | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/error-prone-contrib/src/main/java/tech/picnic/errorprone/bugpatterns/StaticImportCheck.java b/error-prone-contrib/src/main/java/tech/picnic/errorprone/bugpatterns/StaticImportCheck.java index 8ab3e695..412bd38d 100644 --- a/error-prone-contrib/src/main/java/tech/picnic/errorprone/bugpatterns/StaticImportCheck.java +++ b/error-prone-contrib/src/main/java/tech/picnic/errorprone/bugpatterns/StaticImportCheck.java @@ -126,6 +126,7 @@ public final class StaticImportCheck extends BugChecker implements MemberSelectT .put("java.time.ZoneOffset", "UTC") .put("java.util.function.Function", "identity") .put("java.util.function.Predicate", "not") + .put("java.util.UUID", "randomUUID") .put("org.junit.jupiter.params.provider.Arguments", "arguments") .putAll( "java.util.Objects", diff --git a/error-prone-contrib/src/test/java/tech/picnic/errorprone/bugpatterns/StaticImportCheckTest.java b/error-prone-contrib/src/test/java/tech/picnic/errorprone/bugpatterns/StaticImportCheckTest.java index ba7edbb9..d1b2d1e4 100644 --- a/error-prone-contrib/src/test/java/tech/picnic/errorprone/bugpatterns/StaticImportCheckTest.java +++ b/error-prone-contrib/src/test/java/tech/picnic/errorprone/bugpatterns/StaticImportCheckTest.java @@ -50,6 +50,7 @@ public final class StaticImportCheckTest { "import java.time.ZoneOffset;", "import java.util.Optional;", "import java.util.function.Predicate;", + "import java.util.UUID;", "import org.springframework.boot.test.context.SpringBootTest;", "import org.springframework.boot.test.context.SpringBootTest.WebEnvironment;", "import org.springframework.http.MediaType;", @@ -83,6 +84,9 @@ public final class StaticImportCheckTest { " Predicates.not(null);", "", " // BUG: Diagnostic contains:", + " UUID uuid = UUID.randomUUID();", + "", + " // BUG: Diagnostic contains:", " Object o1 = StandardCharsets.UTF_8;", " Object o2 = UTF_8;", "",