]> source.dussan.org Git - archiva.git/blob
9bb471ae3f8a5d66508d20ea1a4fddfb16d25b0e
[archiva.git] /
1 package org.apache.archiva.repository.maven.metadata.storage;
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  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  */
20
21 import org.apache.archiva.filter.AllFilter;
22 import org.apache.archiva.filter.Filter;
23 import org.apache.archiva.metadata.model.ProjectVersionMetadata;
24 import org.apache.archiva.metadata.repository.storage.ReadMetadataRequest;
25 import org.apache.archiva.metadata.repository.storage.RepositoryStorageRuntimeException;
26 import org.apache.archiva.proxy.maven.WagonFactory;
27 import org.apache.archiva.repository.RepositoryRegistry;
28 import org.junit.Before;
29 import org.junit.Test;
30
31 import javax.inject.Inject;
32 import javax.inject.Named;
33
34
35 public class Maven2RepositoryMetadataResolverManagedReleaseTest
36     extends Maven2RepositoryMetadataResolverTest
37 {
38     private static final Filter<String> ALL = new AllFilter<String>();
39
40     @Inject
41     @Named ( "repositoryStorage#maven2")
42     private Maven2RepositoryStorage storage;
43
44     @Inject
45     RepositoryRegistry repositoryRegistry;
46
47     private static final String TEST_REPO_ID = "test";
48
49     private static final String TEST_REMOTE_REPO_ID = "central";
50
51     private static final String ASF_SCM_CONN_BASE = "scm:svn:http://svn.apache.org/repos/asf/";
52
53     private static final String ASF_SCM_DEV_CONN_BASE = "scm:svn:https://svn.apache.org/repos/asf/";
54
55     private static final String ASF_SCM_VIEWVC_BASE = "http://svn.apache.org/viewvc/";
56
57     private static final String TEST_SCM_CONN_BASE = "scm:svn:http://svn.example.com/repos/";
58
59     private static final String TEST_SCM_DEV_CONN_BASE = "scm:svn:https://svn.example.com/repos/";
60
61     private static final String TEST_SCM_URL_BASE = "http://svn.example.com/repos/";
62
63     private static final String EMPTY_MD5 = "d41d8cd98f00b204e9800998ecf8427e";
64
65     private static final String EMPTY_SHA1 = "da39a3ee5e6b4b0d3255bfef95601890afd80709";
66
67     private WagonFactory wagonFactory;
68
69     @Before
70     @Override
71     public void setUp()
72         throws Exception
73     {
74         super.setUp();
75
76         testRepo.setReleases( true );
77         testRepo.setSnapshots( false );
78
79         configuration.save( c );
80
81         repositoryRegistry.reload();
82
83         assertFalse( c.getManagedRepositories().get( 0 ).isSnapshots() );
84         assertTrue( c.getManagedRepositories().get( 0 ).isReleases() );
85
86     }
87
88     @Test
89     @Override
90     public void testModelWithJdkProfileActivation()
91         throws Exception
92     {
93         // skygo IMHO must fail because TEST_REPO_ID ( is snap ,no release) and we seek for a snapshot
94
95         ReadMetadataRequest readMetadataRequest =
96             new ReadMetadataRequest().repositoryId( TEST_REPO_ID ).namespace( "org.apache.maven" ).projectId(
97                 "maven-archiver" ).projectVersion( "2.4.1" );
98
99         ProjectVersionMetadata metadata = storage.readProjectVersionMetadata( readMetadataRequest );
100     }
101
102     @Test (expected = RepositoryStorageRuntimeException.class)
103     @Override
104     public void testGetProjectVersionMetadataForTimestampedSnapshotMissingMetadata()
105         throws Exception
106     {
107         ReadMetadataRequest readMetadataRequest =
108             new ReadMetadataRequest().repositoryId( TEST_REPO_ID ).namespace( "com.example.test" ).projectId(
109                 "missing-metadata" ).projectVersion( "1.0-SNAPSHOT" );
110         storage.readProjectVersionMetadata( readMetadataRequest );
111     }
112
113     @Test (expected = RepositoryStorageRuntimeException.class)
114     @Override
115     public void testGetProjectVersionMetadataForTimestampedSnapshotMalformedMetadata()
116         throws Exception
117     {
118         ReadMetadataRequest readMetadataRequest =
119             new ReadMetadataRequest().repositoryId( TEST_REPO_ID ).namespace( "com.example.test" ).projectVersion(
120                 "malformed-metadata" ).projectVersion( "1.0-SNAPSHOT" );
121         storage.readProjectVersionMetadata( readMetadataRequest );
122     }
123
124     @Test (expected = RepositoryStorageRuntimeException.class)
125     @Override
126     public void testGetProjectVersionMetadataForTimestampedSnapshot()
127         throws Exception
128     {
129         super.testGetProjectVersionMetadataForTimestampedSnapshot();
130     }
131
132
133     @Test (expected = RepositoryStorageRuntimeException.class)
134     @Override
135     public void testGetProjectVersionMetadataForTimestampedSnapshotIncompleteMetadata()
136         throws Exception
137     {
138         super.testGetProjectVersionMetadataForTimestampedSnapshotIncompleteMetadata();
139     }
140
141 }