You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@oltu.apache.org by to...@apache.org on 2010/12/18 18:06:22 UTC
svn commit: r1050674 [2/2] - in
/incubator/amber/trunk/oauth-2.0/oauth2-resourceserver: ./ src/ src/main/
src/main/java/ src/main/java/org/ src/main/java/org/apache/
src/main/java/org/apache/amber/ src/main/java/org/apache/amber/oauth2/
src/main/java/o...
Added: incubator/amber/trunk/oauth-2.0/oauth2-resourceserver/src/test/java/org/apache/amber/oauth2/rs/validator/QueryOAuthValidatorTest.java
URL: http://svn.apache.org/viewvc/incubator/amber/trunk/oauth-2.0/oauth2-resourceserver/src/test/java/org/apache/amber/oauth2/rs/validator/QueryOAuthValidatorTest.java?rev=1050674&view=auto
==============================================================================
--- incubator/amber/trunk/oauth-2.0/oauth2-resourceserver/src/test/java/org/apache/amber/oauth2/rs/validator/QueryOAuthValidatorTest.java (added)
+++ incubator/amber/trunk/oauth-2.0/oauth2-resourceserver/src/test/java/org/apache/amber/oauth2/rs/validator/QueryOAuthValidatorTest.java Sat Dec 18 17:06:20 2010
@@ -0,0 +1,120 @@
+/**
+ * Copyright 2010 Newcastle University
+ *
+ * http://research.ncl.ac.uk/smart/
+ *
+ * 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 org.apache.amber.oauth2.rs.validator;
+
+import javax.servlet.http.HttpServletRequest;
+
+import junit.framework.Assert;
+
+import org.apache.amber.oauth2.common.OAuth;
+import org.apache.amber.oauth2.common.error.OAuthError;
+import org.apache.amber.oauth2.common.exception.OAuthProblemException;
+import org.apache.amber.oauth2.rs.validator.QueryOAuthValidator;
+import org.junit.Test;
+import org.apache.amber.oauth2.common.utils.OAuthUtils;
+
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+
+/**
+ * @author Maciej Machulak (m.p.machulak@ncl.ac.uk)
+ * @author Lukasz Moren (lukasz.moren@ncl.ac.uk)
+ * @author Aad van Moorsel (aad.vanmoorsel@ncl.ac.uk)
+ */
+public class QueryOAuthValidatorTest {
+
+
+ @Test
+ public void testValidateWrongVersion() throws Exception {
+
+ HttpServletRequest request = createMock(HttpServletRequest.class);
+ expect(request.getParameter(OAuth.OAUTH_VERSION_DIFFER)).andStubReturn("HMAC-SHA1");
+ expect(request.getParameterValues(OAuth.OAUTH_TOKEN)).andStubReturn(new String[] {"access_token"});
+ replay(request);
+ try {
+ QueryOAuthValidator qov = new QueryOAuthValidator();
+ qov.performAllValidations(request);
+ Assert.fail("Exception not thrown.");
+ } catch (OAuthProblemException e) {
+ Assert.assertEquals(OAuthError.TokenResponse.INVALID_REQUEST, e.getError());
+ Assert.assertEquals("Incorrect OAuth version. Found OAuth V1.0.", e.getDescription());
+ }
+ verify(request);
+
+ }
+
+ @Test
+ public void testValidateNoQuery() throws Exception {
+
+ HttpServletRequest request = createMock(HttpServletRequest.class);
+ expect(request.getParameter(OAuth.OAUTH_VERSION_DIFFER)).andStubReturn(null);
+ expect(request.getParameterValues(OAuth.OAUTH_TOKEN)).andStubReturn(null);
+ replay(request);
+ try {
+ QueryOAuthValidator qov = new QueryOAuthValidator();
+ qov.performAllValidations(request);
+ Assert.fail("Exception not thrown.");
+ } catch (OAuthProblemException e) {
+ org.junit.Assert.assertTrue(OAuthUtils.isEmpty(e.getError()));
+ Assert.assertEquals("Missing OAuth token.", e.getDescription());
+ }
+ verify(request);
+
+ }
+
+ @Test
+ public void testValidateMultipleTokens() throws Exception {
+
+ HttpServletRequest request = createMock(HttpServletRequest.class);
+ expect(request.getParameter(OAuth.OAUTH_VERSION_DIFFER)).andStubReturn(null);
+ expect(request.getParameterValues(OAuth.OAUTH_TOKEN))
+ .andStubReturn(new String[] {"access_token1", "access_token2"});
+ replay(request);
+ try {
+ QueryOAuthValidator qov = new QueryOAuthValidator();
+ qov.performAllValidations(request);
+ Assert.fail("Exception not thrown.");
+ } catch (OAuthProblemException e) {
+ Assert.assertEquals(OAuthError.TokenResponse.INVALID_REQUEST, e.getError());
+ Assert.assertEquals("Multiple tokens attached.", e.getDescription());
+ }
+ verify(request);
+
+ }
+
+ @Test
+ public void testValidateToken() throws Exception {
+
+ HttpServletRequest request = createMock(HttpServletRequest.class);
+ expect(request.getParameter(OAuth.OAUTH_VERSION_DIFFER)).andStubReturn(null);
+ expect(request.getParameterValues(OAuth.OAUTH_TOKEN)).andStubReturn(new String[] {"access_token1"});
+ replay(request);
+ QueryOAuthValidator qov = new QueryOAuthValidator();
+ qov.performAllValidations(request);
+ verify(request);
+
+ }
+
+
+}
Propchange: incubator/amber/trunk/oauth-2.0/oauth2-resourceserver/src/test/java/org/apache/amber/oauth2/rs/validator/QueryOAuthValidatorTest.java
------------------------------------------------------------------------------
svn:eol-style = native