simple timer supports zero duration
diff --git a/geronimo-metrics-common/src/main/java/org/apache/geronimo/microprofile/metrics/common/SimpleTimerImpl.java b/geronimo-metrics-common/src/main/java/org/apache/geronimo/microprofile/metrics/common/SimpleTimerImpl.java
index f3df332..afd55eb 100644
--- a/geronimo-metrics-common/src/main/java/org/apache/geronimo/microprofile/metrics/common/SimpleTimerImpl.java
+++ b/geronimo-metrics-common/src/main/java/org/apache/geronimo/microprofile/metrics/common/SimpleTimerImpl.java
@@ -50,7 +50,7 @@
 
     @Override
     public void update(final Duration duration) {
-        if (duration.isNegative() || duration.isZero()) {
+        if (duration.isNegative()) {
             return;
         }
         maybeRotate();
diff --git a/geronimo-metrics/pom.xml b/geronimo-metrics/pom.xml
index 9345a67..a23fcb2 100644
--- a/geronimo-metrics/pom.xml
+++ b/geronimo-metrics/pom.xml
@@ -85,6 +85,8 @@
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
         <configuration>
+          <forkCount>1</forkCount>
+          <runOrder>alphabetical</runOrder>
           <dependenciesToScan>
             <dependency>org.eclipse.microprofile.metrics:microprofile-metrics-api-tck</dependency>
             <dependency>org.eclipse.microprofile.metrics:microprofile-metrics-rest-tck</dependency>
diff --git a/geronimo-metrics/src/test/java/org/apache/geronimo/microprofile/metrics/test/ArquillianSetup.java b/geronimo-metrics/src/test/java/org/apache/geronimo/microprofile/metrics/test/ArquillianSetup.java
index 2e86ae3..a0b6499 100644
--- a/geronimo-metrics/src/test/java/org/apache/geronimo/microprofile/metrics/test/ArquillianSetup.java
+++ b/geronimo-metrics/src/test/java/org/apache/geronimo/microprofile/metrics/test/ArquillianSetup.java
@@ -16,15 +16,6 @@
  */
 package org.apache.geronimo.microprofile.metrics.test;
 
-import java.lang.annotation.Annotation;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.util.stream.Stream;
-
-import javax.enterprise.inject.spi.BeanManager;
-import javax.enterprise.inject.spi.CDI;
-import javax.enterprise.util.AnnotationLiteral;
-
 import org.apache.catalina.Context;
 import org.apache.meecrowave.Meecrowave;
 import org.apache.meecrowave.arquillian.MeecrowaveContainer;
@@ -37,10 +28,7 @@
 import org.jboss.arquillian.container.spi.event.container.AfterDeploy;
 import org.jboss.arquillian.container.spi.event.container.AfterStart;
 import org.jboss.arquillian.container.spi.event.container.BeforeUnDeploy;
-import org.jboss.arquillian.container.test.impl.client.protocol.local.LocalProtocol;
 import org.jboss.arquillian.container.test.spi.client.deployment.ApplicationArchiveProcessor;
-import org.jboss.arquillian.container.test.spi.client.deployment.DeploymentPackager;
-import org.jboss.arquillian.container.test.spi.client.protocol.Protocol;
 import org.jboss.arquillian.core.api.Instance;
 import org.jboss.arquillian.core.api.InstanceProducer;
 import org.jboss.arquillian.core.api.annotation.Inject;
@@ -50,16 +38,21 @@
 import org.jboss.arquillian.test.spi.TestEnricher;
 import org.jboss.arquillian.test.spi.event.suite.Before;
 import org.jboss.shrinkwrap.api.Archive;
-import org.jboss.shrinkwrap.api.ShrinkWrap;
 import org.jboss.shrinkwrap.api.spec.JavaArchive;
-import org.jboss.shrinkwrap.api.spec.WebArchive;
+
+import javax.enterprise.inject.spi.BeanManager;
+import javax.enterprise.inject.spi.CDI;
+import javax.enterprise.util.AnnotationLiteral;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.util.stream.Stream;
 
 public class ArquillianSetup implements LoadableExtension {
     @Override
     public void register(final ExtensionBuilder extensionBuilder) {
         extensionBuilder.observer(EnvSetup.class)
                 .override(DeployableContainer.class, MeecrowaveContainer.class, TckContainer.class)
-                .override(Protocol.class, LocalProtocol.class, ForceWarProtocol.class)
                 .service(TestEnricher.class, ParamEnricher.class)
                 .service(ApplicationArchiveProcessor.class, EnsureTestIsInTheArchiveProcessor.class);
     }
@@ -203,20 +196,6 @@
         }
     }
 
-    public static class ForceWarProtocol extends LocalProtocol {
-        @Override
-        public DeploymentPackager getPackager() {
-            return (deployment, collection) -> {
-                final Archive<?> archive = deployment.getApplicationArchive();
-                if (JavaArchive.class.isInstance(archive)) {
-                    return ShrinkWrap.create(WebArchive.class, archive.getName().replace(".jar", ".war"))
-                            .addAsLibraries(archive);
-                }
-                return archive;
-            };
-        }
-    }
-
     public static class EnsureTestIsInTheArchiveProcessor implements ApplicationArchiveProcessor {
         @Override
         public void process(final Archive<?> archive, final TestClass testClass) {
diff --git a/geronimo-metrics/src/test/resources/arquillian.xml b/geronimo-metrics/src/test/resources/arquillian.xml
index 4b590f0..c1d6d7a 100644
--- a/geronimo-metrics/src/test/resources/arquillian.xml
+++ b/geronimo-metrics/src/test/resources/arquillian.xml
@@ -35,7 +35,9 @@
         httpmime,
         xml-path,
         org.apache.sling.javax.activation,
-        jacorb
+        jacorb,
+        txw2,
+        jakarta
       </property>
     </configuration>
   </container>
diff --git a/pom.xml b/pom.xml
index 0d8993f..480a4c1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -43,8 +43,9 @@
 
   <properties>
     <spec.version>3.0-M2</spec.version>
-    <arquillian.version>1.1.8.Final</arquillian.version>
+    <arquillian.version>1.1.13.Final</arquillian.version>
     <meecrowave.version>1.2.8</meecrowave.version>
+    <owb.version>2.0.16</owb.version>
   </properties>
 
   <modules>
@@ -152,8 +153,26 @@
       </dependency>
       <dependency>
         <groupId>org.apache.openwebbeans</groupId>
+        <artifactId>openwebbeans-impl</artifactId>
+        <version>${owb.version}</version>
+        <scope>test</scope>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.openwebbeans</groupId>
         <artifactId>openwebbeans-web</artifactId>
-        <version>2.0.16</version>
+        <version>${owb.version}</version>
+        <scope>test</scope>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.openwebbeans</groupId>
+        <artifactId>openwebbeans-el22</artifactId>
+        <version>${owb.version}</version>
+        <scope>test</scope>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.openwebbeans</groupId>
+        <artifactId>openwebbeans-spi</artifactId>
+        <version>${owb.version}</version>
         <scope>test</scope>
       </dependency>
     </dependencies>
@@ -191,7 +210,7 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
-        <version>2.22.1</version>
+        <version>3.0.0-M4</version>
         <configuration>
           <reuseForks>true</reuseForks>
           <forkCount>1</forkCount>