This is an automated email from the ASF dual-hosted git repository. csantanapr pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk-package-kafka.git
The following commit(s) were added to refs/heads/master by this push: new e292cd6 Add rule and action to trigger tests which rely upon activation records (#230) e292cd6 is described below commit e292cd642de5e01a6497bce295e4536637623ecb Author: Adnan Baruni <abar...@users.noreply.github.com> AuthorDate: Tue Dec 12 13:53:37 2017 -0600 Add rule and action to trigger tests which rely upon activation records (#230) --- .../test/scala/system/health/BasicHealthTest.scala | 11 ++++++ .../system/packages/MessageHubFeedTests.scala | 43 ++++++++++++++++++++++ .../system/packages/MessageHubProduceTests.scala | 18 +++++++++ 3 files changed, 72 insertions(+) diff --git a/tests/src/test/scala/system/health/BasicHealthTest.scala b/tests/src/test/scala/system/health/BasicHealthTest.scala index c2fa641..cd66269 100644 --- a/tests/src/test/scala/system/health/BasicHealthTest.scala +++ b/tests/src/test/scala/system/health/BasicHealthTest.scala @@ -29,6 +29,7 @@ import org.scalatest.{BeforeAndAfterAll, FlatSpec, Inside, Matchers} import org.scalatest.junit.JUnitRunner import common.JsHelpers import common.TestHelpers +import common.TestUtils import common.TestUtils.DONTCARE_EXIT import common.TestUtils.NOT_FOUND import common.TestUtils.SUCCESS_EXIT @@ -143,6 +144,16 @@ class BasicHealthTest println(s"Trigger already exists, reusing it: $triggerName") } + val defaultAction = Some(TestUtils.getTestActionFilename("hello.js")) + val defaultActionName = "hello" + + assetHelper.withCleaner(wsk.action, defaultActionName) { (action, name) => + action.create(name, defaultAction) + } + assetHelper.withCleaner(wsk.rule, "rule") { (rule, name) => + rule.create(name, trigger = triggerName, action = defaultActionName) + } + retry({ val start = Instant.now(Clock.systemUTC()) // key to use for the produced message diff --git a/tests/src/test/scala/system/packages/MessageHubFeedTests.scala b/tests/src/test/scala/system/packages/MessageHubFeedTests.scala index be1d083..241ad6b 100644 --- a/tests/src/test/scala/system/packages/MessageHubFeedTests.scala +++ b/tests/src/test/scala/system/packages/MessageHubFeedTests.scala @@ -30,6 +30,7 @@ import org.scalatest.junit.JUnitRunner import spray.json.DefaultJsonProtocol._ import spray.json._ import common.JsHelpers +import common.TestUtils import common.TestHelpers import common.Wsk import common.WskActorSystem @@ -67,6 +68,9 @@ class MessageHubFeedTests val wsk = new Wsk() val actionName = s"${messagingPackage}/${messageHubFeed}" + val defaultAction = Some(TestUtils.getTestActionFilename("hello.js")) + val defaultActionName = "hello" + behavior of "Message Hub feed action" it should "reject invocation when topic argument is missing" in { @@ -133,6 +137,13 @@ class MessageHubFeedTests "isBinaryKey" -> true.toJson, "isBinaryValue" -> true.toJson)) + assetHelper.withCleaner(wsk.action, defaultActionName) { (action, name) => + action.create(name, defaultAction) + } + assetHelper.withCleaner(wsk.rule, "rule") { (rule, name) => + rule.create(name, trigger = triggerName, action = defaultActionName) + } + // It takes a moment for the consumer to fully initialize. println("Giving the consumer a moment to get ready") Thread.sleep(consumerInitTime) @@ -197,6 +208,13 @@ class MessageHubFeedTests "isBinaryKey" -> false.toJson, "isBinaryValue" -> false.toJson)) + assetHelper.withCleaner(wsk.action, defaultActionName) { (action, name) => + action.create(name, defaultAction) + } + assetHelper.withCleaner(wsk.rule, "rule") { (rule, name) => + rule.create(name, trigger = triggerName, action = defaultActionName) + } + // It takes a moment for the consumer to fully initialize. println("Giving the consumer a moment to get ready") Thread.sleep(consumerInitTime) @@ -247,6 +265,13 @@ class MessageHubFeedTests "isBinaryKey" -> false.toJson, "isBinaryValue" -> false.toJson)) + assetHelper.withCleaner(wsk.action, defaultActionName) { (action, name) => + action.create(name, defaultAction) + } + assetHelper.withCleaner(wsk.rule, "rule") { (rule, name) => + rule.create(name, trigger = triggerName, action = defaultActionName) + } + // It takes a moment for the consumer to fully initialize. println("Giving the consumer a moment to get ready") Thread.sleep(consumerInitTime) @@ -293,6 +318,17 @@ class MessageHubFeedTests "isBinaryKey" -> false.toJson, "isBinaryValue" -> false.toJson )) + + val run = wsk.action.invoke(actionName, parameters = Map( + "triggerName" -> triggerName.toJson, + "lifecycleEvent" -> "UPDATE".toJson, + "authKey" -> wp.authKey.toJson + )) + + withActivation(wsk.activation, run) { + activation => + activation.response.success shouldBe false + } } it should "reject trigger update when both isJSONData and isBinaryValue are enabled" in withAssetCleaner(wskprops) { @@ -349,6 +385,13 @@ class MessageHubFeedTests "topic" -> topic.toJson )) + assetHelper.withCleaner(wsk.action, defaultActionName) { (action, name) => + action.create(name, defaultAction) + } + assetHelper.withCleaner(wsk.rule, "rule") { (rule, name) => + rule.create(name, trigger = triggerName, action = defaultActionName) + } + println("Giving the consumer a moment to get ready") Thread.sleep(consumerInitTime) diff --git a/tests/src/test/scala/system/packages/MessageHubProduceTests.scala b/tests/src/test/scala/system/packages/MessageHubProduceTests.scala index fb77547..c193648 100644 --- a/tests/src/test/scala/system/packages/MessageHubProduceTests.scala +++ b/tests/src/test/scala/system/packages/MessageHubProduceTests.scala @@ -30,6 +30,7 @@ import org.scalatest.junit.JUnitRunner import common.JsHelpers import common.TestHelpers +import common.TestUtils import common.Wsk import common.WskActorSystem import common.WskProps @@ -64,6 +65,9 @@ class MessageHubProduceTests val kafkaUtils = new KafkaUtils + val defaultAction = Some(TestUtils.getTestActionFilename("hello.js")) + val defaultActionName = "hello" + // these parameter values are 100% valid and should work as-is val validParameters = Map( "user" -> kafkaUtils.getAsJson("user"), @@ -169,6 +173,13 @@ class MessageHubProduceTests activation.response.success shouldBe true } + assetHelper.withCleaner(wsk.action, defaultActionName) { (action, name) => + action.create(name, defaultAction) + } + assetHelper.withCleaner(wsk.rule, "rule") { (rule, name) => + rule.create(name, trigger = triggerName, action = defaultActionName) + } + // It takes a moment for the consumer to fully initialize. println("Giving the consumer a moment to get ready") Thread.sleep(consumerInitTime) @@ -229,6 +240,13 @@ class MessageHubProduceTests activation.response.success shouldBe true } + assetHelper.withCleaner(wsk.action, defaultActionName) { (action, name) => + action.create(name, defaultAction) + } + assetHelper.withCleaner(wsk.rule, "rule") { (rule, name) => + rule.create(name, trigger = triggerName, action = defaultActionName) + } + // It takes a moment for the consumer to fully initialize. println("Giving the consumer a moment to get ready") Thread.sleep(consumerInitTime) -- To stop receiving notification emails like this one, please contact ['"commits@openwhisk.apache.org" <commits@openwhisk.apache.org>'].