You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by ja...@apache.org on 2012/04/13 10:33:15 UTC

svn commit: r1325651 - in /rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src: main/java/org/apache/rave/gadgets/oauth/service/impl/ test/java/org/apache/rave/gadgets/oauth/repository/ test/java/org/apache/rave/gadgets/oauth/se...

Author: jasha
Date: Fri Apr 13 08:33:14 2012
New Revision: 1325651

URL: http://svn.apache.org/viewvc?rev=1325651&view=rev
Log:
RAVE-559 JPA error on deletion of OAuthTokenInfo
add @Transactional to delete OAuthToken info
add unit tests for deletion through service and directly calling repository

Modified:
    rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthTokenInfoService.java
    rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/repository/JpaOAuthTokenInfoRepositoryTest.java
    rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/service/DefaultOAuthTokenInfoServiceTest.java

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthTokenInfoService.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthTokenInfoService.java?rev=1325651&r1=1325650&r2=1325651&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthTokenInfoService.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/main/java/org/apache/rave/gadgets/oauth/service/impl/DefaultOAuthTokenInfoService.java Fri Apr 13 08:33:14 2012
@@ -24,6 +24,7 @@ import org.apache.rave.gadgets.oauth.rep
 import org.apache.rave.gadgets.oauth.service.OAuthTokenInfoService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 /**
  * Implementation of {@link OAuthTokenInfoService}
@@ -58,6 +59,7 @@ public class DefaultOAuthTokenInfoServic
      * {@inheritDoc}
      */
     @Override
+    @Transactional
     public void deleteOAuthTokenInfo(String userId, String appUrl, String moduleId, String tokenName,
                                      String serviceName) {
         final OAuthTokenInfo oAuthTokenInfo =

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/repository/JpaOAuthTokenInfoRepositoryTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/repository/JpaOAuthTokenInfoRepositoryTest.java?rev=1325651&r1=1325650&r2=1325651&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/repository/JpaOAuthTokenInfoRepositoryTest.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/repository/JpaOAuthTokenInfoRepositoryTest.java Fri Apr 13 08:33:14 2012
@@ -19,17 +19,19 @@
 
 package org.apache.rave.gadgets.oauth.repository;
 
-import javax.persistence.EntityManager;
-import javax.persistence.PersistenceContext;
-
 import org.apache.rave.gadgets.oauth.model.OAuthTokenInfo;
+import org.apache.rave.gadgets.oauth.service.OAuthTokenInfoService;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.test.annotation.Rollback;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
@@ -55,6 +57,9 @@ public class JpaOAuthTokenInfoRepository
     @Autowired
     OAuthTokenInfoRepository repository;
 
+    @Autowired
+    OAuthTokenInfoService service;
+
     @Test
     public void testFindOAuthTokenInfo() throws Exception {
         OAuthTokenInfo tokenInfo = repository.findOAuthTokenInfo(VALID_USER,
@@ -69,4 +74,29 @@ public class JpaOAuthTokenInfoRepository
                 APP_URL, OAuthTokenInfo.MODULE_ID, TOKEN_NAME, SERVICE_NAME);
         assertNull(tokenInfo);
     }
+
+    @Test
+    @Rollback
+    public void testDeleteOAuthTokenInfo() throws Exception {
+        OAuthTokenInfo tokenInfo = repository.findOAuthTokenInfo(VALID_USER,
+                APP_URL, OAuthTokenInfo.MODULE_ID, TOKEN_NAME, SERVICE_NAME);
+        assertNotNull(tokenInfo);
+        repository.delete(tokenInfo);
+        tokenInfo = repository.findOAuthTokenInfo(VALID_USER,
+                APP_URL, OAuthTokenInfo.MODULE_ID, TOKEN_NAME, SERVICE_NAME);
+        assertNull(tokenInfo);
+    }
+
+    @Test
+    @Rollback
+    public void testDeleteOAuthTokenInfo_ThroughService() throws Exception {
+        OAuthTokenInfo tokenInfo = repository.findOAuthTokenInfo(VALID_USER,
+                APP_URL, OAuthTokenInfo.MODULE_ID, TOKEN_NAME, SERVICE_NAME);
+        assertNotNull(tokenInfo);
+        service.deleteOAuthTokenInfo(VALID_USER, APP_URL, OAuthTokenInfo.MODULE_ID, TOKEN_NAME, SERVICE_NAME);
+        tokenInfo = repository.findOAuthTokenInfo(VALID_USER,
+                APP_URL, OAuthTokenInfo.MODULE_ID, TOKEN_NAME, SERVICE_NAME);
+        assertNull(tokenInfo);
+    }
+
 }

Modified: rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/service/DefaultOAuthTokenInfoServiceTest.java
URL: http://svn.apache.org/viewvc/rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/service/DefaultOAuthTokenInfoServiceTest.java?rev=1325651&r1=1325650&r2=1325651&view=diff
==============================================================================
--- rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/service/DefaultOAuthTokenInfoServiceTest.java (original)
+++ rave/trunk/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/gadgets/oauth/service/DefaultOAuthTokenInfoServiceTest.java Fri Apr 13 08:33:14 2012
@@ -30,7 +30,9 @@ import org.junit.Test;
 import static junit.framework.Assert.assertEquals;
 import static org.easymock.EasyMock.createNiceMock;
 import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.expectLastCall;
 import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertNull;
 
@@ -85,6 +87,18 @@ public class DefaultOAuthTokenInfoServic
 
     }
 
+    @Test
+    public void testDeleteOAuthTokenInfo() {
+        OAuthTokenInfo dbOAuthTokenInfo = getOAuthTokenInfo();
+        expect(repository.findOAuthTokenInfo(VALID_USER, APP_URL, NOT_USED, TOKEN_NAME, SERVICE_NAME))
+                .andReturn(dbOAuthTokenInfo);
+        repository.delete(dbOAuthTokenInfo);
+        expectLastCall();
+        replay(repository);
+        service.deleteOAuthTokenInfo(VALID_USER, APP_URL, NOT_USED, TOKEN_NAME, SERVICE_NAME);
+        verify(repository);
+    }
+
     private OAuthTokenInfo getOAuthTokenInfo() {
         expect(securityToken.getAppUrl()).andReturn(APP_URL);
         expect(tokenInfo.getAccessToken()).andReturn("accessToken");