You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by md...@apache.org on 2018/07/03 20:20:49 UTC
[incubator-openwhisk] 03/19: Delete really dated sequence schema
related tests.
This is an automated email from the ASF dual-hosted git repository.
mdeuser pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk.git
commit 80d1cf77acda0e18005be62769946db02ab81227
Author: Rodric Rabbah <ro...@gmail.com>
AuthorDate: Fri Jun 8 10:42:13 2018 -0400
Delete really dated sequence schema related tests.
---
tests/dat/actions/seq_echo_word_count.json | 25 ----
tests/dat/actions/seq_type_2.json | 33 -----
.../core/cli/test/SequenceMigrationTests.scala | 137 ---------------------
3 files changed, 195 deletions(-)
diff --git a/tests/dat/actions/seq_echo_word_count.json b/tests/dat/actions/seq_echo_word_count.json
deleted file mode 100644
index 984058b..0000000
--- a/tests/dat/actions/seq_echo_word_count.json
+++ /dev/null
@@ -1,25 +0,0 @@
-{
- "annotations": [],
- "exec": {
- "binary": false,
- "code": "/**\n * Invokes a sequence of actions, piping the output of each to the input of the next.\n *\n * @param _actions An array of action names to invoke.\n * @param <everything else> Passed as input to the first action.\n */\nfunction main(msg) {\n // The actions to invoke sequentially.\n var actions = msg['_actions'];\n\n if (typeof actions === 'string') {\n try {\n actions = JSON.parse(actions);\n } catch (e) {\n return whisk.e [...]
- "kind": "nodejs:6"
- },
- "limits": {
- "logs": 10,
- "memory": 256,
- "timeout": 60000
- },
- "name": "seq_echo_word_count",
- "parameters": [
- {
- "key": "_actions",
- "value": [
- "/_/echo",
- "/_/word_count"
- ]
- }
- ],
- "publish": false,
- "version": "0.0.1"
-}
diff --git a/tests/dat/actions/seq_type_2.json b/tests/dat/actions/seq_type_2.json
deleted file mode 100644
index 69495ee..0000000
--- a/tests/dat/actions/seq_type_2.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "annotations": [
- {
- "key": "exec",
- "value": "sequence"
- }
- ],
- "exec": {
- "code": "\n/**\n * Invokes a sequence of actions, piping the output of each to the input of the next.\n *\n * @param _actions An array of action names to invoke.\n * @param <everything else> Passed as input to the first action.\n */\nfunction main(msg) {\n // The actions to invoke sequentially.\n var actions = msg['_actions'];\n\n if (typeof actions === 'string') {\n try {\n actions = JSON.parse(actions);\n } catch (e) {\n return whisk [...]
- "components": [
- "/_/echo",
- "/_/word_count"
- ],
- "kind": "sequence"
- },
- "limits": {
- "logs": 10,
- "memory": 256,
- "timeout": 60000
- },
- "name": "seq_type_2",
- "parameters": [
- {
- "key": "_actions",
- "value": [
- "/_/echo",
- "/_/word_count"
- ]
- }
- ],
- "publish": false,
- "version": "0.0.1"
-}
\ No newline at end of file
diff --git a/tests/src/test/scala/whisk/core/cli/test/SequenceMigrationTests.scala b/tests/src/test/scala/whisk/core/cli/test/SequenceMigrationTests.scala
deleted file mode 100644
index bdf604e..0000000
--- a/tests/src/test/scala/whisk/core/cli/test/SequenceMigrationTests.scala
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package whisk.core.cli.test
-
-import java.util.Date
-
-import scala.concurrent.duration.DurationInt
-import scala.language.postfixOps
-
-import org.junit.runner.RunWith
-import org.scalatest.BeforeAndAfter
-import org.scalatest.junit.JUnitRunner
-
-import akka.stream.ActorMaterializer
-import common.TestHelpers
-import common.TestUtils
-import common.rest.WskRest
-import common.WskProps
-import common.WskTestHelpers
-import spray.json._
-import spray.json.DefaultJsonProtocol.StringJsonFormat
-import whisk.core.database.test.DbUtils
-import whisk.core.entity._
-import whisk.core.entity.test.ExecHelpers
-
-/**
- * Tests that "old-style" sequences can be invoked
- */
-@RunWith(classOf[JUnitRunner])
-class SequenceMigrationTests extends TestHelpers with BeforeAndAfter with DbUtils with ExecHelpers with WskTestHelpers {
-
- implicit val matzerializer = ActorMaterializer()
- implicit val wskprops = WskProps()
- val wsk = new WskRest
- // handle on the entity datastore
- val entityStore = WhiskEntityStore.datastore()
- val namespace = wsk.namespace.whois()
- val allowedActionDuration = 120 seconds
-
- override protected def withFixture(test: NoArgTest) = {
- assume(!isMemoryStore(entityStore))
- super.withFixture(test)
- }
-
- behavior of "Sequence Migration"
-
- it should "check default namespace '_' is preserved in WhiskAction of old style sequence" in {
- // read json file and add the appropriate namespace
- val seqJsonFile = "seq_type_2.json"
- val jsonFile = TestUtils.getTestActionFilename(seqJsonFile)
- val source = scala.io.Source.fromFile(jsonFile)
- val jsonString = try source.mkString
- finally source.close()
- val entityJson = jsonString.parseJson.asJsObject
- // add default namespace (i.e., user) to the json object
- val entityJsonWithNamespace = JsObject(entityJson.fields + ("namespace" -> JsString(namespace)))
- val wskEntity = entityJsonWithNamespace.convertTo[WhiskAction]
- wskEntity.exec match {
- case SequenceExec(components) =>
- // check '_' is preserved
- components.size shouldBe 2
- assert(components.forall { _.path.namespace.contains('_') }, "default namespace lost")
- case _ => assert(false)
- }
- }
-
- it should "invoke an old-style (kind sequence) sequence and get the result" in {
- val seqName = "seq_type_2"
- testOldStyleSequence(seqName, s"$seqName.json")
- }
-
- it should "not display code from an old sequence on action get" in {
- // install sequence in db
- val seqName = "seq_type_2"
- installActionInDb(s"$seqName.json")
- val stdout = wsk.action.get(seqName).stdout
- stdout.contains("code") shouldBe false
- }
-
- /**
- * helper function that tests old style sequence based on two actions echo and word_count
- * @param seqName the name of the sequence
- * @param seqFileName the name of the json file that contains the whisk action associated with the sequence
- */
- private def testOldStyleSequence(seqName: String, seqFileName: String) = {
- // create entities to insert in the entity store
- val echo = "echo.json"
- val wc = "word_count.json"
- val entities = Seq(echo, wc, seqFileName)
- for (entity <- entities) {
- installActionInDb(entity)
- }
- // invoke sequence
- val now = "it is now " + new Date()
- val run = wsk.action.invoke(seqName, Map("payload" -> now.mkString("\n").toJson))
- withActivation(wsk.activation, run, totalWait = allowedActionDuration) { activation =>
- val result = activation.response.result.get
- result.fields.get("count") shouldBe Some(JsNumber(now.split(" ").size))
- }
- }
-
- /**
- * helper function that takes a json file containing a whisk action (minus the namespace), adds namespace and installs in db
- */
- private def installActionInDb(actionJson: String) = {
- // read json file and add the appropriate namespace
- val jsonFile = TestUtils.getTestActionFilename(actionJson)
- val source = scala.io.Source.fromFile(jsonFile)
- val jsonString = try source.mkString
- finally source.close()
- val entityJson = jsonString.parseJson.asJsObject
- // add default namespace (i.e., user) to the json object
- val entityJsonWithNamespace = JsObject(entityJson.fields + ("namespace" -> JsString(namespace)))
- val wskEntity = entityJsonWithNamespace.convertTo[WhiskAction]
- implicit val tid = transid() // needed for put db below
- put(entityStore, wskEntity)
- }
-
- after {
- cleanup() // cleanup entities from db
- }
-}