You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by du...@apache.org on 2018/02/27 22:01:27 UTC
[incubator-openwhisk-cli] branch master updated: Support new
trigger "rules" field (#227)
This is an automated email from the ASF dual-hosted git repository.
dubeejw pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk-cli.git
The following commit(s) were added to refs/heads/master by this push:
new c080279 Support new trigger "rules" field (#227)
c080279 is described below
commit c0802792e8047dd40bee6475a2dc9a9cdb0c4540
Author: Mark Deuser <md...@us.ibm.com>
AuthorDate: Tue Feb 27 17:01:25 2018 -0500
Support new trigger "rules" field (#227)
* validate the new trigger "rules" field
* Bump client-go commit to pick up it's trigger "rules" support
---
build.gradle | 2 +-
.../test/scala/system/basic/WskBasicTests.scala | 39 ++++++++++++++--------
2 files changed, 27 insertions(+), 14 deletions(-)
diff --git a/build.gradle b/build.gradle
index c071673..c596134 100644
--- a/build.gradle
+++ b/build.gradle
@@ -24,7 +24,7 @@ dependencies {
build(['name':'golang.org/x/sys/unix', 'version':'7f918dd405547ecb864d14a8ecbbfe205b5f930f', 'transitive':false])
build(['name':'gopkg.in/yaml.v2', 'version':'cd8b52f8269e0feb286dfeef29f8fe4d5b397e0b', 'transitive':false])
build(['name':'github.com/ghodss/yaml', 'version':'0ca9ea5df5451ffdf184b4428c902747c2c11cd7', 'transitive':false])
- build(['name':'github.com/apache/incubator-openwhisk-client-go/whisk','version':'72bf7128873a77d9973af0018a5ffad940b4691e','transitive':false])
+ build(['name':'github.com/apache/incubator-openwhisk-client-go/whisk','version':'025300c38d0b790d161d3776d84e1da340e2b202','transitive':false])
// END - Imported from Godeps
test name:'github.com/stretchr/testify', version:'b91bfb9ebec76498946beb6af7c0230c7cc7ba6c', transitive:false //, tag: 'v1.2.0'
test name:'github.com/spf13/viper', version:'aafc9e6bc7b7bb53ddaa75a5ef49a17d6e654be5', transitive:false
diff --git a/tests/src/test/scala/system/basic/WskBasicTests.scala b/tests/src/test/scala/system/basic/WskBasicTests.scala
index bfcdcf5..04ad24d 100644
--- a/tests/src/test/scala/system/basic/WskBasicTests.scala
+++ b/tests/src/test/scala/system/basic/WskBasicTests.scala
@@ -498,8 +498,7 @@ class WskBasicTests extends TestHelpers with WskTestHelpers {
ns + "/" + ruleName -> JsObject(
"action" -> JsObject("name" -> JsString(actionName), "path" -> JsString(ns)),
"status" -> JsString("active")))
-
- // getJSONFromResponse(trigger.stdout, true).fields("rules") shouldBe expectedRules
+ getJSONFromResponse(trigger.stdout, true).fields("rules") shouldBe expectedRules
val dynamicParams = Map("t" -> "T".toJson)
val run = wsk.trigger.fire(triggerName, dynamicParams)
@@ -596,31 +595,45 @@ class WskBasicTests extends TestHelpers with WskTestHelpers {
}
it should "create a trigger, and get its individual fields" in withAssetCleaner(wskprops) {
- val name = "triggerFields"
+ val triggerName = "triggerFields"
+ val ruleName = "triggerFieldsRules"
+ val actionName = "triggerFieldsAction"
val paramInput = Map("payload" -> "test".toJson)
- val successMsg = s"ok: got trigger $name, displaying field"
+ val successMsg = s"ok: got trigger $triggerName, displaying field"
(wp, assetHelper) =>
- assetHelper.withCleaner(wsk.trigger, name) { (trigger, _) =>
+ assetHelper.withCleaner(wsk.trigger, triggerName) { (trigger, name) =>
trigger.create(name, parameters = paramInput)
}
+ assetHelper.withCleaner(wsk.action, actionName) { (action, name) =>
+ action.create(name, defaultAction)
+ }
+ assetHelper.withCleaner(wsk.rule, ruleName) { (rule, name) =>
+ rule.create(name, trigger = triggerName, action = actionName)
+ }
val expectedParam = JsObject("payload" -> JsString("test"))
val ns = wsk.namespace.whois()
wsk.trigger
- .get(name, fieldFilter = Some("namespace"))
+ .get(triggerName, fieldFilter = Some("namespace"))
.stdout should include regex (s"""(?i)$successMsg namespace\n"$ns"""")
- wsk.trigger.get(name, fieldFilter = Some("name")).stdout should include(s"""$successMsg name\n"$name"""")
- wsk.trigger.get(name, fieldFilter = Some("version")).stdout should include(s"""$successMsg version\n"0.0.1"""")
- wsk.trigger.get(name, fieldFilter = Some("publish")).stdout should include(s"""$successMsg publish\nfalse""")
- wsk.trigger.get(name, fieldFilter = Some("annotations")).stdout should include(s"""$successMsg annotations\n[]""")
+ wsk.trigger.get(triggerName, fieldFilter = Some("name")).stdout should include(s"""$successMsg name\n"$triggerName"""")
+ wsk.trigger.get(triggerName, fieldFilter = Some("version")).stdout should include(s"""$successMsg version\n"0.0.1"""")
+ wsk.trigger.get(triggerName, fieldFilter = Some("publish")).stdout should include(s"""$successMsg publish\nfalse""")
+ wsk.trigger.get(triggerName, fieldFilter = Some("annotations")).stdout should include(s"""$successMsg annotations\n[]""")
wsk.trigger
- .get(name, fieldFilter = Some("parameters"))
+ .get(triggerName, fieldFilter = Some("parameters"))
.stdout should include regex (s"""$successMsg parameters\n\\[\\s+\\{\\s+"key":\\s+"payload",\\s+"value":\\s+"test"\\s+\\}\\s+\\]""")
- wsk.trigger.get(name, fieldFilter = Some("limits")).stdout should include(s"""$successMsg limits\n{}""")
- wsk.trigger.get(name, fieldFilter = Some("invalid"), expectedExitCode = ERROR_EXIT).stderr should include(
+ wsk.trigger.get(triggerName, fieldFilter = Some("limits")).stdout should include(s"""$successMsg limits\n{}""")
+ wsk.trigger.get(triggerName, fieldFilter = Some("invalid"), expectedExitCode = ERROR_EXIT).stderr should include(
"error: Invalid field filter 'invalid'.")
+
+ val expectedRules = JsObject(
+ ns + "/" + ruleName -> JsObject(
+ "action" -> JsObject("name" -> JsString(actionName), "path" -> JsString(ns)),
+ "status" -> JsString("active")))
+ getJSONFromResponse(wsk.trigger.get(triggerName, fieldFilter = Some("rules")).stdout, isCli = true) shouldBe expectedRules
}
it should "create, and fire a trigger to ensure result is empty" in withAssetCleaner(wskprops) { (wp, assetHelper) =>
--
To stop receiving notification emails like this one, please contact
dubeejw@apache.org.