TCK: JsonParser needs to have a way to get current event #316

Signed-off-by: Jorge Bescos Gascon <jorge.bescos.gascon@oracle.com>
diff --git a/tck/tck-tests/src/main/java/jakarta/jsonp/tck/api/jsonparsertests/ClientTests.java b/tck/tck-tests/src/main/java/jakarta/jsonp/tck/api/jsonparsertests/ClientTests.java
index c1a3f0e..9035143 100644
--- a/tck/tck-tests/src/main/java/jakarta/jsonp/tck/api/jsonparsertests/ClientTests.java
+++ b/tck/tck-tests/src/main/java/jakarta/jsonp/tck/api/jsonparsertests/ClientTests.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2020 Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2020, 2021 Oracle and/or its affiliates. All rights reserved.
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v. 2.0, which is available at
@@ -19,14 +19,15 @@
  */
 package jakarta.jsonp.tck.api.jsonparsertests;
 
-import jakarta.jsonp.tck.api.common.TestResult;
-import jakarta.jsonp.tck.common.*;
-import jakarta.jsonp.tck.lib.harness.Fault;
+import static jakarta.jsonp.tck.api.common.JsonAssert.valueToString;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
 
-import java.io.*;
+import java.io.InputStream;
+import java.io.StringReader;
 import java.math.BigDecimal;
 import java.util.NoSuchElementException;
-import java.util.Properties;
 
 import org.jboss.arquillian.container.test.api.Deployment;
 import org.jboss.arquillian.junit.Arquillian;
@@ -35,8 +36,18 @@
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
-import jakarta.json.*;
-import jakarta.json.stream.*;
+import jakarta.json.Json;
+import jakarta.json.JsonArray;
+import jakarta.json.JsonException;
+import jakarta.json.JsonObject;
+import jakarta.json.stream.JsonParser;
+import jakarta.json.stream.JsonParser.Event;
+import jakarta.json.stream.JsonParsingException;
+import jakarta.jsonp.tck.api.common.TestResult;
+import jakarta.jsonp.tck.common.JSONP_Data;
+import jakarta.jsonp.tck.common.JSONP_Util;
+import jakarta.jsonp.tck.common.MyBufferedInputStream;
+import jakarta.jsonp.tck.lib.harness.Fault;
 
 @RunWith(Arquillian.class)
 public class ClientTests {
@@ -1905,4 +1916,24 @@
     result.eval();
   }
 
+  /*
+   * @testName: jsonParserCurrentEvent
+   * 
+   * @test_Strategy: Tests JsonParser API methods added in JSON-P 2.1.
+   */
+  @Test
+  public void jsonParserCurrentEvent() {
+      try (JsonParser parser = Json.createParser(new StringReader("{\"a\":\"v\",\"b\":\"w\"}"))) {
+          assertNull(parser.currentEvent());
+          int events = 0;
+          while (parser.hasNext()) {
+              Event next = parser.next();
+              assertNotNull(next);
+              assertEquals(next, parser.currentEvent());
+              assertEquals(parser.currentEvent(), parser.currentEvent());
+              events++;
+          }
+          assertEquals(6, events);
+      }
+  }
 }