Author: olamy
Date: Mon Jul  2 07:37:52 2012
New Revision: 1356093

URL: http://svn.apache.org/viewvc?rev=1356093&view=rev
Log:
add the new module

Added:
    archiva/trunk/archiva-testutil/
    archiva/trunk/archiva-testutil/pom.xml   (with props)
    archiva/trunk/archiva-testutil/src/
    archiva/trunk/archiva-testutil/src/main/
    archiva/trunk/archiva-testutil/src/main/java/
    archiva/trunk/archiva-testutil/src/main/java/org/
    archiva/trunk/archiva-testutil/src/main/java/org/apache/
    archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/
    archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/
    
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaBlockJUnit4ClassRunner.java
   (with props)
    
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaSpringJUnit4ClassRunner.java
   (with props)
    
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ListGenerator.java
   (with props)

Added: archiva/trunk/archiva-testutil/pom.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-testutil/pom.xml?rev=1356093&view=auto
==============================================================================
--- archiva/trunk/archiva-testutil/pom.xml (added)
+++ archiva/trunk/archiva-testutil/pom.xml Mon Jul  2 07:37:52 2012
@@ -0,0 +1,51 @@
+<?xml version="1.0"?>
+<!--
+  ~ 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.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
+  <parent>
+    <groupId>org.apache.archiva</groupId>
+    <artifactId>archiva</artifactId>
+    <version>1.4-M3-SNAPSHOT</version>
+  </parent>
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>archiva-testutil</artifactId>
+  <name>Archiva :: Test Utility</name>
+  <dependencies>
+    <dependency>
+      <groupId>org.springframework</groupId>
+      <artifactId>spring-test</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <scope>compile</scope>
+    </dependency>
+    <dependency>
+      <groupId>xmlunit</groupId>
+      <artifactId>xmlunit</artifactId>
+      <scope>compile</scope>
+    </dependency>
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-simple</artifactId>
+      <scope>compile</scope>
+    </dependency>
+  </dependencies>  
+</project>

Propchange: archiva/trunk/archiva-testutil/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: archiva/trunk/archiva-testutil/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaBlockJUnit4ClassRunner.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaBlockJUnit4ClassRunner.java?rev=1356093&view=auto
==============================================================================
--- 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaBlockJUnit4ClassRunner.java
 (added)
+++ 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaBlockJUnit4ClassRunner.java
 Mon Jul  2 07:37:52 2012
@@ -0,0 +1,43 @@
+package org.apache.archiva.test;
+
+/*
+ * Copyright 2012 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.junit.runners.BlockJUnit4ClassRunner;
+import org.junit.runners.model.FrameworkMethod;
+import org.junit.runners.model.InitializationError;
+
+import java.util.List;
+
+/**
+ * @author Eric
+ */
+public class ArchivaBlockJUnit4ClassRunner
+    extends BlockJUnit4ClassRunner
+{
+
+    public ArchivaBlockJUnit4ClassRunner( Class<?> klass )
+        throws InitializationError
+    {
+        super( klass );
+    }
+
+    @Override
+    protected List<FrameworkMethod> computeTestMethods()
+    {
+        return ListGenerator.getShuffleList( super.computeTestMethods() );
+    }
+}

Propchange: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaBlockJUnit4ClassRunner.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaBlockJUnit4ClassRunner.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaSpringJUnit4ClassRunner.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaSpringJUnit4ClassRunner.java?rev=1356093&view=auto
==============================================================================
--- 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaSpringJUnit4ClassRunner.java
 (added)
+++ 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaSpringJUnit4ClassRunner.java
 Mon Jul  2 07:37:52 2012
@@ -0,0 +1,45 @@
+package org.apache.archiva.test;
+
+/*
+ * Copyright 2012 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.junit.runners.model.FrameworkMethod;
+import org.junit.runners.model.InitializationError;
+import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
+
+import java.util.List;
+
+/**
+ * @author Eric
+ */
+public class ArchivaSpringJUnit4ClassRunner
+    extends SpringJUnit4ClassRunner
+{
+
+    public ArchivaSpringJUnit4ClassRunner( Class<?> clazz )
+        throws InitializationError
+    {
+        super( clazz );
+    }
+
+    @Override
+    protected List<FrameworkMethod> computeTestMethods()
+    {
+        return ListGenerator.getShuffleList( super.computeTestMethods() );
+    }
+
+
+}

Propchange: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaSpringJUnit4ClassRunner.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ArchivaSpringJUnit4ClassRunner.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ListGenerator.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ListGenerator.java?rev=1356093&view=auto
==============================================================================
--- 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ListGenerator.java
 (added)
+++ 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ListGenerator.java
 Mon Jul  2 07:37:52 2012
@@ -0,0 +1,77 @@
+package org.apache.archiva.test;
+
+/*
+ * Copyright 2012 The Apache Software Foundation.
+ *
+ * Licensed 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.
+ */
+
+import org.junit.runners.model.FrameworkMethod;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.List;
+
+/**
+ * @author Eric
+ */
+public class ListGenerator
+{
+    private static int MAXROUND = 1;
+
+    private ListGenerator()
+    {
+    }
+
+    static List<FrameworkMethod> getShuffleList( List<FrameworkMethod> 
computeTestMethods )
+    {
+        String javaSpecVersion = System.getProperty( 
"java.specification.version" );
+        // 1.6 1.5 version not shuffled to allow build
+        if ( javaSpecVersion.equals( "1.6" ) || javaSpecVersion.equals( "1.5" 
) )
+        {
+            return computeTestMethods;
+        }
+        if ( computeTestMethods == null )
+        {
+            return null;
+        }
+        List<FrameworkMethod> generated = new ArrayList<FrameworkMethod>( 
computeTestMethods );
+
+        Collections.sort( generated, new FrameworkMethodComparator() );
+
+        // 1.7 and more generated shuffled list
+        // double test method to have more change of failure
+        /*for ( int i = 0; i < MAXROUND; i++ )
+        {
+            Collections.shuffle( computeTestMethods );
+            generated.addAll( computeTestMethods );
+        }*/
+        //generated.add( computeTestMethods.get( 0 ) );
+
+        //Collections.shuffle( computeTestMethods );
+        //generated.addAll( computeTestMethods );
+
+        return generated;
+    }
+
+    private static class FrameworkMethodComparator
+        implements Comparator<FrameworkMethod>
+    {
+        public int compare( FrameworkMethod frameworkMethod, FrameworkMethod 
frameworkMethod1 )
+        {
+            return frameworkMethod.getName().compareTo( 
frameworkMethod1.getName() );
+        }
+    }
+
+}

Propchange: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ListGenerator.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
archiva/trunk/archiva-testutil/src/main/java/org/apache/archiva/test/ListGenerator.java
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision


Reply via email to