summaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorEmmanuel Raviart <eraviart@entrouvert.com>2004-07-23 16:21:43 +0000
committerEmmanuel Raviart <eraviart@entrouvert.com>2004-07-23 16:21:43 +0000
commit0dfb6a9d007d35b3d314abf1056dae09d65ba2c2 (patch)
treed50c1ff3a744550331d26ccc28b8590c2a453d4e /java
parent41b36be1f4a88dde81ef10ba83199afd37e94524 (diff)
downloadlasso-0dfb6a9d007d35b3d314abf1056dae09d65ba2c2.tar.gz
lasso-0dfb6a9d007d35b3d314abf1056dae09d65ba2c2.tar.xz
lasso-0dfb6a9d007d35b3d314abf1056dae09d65ba2c2.zip
First non regression test that supports full logout procedure... and shows a
bug.
Diffstat (limited to 'java')
-rw-r--r--java/src/c/com_entrouvert_lasso_LassoLogout.c13
-rw-r--r--java/src/java/com/entrouvert/lasso/LassoLogout.java2
-rw-r--r--java/tests/LoginTest.java2
3 files changed, 17 insertions, 0 deletions
diff --git a/java/src/c/com_entrouvert_lasso_LassoLogout.c b/java/src/c/com_entrouvert_lasso_LassoLogout.c
index 1d45caf7..62f34020 100644
--- a/java/src/c/com_entrouvert_lasso_LassoLogout.c
+++ b/java/src/c/com_entrouvert_lasso_LassoLogout.c
@@ -69,6 +69,19 @@ JNIEXPORT jint JNICALL Java_com_entrouvert_lasso_LassoLogout_buildResponseMsg
}
+JNIEXPORT jstring JNICALL Java_com_entrouvert_lasso_LassoLogout_getNextProviderId
+(JNIEnv * env, jobject this){
+ char* result;
+ LassoLogout* logout;
+
+ logout = getCObject(env, this);
+ result = lasso_logout_get_next_providerID(logout);
+ if (! result)
+ return NULL;
+ return (*env)->NewStringUTF(env, result);
+}
+
+
JNIEXPORT jint JNICALL Java_com_entrouvert_lasso_LassoLogout_initRequest
(JNIEnv * env, jobject this, jstring _providerID){
int result;
diff --git a/java/src/java/com/entrouvert/lasso/LassoLogout.java b/java/src/java/com/entrouvert/lasso/LassoLogout.java
index 2c9c6862..d5c465a2 100644
--- a/java/src/java/com/entrouvert/lasso/LassoLogout.java
+++ b/java/src/java/com/entrouvert/lasso/LassoLogout.java
@@ -38,6 +38,8 @@ public class LassoLogout extends LassoProfileContext { // LassoLogout
native public int buildResponseMsg();
+ native public String getNextProviderId();
+
native public int initRequest(String providerId);
native public int processRequestMsg(String requestMsg, int requestMethod);
diff --git a/java/tests/LoginTest.java b/java/tests/LoginTest.java
index 328a0f15..cf853c49 100644
--- a/java/tests/LoginTest.java
+++ b/java/tests/LoginTest.java
@@ -183,6 +183,8 @@ public class LoginTest extends TestCase {
assertNotNull(idpUserContext);
idpLogoutContext = new LassoLogout(idpContext, idpUserContext, Lasso.providerTypeIdp);
assertEquals(idpLogoutContext.processRequestMsg(soapRequestMsg, Lasso.httpMethodSoap), 0);
+ // There is no other service provider from which the user must be logged out.
+ assertEquals(idpLogoutContext.getNextProviderId(), null);
assertEquals(idpLogoutContext.buildResponseMsg(), 0);
soapResponseMsg = idpLogoutContext.getMsgBody();