From c5a7b216721aa8f3bcf0497f6c2f336dcc0b2368 Mon Sep 17 00:00:00 2001 From: James Devenish Date: Thu, 10 Oct 2024 23:07:15 +1100 Subject: [PATCH] Add munit.internal.junitinterface.{PendingCommentTag, PendingTag} --- .../java/munit/internal/junitinterface/EventDispatcher.java | 5 ++--- .../munit/internal/junitinterface/PendingCommentTag.java | 3 +++ .../main/java/munit/internal/junitinterface/PendingTag.java | 3 +++ .../munit/internal/junitinterface/PendingCommentTag.scala | 3 +++ .../scala/munit/internal/junitinterface/PendingTag.scala | 3 +++ munit/shared/src/main/scala/munit/package.scala | 6 ++++-- 6 files changed, 18 insertions(+), 5 deletions(-) create mode 100644 junit-interface/src/main/java/munit/internal/junitinterface/PendingCommentTag.java create mode 100644 junit-interface/src/main/java/munit/internal/junitinterface/PendingTag.java create mode 100644 munit/js-native/src/main/scala/munit/internal/junitinterface/PendingCommentTag.scala create mode 100644 munit/js-native/src/main/scala/munit/internal/junitinterface/PendingTag.scala diff --git a/junit-interface/src/main/java/munit/internal/junitinterface/EventDispatcher.java b/junit-interface/src/main/java/munit/internal/junitinterface/EventDispatcher.java index 279544bb..b0f6136f 100644 --- a/junit-interface/src/main/java/munit/internal/junitinterface/EventDispatcher.java +++ b/junit-interface/src/main/java/munit/internal/junitinterface/EventDispatcher.java @@ -139,11 +139,10 @@ void logTo(RichLogger logger) { for (Annotation annotation : desc.getAnnotations()) { if (annotation instanceof Tag) { Tag tag = (Tag) annotation; - String kind = tag.getClass().getName(); - if (kind.equals("munit.Tag") && tag.value().equals("Pending")) { + if (tag instanceof PendingTag) { isPending = true; } - else if (kind.equals("munit.package$PendingComment")) { + else if (tag instanceof PendingCommentTag) { builder.append(" "); builder.append(tag.value()); } diff --git a/junit-interface/src/main/java/munit/internal/junitinterface/PendingCommentTag.java b/junit-interface/src/main/java/munit/internal/junitinterface/PendingCommentTag.java new file mode 100644 index 00000000..27eb7392 --- /dev/null +++ b/junit-interface/src/main/java/munit/internal/junitinterface/PendingCommentTag.java @@ -0,0 +1,3 @@ +package munit.internal.junitinterface; + +public interface PendingCommentTag extends Tag {} diff --git a/junit-interface/src/main/java/munit/internal/junitinterface/PendingTag.java b/junit-interface/src/main/java/munit/internal/junitinterface/PendingTag.java new file mode 100644 index 00000000..a864caf8 --- /dev/null +++ b/junit-interface/src/main/java/munit/internal/junitinterface/PendingTag.java @@ -0,0 +1,3 @@ +package munit.internal.junitinterface; + +public interface PendingTag extends Tag {} diff --git a/munit/js-native/src/main/scala/munit/internal/junitinterface/PendingCommentTag.scala b/munit/js-native/src/main/scala/munit/internal/junitinterface/PendingCommentTag.scala new file mode 100644 index 00000000..c01510a1 --- /dev/null +++ b/munit/js-native/src/main/scala/munit/internal/junitinterface/PendingCommentTag.scala @@ -0,0 +1,3 @@ +package munit.internal.junitinterface + +trait PendingCommentTag extends Tag diff --git a/munit/js-native/src/main/scala/munit/internal/junitinterface/PendingTag.scala b/munit/js-native/src/main/scala/munit/internal/junitinterface/PendingTag.scala new file mode 100644 index 00000000..29bde139 --- /dev/null +++ b/munit/js-native/src/main/scala/munit/internal/junitinterface/PendingTag.scala @@ -0,0 +1,3 @@ +package munit.internal.junitinterface + +trait PendingTag extends Tag diff --git a/munit/shared/src/main/scala/munit/package.scala b/munit/shared/src/main/scala/munit/package.scala index fe26f699..d6f456df 100644 --- a/munit/shared/src/main/scala/munit/package.scala +++ b/munit/shared/src/main/scala/munit/package.scala @@ -1,10 +1,12 @@ +import munit.internal.junitinterface.{PendingCommentTag, PendingTag} + package object munit { - case class PendingComment(override val value: String) extends Tag(value) + case class PendingComment(override val value: String) extends Tag(value) with PendingCommentTag val Ignore = new Tag("Ignore") val Only = new Tag("Only") val Flaky = new Tag("Flaky") val Fail = new Tag("Fail") - val Pending = new Tag("Pending") + val Pending = new Tag("Pending") with PendingTag val Slow = new Tag("Slow") }