Author: olamy
Date: Mon Aug 29 21:43:12 2011
New Revision: 1163029

URL: http://svn.apache.org/viewvc?rev=1163029&view=rev
Log:
test we pass in audit event listener

Added:
    
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/mock/
    
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/mock/MockAuditListener.java
      - copied, changed from r1163027, 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java
Modified:
    
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java
    
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
    
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/resources/spring-context.xml
    
archiva/trunk/archiva-modules/plugins/audit/src/main/java/org/apache/archiva/audit/AuditEvent.java

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java?rev=1163029&r1=1163028&r2=1163029&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java
 Mon Aug 29 21:43:12 2011
@@ -55,4 +55,15 @@ public class AuditInformation
     {
         this.remoteAddr = remoteAddr;
     }
+
+    @Override
+    public String toString()
+    {
+        final StringBuilder sb = new StringBuilder();
+        sb.append( "AuditInformation" );
+        sb.append( "{user=" ).append( user );
+        sb.append( ", remoteAddr='" ).append( remoteAddr ).append( '\'' );
+        sb.append( '}' );
+        return sb.toString();
+    }
 }

Copied: 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/mock/MockAuditListener.java
 (from r1163027, 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java)
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/mock/MockAuditListener.java?p2=archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/mock/MockAuditListener.java&p1=archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java&r1=1163027&r2=1163029&rev=1163029&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/main/java/org/apache/archiva/admin/AuditInformation.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/mock/MockAuditListener.java
 Mon Aug 29 21:43:12 2011
@@ -1,4 +1,4 @@
-package org.apache.archiva.admin;
+package org.apache.archiva.admin.mock;
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -18,41 +18,35 @@ package org.apache.archiva.admin;
  * under the License.
  */
 
-import org.codehaus.plexus.redback.users.User;
+import org.apache.archiva.audit.AuditEvent;
+import org.apache.archiva.audit.AuditListener;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * @author Olivier Lamy
- * @since 1.4
  */
-public class AuditInformation
+@Service( "auditListener#mock" )
+public class MockAuditListener
+    implements AuditListener
 {
-    private User user;
-
-    private String remoteAddr;
 
-    public AuditInformation( User user, String remoteAddr )
-    {
-        this.user = user;
-        this.remoteAddr = remoteAddr;
-    }
-
-    public User getUser()
-    {
-        return user;
-    }
+    private List<AuditEvent> auditEvents = new ArrayList<AuditEvent>();
 
-    public void setUser( User user )
+    public void auditEvent( AuditEvent event )
     {
-        this.user = user;
+        auditEvents.add( event );
     }
 
-    public String getRemoteAddr()
+    public List<AuditEvent> getAuditEvents()
     {
-        return remoteAddr;
+        return auditEvents;
     }
 
-    public void setRemoteAddr( String remoteAddr )
+    public void clearEvents()
     {
-        this.remoteAddr = remoteAddr;
+        auditEvents.clear();
     }
 }

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java?rev=1163029&r1=1163028&r2=1163029&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/java/org/apache/archiva/admin/repository/managed/ManagedRepositoryAdminTest.java
 Mon Aug 29 21:43:12 2011
@@ -19,6 +19,7 @@ package org.apache.archiva.admin.reposit
  */
 
 import org.apache.archiva.admin.AuditInformation;
+import org.apache.archiva.admin.mock.MockAuditListener;
 import org.apache.commons.lang.StringUtils;
 import org.codehaus.plexus.redback.users.User;
 import org.codehaus.plexus.redback.users.memory.SimpleUser;
@@ -38,10 +39,14 @@ public class ManagedRepositoryAdminTest
     @Inject
     private ManagedRepositoryAdmin managedRepositoryAdmin;
 
+    @Inject
+    private MockAuditListener mockAuditListener;
+
     @Test
     public void getAllManagedRepos()
         throws Exception
     {
+        mockAuditListener.clearEvents();
         List<ManagedRepository> repos = 
managedRepositoryAdmin.getManagedRepositories();
         assertNotNull( repos );
         assertTrue( repos.size() > 0 );
@@ -52,20 +57,24 @@ public class ManagedRepositoryAdminTest
         assertNotNull( internal );
         assertTrue( internal.isReleases() );
         assertFalse( internal.isSnapshots() );
+        mockAuditListener.clearEvents();
     }
 
     @Test
     public void getById()
         throws Exception
     {
+        mockAuditListener.clearEvents();
         ManagedRepository repo = managedRepositoryAdmin.getManagedRepository( 
"internal" );
         assertNotNull( repo );
+        mockAuditListener.clearEvents();
     }
 
     @Test
     public void addDeleteManagedRepo()
         throws Exception
     {
+        mockAuditListener.clearEvents();
         List<ManagedRepository> repos = 
managedRepositoryAdmin.getManagedRepositories();
         assertNotNull( repos );
         int initialSize = repos.size();
@@ -87,12 +96,17 @@ public class ManagedRepositoryAdminTest
         repos = managedRepositoryAdmin.getManagedRepositories();
         assertNotNull( repos );
         assertEquals( initialSize, repos.size() );
+
+        assertEquals( 0, mockAuditListener.getAuditEvents().size() );
+
+        mockAuditListener.clearEvents();
     }
 
     @Test
     public void updateDeleteManagedRepo()
         throws Exception
     {
+        mockAuditListener.clearEvents();
         List<ManagedRepository> repos = 
managedRepositoryAdmin.getManagedRepositories();
         assertNotNull( repos );
         int initialSize = repos.size();
@@ -120,6 +134,14 @@ public class ManagedRepositoryAdminTest
         assertEquals( newName, repo.getName() );
         assertEquals( APPSERVER_BASE_PATH + "new-path", repo.getLocation() );
         assertTrue( new File( APPSERVER_BASE_PATH + "new-path" ).exists() );
+
+        managedRepositoryAdmin.deleteManagedRepository( repo.getId(), 
getFakeAuditInformation() );
+
+        assertEquals( 1, mockAuditListener.getAuditEvents().size() );
+
+        log.info( "audit events {}", mockAuditListener.getAuditEvents()  );
+
+        mockAuditListener.clearEvents();
     }
 
 

Modified: 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/resources/spring-context.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/resources/spring-context.xml?rev=1163029&r1=1163028&r2=1163029&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/resources/spring-context.xml
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-base/archiva-repository-admin/src/test/resources/spring-context.xml
 Mon Aug 29 21:43:12 2011
@@ -26,6 +26,9 @@
            http://www.springframework.org/schema/context 
            
http://www.springframework.org/schema/context/spring-context-3.0.xsd"; 
default-lazy-init="true">
 
+  <context:annotation-config/>
+  <context:component-scan base-package="org.apache.archiva.admin.mock"/>
+
   <bean name="scheduler" 
class="org.codehaus.redback.components.scheduler.DefaultScheduler">
     <property name="properties">
       <props>

Modified: 
archiva/trunk/archiva-modules/plugins/audit/src/main/java/org/apache/archiva/audit/AuditEvent.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/plugins/audit/src/main/java/org/apache/archiva/audit/AuditEvent.java?rev=1163029&r1=1163028&r2=1163029&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/plugins/audit/src/main/java/org/apache/archiva/audit/AuditEvent.java
 (original)
+++ 
archiva/trunk/archiva-modules/plugins/audit/src/main/java/org/apache/archiva/audit/AuditEvent.java
 Mon Aug 29 21:43:12 2011
@@ -327,8 +327,17 @@ public class AuditEvent
     @Override
     public String toString()
     {
-        return "AuditEvent{" + "repositoryId='" + repositoryId + '\'' + ", 
userId='" + userId + '\'' + ", remoteIP='" +
-            remoteIP + '\'' + ", resource='" + resource + '\'' + ", action='" 
+ action + '\'' + ", timestamp=" +
-            timestamp + '}';
+        final StringBuilder sb = new StringBuilder();
+        sb.append( "AuditEvent" );
+        sb.append( "{repositoryId='" ).append( repositoryId ).append( '\'' );
+        sb.append( ", userId='" ).append( userId ).append( '\'' );
+        sb.append( ", remoteIP='" ).append( remoteIP ).append( '\'' );
+        sb.append( ", resource='" ).append( resource ).append( '\'' );
+        sb.append( ", action='" ).append( action ).append( '\'' );
+        sb.append( ", timestamp=" ).append( timestamp );
+        sb.append( '}' );
+        return sb.toString();
     }
+
+
 }


Reply via email to