You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by ho...@apache.org on 2017/07/17 14:10:29 UTC
[incubator-openwhisk-cli] 06/09: API GW V2 updates (#2436)
This is an automated email from the ASF dual-hosted git repository.
houshengbo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk-cli.git
commit 5b47f4f5c3d844e331c658985b65227e952c9060
Author: Mark Deuser <md...@us.ibm.com>
AuthorDate: Wed Jul 12 12:46:04 2017 -0400
API GW V2 updates (#2436)
- Do not enforce need for gwUrl parameter in api gw actions
- Enable http redirect forwarding
- Add automated test to validate rejection of api creation with invalid auth key
---
.../actions/test/ApiGwRoutemgmtActionTests.scala | 8 ++---
.../scala/whisk/core/cli/test/ApiGwTests.scala | 35 ++++++++++++++++++++--
2 files changed, 37 insertions(+), 6 deletions(-)
diff --git a/tests/src/test/scala/whisk/core/apigw/actions/test/ApiGwRoutemgmtActionTests.scala b/tests/src/test/scala/whisk/core/apigw/actions/test/ApiGwRoutemgmtActionTests.scala
index 5e8b5dd..5a0f97c 100644
--- a/tests/src/test/scala/whisk/core/apigw/actions/test/ApiGwRoutemgmtActionTests.scala
+++ b/tests/src/test/scala/whisk/core/apigw/actions/test/ApiGwRoutemgmtActionTests.scala
@@ -427,10 +427,10 @@ class ApiGwRoutemgmtActionTests
it should "reject routemgmt actions that are invoked with not enough parameters" in {
val invalidArgs = Seq(
//getApi
- ("/whisk.system/routemgmt/getApi", ANY_ERROR_EXIT, "__ow_user is required", Seq()),
+ ("/whisk.system/routemgmt/getApi", ANY_ERROR_EXIT, "Invalid authentication.", Seq()),
//deleteApi
- ("/whisk.system/routemgmt/deleteApi", ANY_ERROR_EXIT, "__ow_user is required", Seq("-p", "basepath", "/ApiGwRoutemgmtActionTests_bp")),
+ ("/whisk.system/routemgmt/deleteApi", ANY_ERROR_EXIT, "Invalid authentication.", Seq("-p", "basepath", "/ApiGwRoutemgmtActionTests_bp")),
("/whisk.system/routemgmt/deleteApi", ANY_ERROR_EXIT, "basepath is required", Seq("-p", "__ow_user", "_")),
("/whisk.system/routemgmt/deleteApi", ANY_ERROR_EXIT, "When specifying an operation, the path is required",
Seq("-p", "__ow_user", "_", "-p", "basepath", "/ApiGwRoutemgmtActionTests_bp", "-p", "operation", "get")),
@@ -560,10 +560,10 @@ class ApiGwRoutemgmtActionTests
it should "reject apimgmt actions that are invoked with not enough parameters" in {
val invalidArgs = Seq(
//getApi
- ("/whisk.system/apimgmt/getApi", ANY_ERROR_EXIT, "__ow_user is required", Seq()),
+ ("/whisk.system/apimgmt/getApi", ANY_ERROR_EXIT, "Invalid authentication.", Seq()),
//deleteApi
- ("/whisk.system/apimgmt/deleteApi", ANY_ERROR_EXIT, "__ow_user is required", Seq("-p", "basepath", "/ApiGwRoutemgmtActionTests_bp")),
+ ("/whisk.system/apimgmt/deleteApi", ANY_ERROR_EXIT, "Invalid authentication.", Seq("-p", "basepath", "/ApiGwRoutemgmtActionTests_bp")),
("/whisk.system/apimgmt/deleteApi", ANY_ERROR_EXIT, "basepath is required", Seq("-p", "__ow_user", "_", "-p", "accesstoken", "TOKEN")),
("/whisk.system/apimgmt/deleteApi", ANY_ERROR_EXIT, "When specifying an operation, the path is required",
Seq("-p", "__ow_user", "_", "-p", "accesstoken", "TOKEN", "-p", "basepath", "/ApiGwRoutemgmtActionTests_bp", "-p", "operation", "get")),
diff --git a/tests/src/test/scala/whisk/core/cli/test/ApiGwTests.scala b/tests/src/test/scala/whisk/core/cli/test/ApiGwTests.scala
index 2a0a1d5..aadb929 100644
--- a/tests/src/test/scala/whisk/core/cli/test/ApiGwTests.scala
+++ b/tests/src/test/scala/whisk/core/cli/test/ApiGwTests.scala
@@ -43,7 +43,7 @@ class ApiGwTests
with WskTestHelpers
with BeforeAndAfterAll {
- implicit val wskprops = WskProps()
+ implicit var wskprops = WskProps()
val wsk = new Wsk
val (cliuser, clinamespace) = WskAdmin.getUser(wskprops.authKey)
@@ -1194,7 +1194,7 @@ class ApiGwTests
it should "reject creation of an API from invalid YAML formatted API configuration file" in {
val testName = "CLI_APIGWTEST22"
- val testbasepath = "/bp"
+ val testbasepath = "/"+testName+"_bp"
val swaggerPath = TestCLIUtils.getTestApiGwFilename(s"local.api.bad.yaml")
try {
var rr = apiCreate(swagger = Some(swaggerPath), expectedExitCode = ANY_ERROR_EXIT)
@@ -1245,4 +1245,35 @@ class ApiGwTests
val deleteresult = apiDelete(basepathOrApiName = testbasepath, expectedExitCode = DONTCARE_EXIT)
}
}
+
+ it should "reject creation of an API with invalid auth key" in {
+ val testName = "CLI_APIGWTEST24"
+ val testbasepath = "/" + testName + "_bp"
+ val testrelpath = "/path"
+ val testurlop = "get"
+ val testapiname = testName + " API Name"
+ val actionName = testName + "_action"
+ val wskpropsBackup = wskprops
+ try {
+ // Create the action for the API.
+ val file = TestUtils.getTestActionFilename(s"echo.js")
+ wsk.action.create(name = actionName, artifact = Some(file), expectedExitCode = SUCCESS_EXIT, web = Some("true"))
+
+ // Set an invalid auth key
+ wskprops = WskProps(authKey = "bad-auth-key")
+
+ var rr = apiCreate(
+ basepath = Some(testbasepath),
+ relpath = Some(testrelpath),
+ operation = Some(testurlop),
+ action = Some(actionName),
+ apiname = Some(testapiname),
+ expectedExitCode = ANY_ERROR_EXIT)
+ rr.stderr should include("The supplied authentication is invalid")
+ } finally {
+ wskprops = wskpropsBackup
+ val finallydeleteActionResult = wsk.action.delete(name = actionName, expectedExitCode = DONTCARE_EXIT)
+ var deleteresult = apiDelete(basepathOrApiName = testbasepath, expectedExitCode = DONTCARE_EXIT)
+ }
+ }
}
--
To stop receiving notification emails like this one, please contact
"commits@openwhisk.apache.org" <co...@openwhisk.apache.org>.