You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kyuubi.apache.org by GitBox <gi...@apache.org> on 2021/12/28 04:37:42 UTC

[GitHub] [incubator-kyuubi] cfmcgrady commented on a change in pull request #1631: Migrating existing rest fe tests to real cases

cfmcgrady commented on a change in pull request #1631:
URL: https://github.com/apache/incubator-kyuubi/pull/1631#discussion_r775720557



##########
File path: kyuubi-server/src/test/scala/org/apache/kyuubi/server/api/v1/OperationsResourceSuite.scala
##########
@@ -17,116 +17,116 @@
 
 package org.apache.kyuubi.server.api.v1
 
-import javax.ws.rs.client.{Entity, WebTarget}
+import javax.ws.rs.client.Entity
 import javax.ws.rs.core.MediaType
 
 import org.apache.hive.service.rpc.thrift.TProtocolVersion.HIVE_CLI_SERVICE_PROTOCOL_V2
+import org.scalatest.concurrent.PatienceConfiguration.Timeout
+import org.scalatest.time.SpanSugar.convertIntToGrainOfTime
 
 import org.apache.kyuubi.{KyuubiFunSuite, RestFrontendTestHelper}
 import org.apache.kyuubi.events.KyuubiOperationEvent
-import org.apache.kyuubi.operation.{ExecuteStatement, GetCatalogs, OperationState, OperationType}
+import org.apache.kyuubi.operation.{OperationState, OperationType}
+import org.apache.kyuubi.operation.OperationState.{FINISHED, OperationState}
 import org.apache.kyuubi.operation.OperationType.OperationType
-import org.apache.kyuubi.server.KyuubiRestFrontendService
 
 class OperationsResourceSuite extends KyuubiFunSuite with RestFrontendTestHelper {
 
-  test("test get an operation event") {
-    withKyuubiRestServer { (fe, _, _, webTarget) =>
-      val catalogsHandleStr = getOpHandleStr(fe, OperationType.GET_CATALOGS)
-      var response = webTarget.path(s"api/v1/operations/$catalogsHandleStr/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      val operationEvent = response.readEntity(classOf[KyuubiOperationEvent])
-      assert(200 == response.getStatus)
-      assert(operationEvent.state == OperationState.INITIALIZED.name())
-
-      val statementHandleStr = getOpHandleStr(fe, OperationType.EXECUTE_STATEMENT)
-      response = webTarget.path(s"api/v1/operations/$statementHandleStr/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      val statementEvent = response.readEntity(classOf[KyuubiOperationEvent])
-      assert(200 == response.getStatus)
-      assert(statementEvent.state == OperationState.INITIALIZED.name())
-
-      // Invalid operationHandleStr
-      val invalidOperationHandle =
-        statementHandleStr.replaceAll("EXECUTE_STATEMENT", "GET_TYPE_INFO")
-      response = webTarget.path(s"api/v1/operations/$invalidOperationHandle/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      assert(404 == response.getStatus)
-    }
+  test("get an operation event") {
+    val catalogsHandleStr = getOpHandleStr(OperationType.GET_CATALOGS)
+    var response = webTarget.path(s"api/v1/operations/$catalogsHandleStr/event")
+      .request(MediaType.APPLICATION_JSON_TYPE).get()
+    val operationEvent = response.readEntity(classOf[KyuubiOperationEvent])
+    assert(200 == response.getStatus)
+    checkOpState(catalogsHandleStr, FINISHED)
+
+    val statementHandleStr = getOpHandleStr(OperationType.EXECUTE_STATEMENT)
+    response = webTarget.path(s"api/v1/operations/$statementHandleStr/event")
+      .request(MediaType.APPLICATION_JSON_TYPE).get()
+    val statementEvent = response.readEntity(classOf[KyuubiOperationEvent])

Review comment:
       ditto

##########
File path: kyuubi-server/src/test/scala/org/apache/kyuubi/server/api/v1/OperationsResourceSuite.scala
##########
@@ -17,116 +17,116 @@
 
 package org.apache.kyuubi.server.api.v1
 
-import javax.ws.rs.client.{Entity, WebTarget}
+import javax.ws.rs.client.Entity
 import javax.ws.rs.core.MediaType
 
 import org.apache.hive.service.rpc.thrift.TProtocolVersion.HIVE_CLI_SERVICE_PROTOCOL_V2
+import org.scalatest.concurrent.PatienceConfiguration.Timeout
+import org.scalatest.time.SpanSugar.convertIntToGrainOfTime
 
 import org.apache.kyuubi.{KyuubiFunSuite, RestFrontendTestHelper}
 import org.apache.kyuubi.events.KyuubiOperationEvent
-import org.apache.kyuubi.operation.{ExecuteStatement, GetCatalogs, OperationState, OperationType}
+import org.apache.kyuubi.operation.{OperationState, OperationType}
+import org.apache.kyuubi.operation.OperationState.{FINISHED, OperationState}
 import org.apache.kyuubi.operation.OperationType.OperationType
-import org.apache.kyuubi.server.KyuubiRestFrontendService
 
 class OperationsResourceSuite extends KyuubiFunSuite with RestFrontendTestHelper {
 
-  test("test get an operation event") {
-    withKyuubiRestServer { (fe, _, _, webTarget) =>
-      val catalogsHandleStr = getOpHandleStr(fe, OperationType.GET_CATALOGS)
-      var response = webTarget.path(s"api/v1/operations/$catalogsHandleStr/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      val operationEvent = response.readEntity(classOf[KyuubiOperationEvent])
-      assert(200 == response.getStatus)
-      assert(operationEvent.state == OperationState.INITIALIZED.name())
-
-      val statementHandleStr = getOpHandleStr(fe, OperationType.EXECUTE_STATEMENT)
-      response = webTarget.path(s"api/v1/operations/$statementHandleStr/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      val statementEvent = response.readEntity(classOf[KyuubiOperationEvent])
-      assert(200 == response.getStatus)
-      assert(statementEvent.state == OperationState.INITIALIZED.name())
-
-      // Invalid operationHandleStr
-      val invalidOperationHandle =
-        statementHandleStr.replaceAll("EXECUTE_STATEMENT", "GET_TYPE_INFO")
-      response = webTarget.path(s"api/v1/operations/$invalidOperationHandle/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      assert(404 == response.getStatus)
-    }
+  test("get an operation event") {
+    val catalogsHandleStr = getOpHandleStr(OperationType.GET_CATALOGS)
+    var response = webTarget.path(s"api/v1/operations/$catalogsHandleStr/event")
+      .request(MediaType.APPLICATION_JSON_TYPE).get()
+    val operationEvent = response.readEntity(classOf[KyuubiOperationEvent])

Review comment:
       never be called.

##########
File path: kyuubi-server/src/test/scala/org/apache/kyuubi/server/api/v1/OperationsResourceSuite.scala
##########
@@ -17,116 +17,116 @@
 
 package org.apache.kyuubi.server.api.v1
 
-import javax.ws.rs.client.{Entity, WebTarget}
+import javax.ws.rs.client.Entity
 import javax.ws.rs.core.MediaType
 
 import org.apache.hive.service.rpc.thrift.TProtocolVersion.HIVE_CLI_SERVICE_PROTOCOL_V2
+import org.scalatest.concurrent.PatienceConfiguration.Timeout
+import org.scalatest.time.SpanSugar.convertIntToGrainOfTime
 
 import org.apache.kyuubi.{KyuubiFunSuite, RestFrontendTestHelper}
 import org.apache.kyuubi.events.KyuubiOperationEvent
-import org.apache.kyuubi.operation.{ExecuteStatement, GetCatalogs, OperationState, OperationType}
+import org.apache.kyuubi.operation.{OperationState, OperationType}
+import org.apache.kyuubi.operation.OperationState.{FINISHED, OperationState}
 import org.apache.kyuubi.operation.OperationType.OperationType
-import org.apache.kyuubi.server.KyuubiRestFrontendService
 
 class OperationsResourceSuite extends KyuubiFunSuite with RestFrontendTestHelper {
 
-  test("test get an operation event") {
-    withKyuubiRestServer { (fe, _, _, webTarget) =>
-      val catalogsHandleStr = getOpHandleStr(fe, OperationType.GET_CATALOGS)
-      var response = webTarget.path(s"api/v1/operations/$catalogsHandleStr/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      val operationEvent = response.readEntity(classOf[KyuubiOperationEvent])
-      assert(200 == response.getStatus)
-      assert(operationEvent.state == OperationState.INITIALIZED.name())
-
-      val statementHandleStr = getOpHandleStr(fe, OperationType.EXECUTE_STATEMENT)
-      response = webTarget.path(s"api/v1/operations/$statementHandleStr/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      val statementEvent = response.readEntity(classOf[KyuubiOperationEvent])
-      assert(200 == response.getStatus)
-      assert(statementEvent.state == OperationState.INITIALIZED.name())
-
-      // Invalid operationHandleStr
-      val invalidOperationHandle =
-        statementHandleStr.replaceAll("EXECUTE_STATEMENT", "GET_TYPE_INFO")
-      response = webTarget.path(s"api/v1/operations/$invalidOperationHandle/event")
-        .request(MediaType.APPLICATION_JSON_TYPE).get()
-      assert(404 == response.getStatus)
-    }
+  test("get an operation event") {
+    val catalogsHandleStr = getOpHandleStr(OperationType.GET_CATALOGS)
+    var response = webTarget.path(s"api/v1/operations/$catalogsHandleStr/event")
+      .request(MediaType.APPLICATION_JSON_TYPE).get()
+    val operationEvent = response.readEntity(classOf[KyuubiOperationEvent])
+    assert(200 == response.getStatus)

Review comment:
       move to `checkOpState`?




-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@kyuubi.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org