diff --git a/src/test/java/org/apache/archiva/redback/components/springutils/plexusshim/PlexusShimComponentTest.java b/src/test/java/org/apache/archiva/redback/components/springutils/plexusshim/PlexusShimComponentTest.java
new file mode 100644
index 0000000..a5b88a5
--- /dev/null
+++ b/src/test/java/org/apache/archiva/redback/components/springutils/plexusshim/PlexusShimComponentTest.java
@@ -0,0 +1,31 @@
+package org.apache.archiva.redback.components.springutils.plexusshim;
+
+import junit.framework.Assert;
+import org.apache.maven.index.NexusIndexer;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.test.context.ContextConfiguration;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import javax.inject.Inject;
+
+/**
+ * @author Olivier Lamy
+ */
+@RunWith( SpringJUnit4ClassRunner.class )
+@ContextConfiguration(
+    locations = { "classpath*:/META-INF/spring-context.xml" } )
+public class PlexusShimComponentTest
+{
+
+    @Inject
+    private PlexusShimComponent plexusShimComponent;
+
+    @Test
+    public void testMavenIndexerLoad()
+        throws Exception
+    {
+        NexusIndexer nexusIndexer = plexusShimComponent.lookup( NexusIndexer.class );
+        Assert.assertNotNull( nexusIndexer );
+    }
+}
