View Javadoc
1   package org.apache.archiva.configuration;
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one
5    * or more contributor license agreements.  See the NOTICE file
6    * distributed with this work for additional information
7    * regarding copyright ownership.  The ASF licenses this file
8    * to you under the Apache License, Version 2.0 (the
9    * "License"); you may not use this file except in compliance
10   * with the License.  You may obtain a copy of the License at
11   *
12   *   http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing,
15   * software distributed under the License is distributed on an
16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17   * KIND, either express or implied.  See the License for the
18   * specific language governing permissions and limitations
19   * under the License.
20   */
21  
22  import javax.inject.Inject;
23  import org.apache.archiva.test.utils.ArchivaSpringJUnit4ClassRunner;
24  import static org.junit.Assert.*;
25  import org.junit.Test;
26  import org.junit.runner.RunWith;
27  import org.springframework.test.context.ContextConfiguration;
28  
29  @RunWith( ArchivaSpringJUnit4ClassRunner.class )
30  @ContextConfiguration( locations = { "classpath*:/META-INF/spring-context.xml" } )
31  public class FileTypesTest
32  {
33      @Inject
34      private FileTypes filetypes;
35  
36      @Test
37      public void testIsArtifact()
38      {
39          assertTrue( filetypes.matchesArtifactPattern( "test.maven-arch/poms/test-arch-2.0.3-SNAPSHOT.pom" ) );
40          assertTrue( filetypes.matchesArtifactPattern(
41              "test/maven-arch/test-arch/2.0.3-SNAPSHOT/test-arch-2.0.3-SNAPSHOT.jar" ) );
42          assertTrue( filetypes.matchesArtifactPattern( "org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz" ) );
43  
44          assertFalse(
45              filetypes.matchesArtifactPattern( "org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz.sha1" ) );
46          assertFalse(
47              filetypes.matchesArtifactPattern( "org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz.md5" ) );
48          assertFalse(
49              filetypes.matchesArtifactPattern( "org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz.asc" ) );
50          assertFalse(
51              filetypes.matchesArtifactPattern( "org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz.pgp" ) );
52          assertFalse( filetypes.matchesArtifactPattern( "org/apache/derby/derby/10.2.2.0/maven-metadata.xml" ) );
53          assertFalse( filetypes.matchesArtifactPattern( "org/apache/derby/derby/maven-metadata.xml" ) );
54      }
55  
56      @Test
57      public void testDefaultExclusions()
58      {
59          assertTrue( filetypes.matchesDefaultExclusions( "repository/test/.index/nexus-maven-repository-index.gz" ) );
60          assertTrue( filetypes.matchesDefaultExclusions( "repository/test/.index/nexus-maven-repository-index.zip" ) );
61          assertTrue( filetypes.matchesDefaultExclusions(
62              "repository/test/org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz.sha1" ) );
63          assertTrue( filetypes.matchesDefaultExclusions(
64              "repository/test/org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz.md5" ) );
65          assertTrue( filetypes.matchesDefaultExclusions(
66              "repository/test/org/apache/derby/derby/10.2.2.0/maven-metadata.xml" ) );
67          assertTrue( filetypes.matchesDefaultExclusions(
68              "repository/test/org/apache/derby/derby/10.2.2.0/maven-metadata.xml.sha1" ) );
69          assertTrue( filetypes.matchesDefaultExclusions(
70              "repository/test/org/apache/derby/derby/10.2.2.0/maven-metadata.xml.md5" ) );
71  
72          assertFalse( filetypes.matchesDefaultExclusions(
73              "repository/test/org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.zip" ) );
74          assertFalse( filetypes.matchesDefaultExclusions(
75              "repository/test/org/apache/derby/derby/10.2.2.0/derby-10.2.2.0-bin.tar.gz" ) );
76      }
77  }