mirror of
https://github.com/scm-manager/scm-manager.git
synced 2025-11-14 17:26:22 +01:00
Remove archive flag
This commit is contained in:
@@ -37,7 +37,6 @@ public class ConfigDtoToScmConfigurationMapperTest {
|
||||
assertEquals("user" , config.getProxyUser());
|
||||
assertTrue(config.isEnableProxy());
|
||||
assertEquals("realm" , config.getRealmDescription());
|
||||
assertTrue(config.isEnableRepositoryArchive());
|
||||
assertTrue(config.isDisableGroupingGrid());
|
||||
assertEquals("yyyy" , config.getDateFormat());
|
||||
assertTrue(config.isAnonymousAccessEnabled());
|
||||
@@ -61,7 +60,6 @@ public class ConfigDtoToScmConfigurationMapperTest {
|
||||
configDto.setProxyUser("user");
|
||||
configDto.setEnableProxy(true);
|
||||
configDto.setRealmDescription("realm");
|
||||
configDto.setEnableRepositoryArchive(true);
|
||||
configDto.setDisableGroupingGrid(true);
|
||||
configDto.setDateFormat("yyyy");
|
||||
configDto.setAnonymousAccessEnabled(true);
|
||||
|
||||
@@ -19,7 +19,6 @@ import org.mockito.Mock;
|
||||
import sonia.scm.PageResult;
|
||||
import sonia.scm.repository.NamespaceAndName;
|
||||
import sonia.scm.repository.Repository;
|
||||
import sonia.scm.repository.RepositoryIsNotArchivedException;
|
||||
import sonia.scm.repository.RepositoryManager;
|
||||
import sonia.scm.repository.api.RepositoryService;
|
||||
import sonia.scm.repository.api.RepositoryServiceFactory;
|
||||
@@ -41,7 +40,6 @@ import static javax.servlet.http.HttpServletResponse.SC_CONFLICT;
|
||||
import static javax.servlet.http.HttpServletResponse.SC_NOT_FOUND;
|
||||
import static javax.servlet.http.HttpServletResponse.SC_NO_CONTENT;
|
||||
import static javax.servlet.http.HttpServletResponse.SC_OK;
|
||||
import static javax.servlet.http.HttpServletResponse.SC_PRECONDITION_FAILED;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
@@ -270,20 +268,6 @@ public class RepositoryRootResourceTest extends RepositoryTestBase {
|
||||
verify(repositoryManager).delete(anyObject());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldHandleDeleteIsNotArchivedException() throws Exception {
|
||||
mockRepository("space", "repo");
|
||||
|
||||
doThrow(RepositoryIsNotArchivedException.class).when(repositoryManager).delete(anyObject());
|
||||
|
||||
MockHttpRequest request = MockHttpRequest.delete("/" + RepositoryRootResource.REPOSITORIES_PATH_V2 + "space/repo");
|
||||
MockHttpResponse response = new MockHttpResponse();
|
||||
|
||||
dispatcher.invoke(request, response);
|
||||
|
||||
assertEquals(SC_PRECONDITION_FAILED, response.getStatus());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldCreateNewRepositoryInCorrectNamespace() throws Exception {
|
||||
when(repositoryManager.create(any())).thenAnswer(invocation -> {
|
||||
|
||||
@@ -67,7 +67,6 @@ public class ScmConfigurationToConfigDtoMapperTest {
|
||||
assertEquals("trillian" , dto.getProxyUser());
|
||||
assertTrue(dto.isEnableProxy());
|
||||
assertEquals("description" , dto.getRealmDescription());
|
||||
assertTrue(dto.isEnableRepositoryArchive());
|
||||
assertTrue(dto.isDisableGroupingGrid());
|
||||
assertEquals("dd" , dto.getDateFormat());
|
||||
assertTrue(dto.isAnonymousAccessEnabled());
|
||||
@@ -106,7 +105,6 @@ public class ScmConfigurationToConfigDtoMapperTest {
|
||||
config.setProxyUser("trillian");
|
||||
config.setEnableProxy(true);
|
||||
config.setRealmDescription("description");
|
||||
config.setEnableRepositoryArchive(true);
|
||||
config.setDisableGroupingGrid(true);
|
||||
config.setDateFormat("dd");
|
||||
config.setAnonymousAccessEnabled(true);
|
||||
|
||||
@@ -1,181 +0,0 @@
|
||||
/**
|
||||
* Copyright (c) 2010, Sebastian Sdorra
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
*
|
||||
* 1. Redistributions of source code must retain the above copyright notice,
|
||||
* this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright notice,
|
||||
* this list of conditions and the following disclaimer in the documentation
|
||||
* and/or other materials provided with the distribution.
|
||||
* 3. Neither the name of SCM-Manager; nor the names of its
|
||||
* contributors may be used to endorse or promote products derived from this
|
||||
* software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||
* DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
|
||||
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* http://bitbucket.org/sdorra/scm-manager
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
package sonia.scm.it;
|
||||
|
||||
|
||||
import com.sun.jersey.api.client.ClientResponse;
|
||||
import com.sun.jersey.api.client.WebResource;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.Parameterized;
|
||||
import sonia.scm.api.v2.resources.ConfigDto;
|
||||
import sonia.scm.api.v2.resources.RepositoryDto;
|
||||
import sonia.scm.web.VndMediaType;
|
||||
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import java.net.URI;
|
||||
import java.util.Collection;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static sonia.scm.it.IntegrationTestUtil.createAdminClient;
|
||||
import static sonia.scm.it.IntegrationTestUtil.createResource;
|
||||
import static sonia.scm.it.IntegrationTestUtil.getLink;
|
||||
import static sonia.scm.it.IntegrationTestUtil.readJson;
|
||||
import static sonia.scm.it.IntegrationTestUtil.serialize;
|
||||
import static sonia.scm.it.RepositoryITUtil.createRepository;
|
||||
import static sonia.scm.it.RepositoryITUtil.deleteRepository;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Sebastian Sdorra
|
||||
*/
|
||||
@RunWith(Parameterized.class)
|
||||
public class RepositoryArchiveITCase
|
||||
{
|
||||
|
||||
/**
|
||||
* Constructs ...
|
||||
*
|
||||
*
|
||||
* @param type
|
||||
*/
|
||||
public RepositoryArchiveITCase(String type)
|
||||
{
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
//~--- methods --------------------------------------------------------------
|
||||
|
||||
@Parameterized.Parameters(name = "{0}")
|
||||
public static Collection<String[]> createParameters() {
|
||||
return IntegrationTestUtil.createRepositoryTypeParameters();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
*/
|
||||
@Before
|
||||
public void createTestRepository() {
|
||||
client = createAdminClient();
|
||||
repository = createRepository(client, readJson("repository-" + type + ".json"));
|
||||
}
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
*/
|
||||
@After
|
||||
public void deleteTestRepository()
|
||||
{
|
||||
setArchiveMode(false);
|
||||
|
||||
if (repository != null)
|
||||
{
|
||||
deleteRepository(client, repository);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
*/
|
||||
@Test
|
||||
public void testDeleteAllowed() {
|
||||
setArchiveMode(true);
|
||||
|
||||
repository.setArchived(true);
|
||||
|
||||
ClientResponse response = createResource(client,
|
||||
"repositories/" + repository.getNamespace() + "/" + repository.getName())
|
||||
.type(VndMediaType.REPOSITORY).put(ClientResponse.class, serialize(repository));
|
||||
|
||||
assertNotNull(response);
|
||||
assertEquals(204, response.getStatus());
|
||||
response = createResource(client,
|
||||
"repositories/" + repository.getNamespace() + "/" + repository.getName()).delete(ClientResponse.class);
|
||||
assertNotNull(response);
|
||||
assertEquals(204, response.getStatus());
|
||||
repository = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
*/
|
||||
@Test
|
||||
public void testDeleteDenied()
|
||||
{
|
||||
setArchiveMode(true);
|
||||
|
||||
URI deleteUrl = getLink(repository, "delete");
|
||||
ClientResponse response = createResource(client, deleteUrl).delete(ClientResponse.class);
|
||||
|
||||
assertNotNull(response);
|
||||
assertEquals(412, response.getStatus());
|
||||
response.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method description
|
||||
*
|
||||
*
|
||||
* @param archive
|
||||
*/
|
||||
private void setArchiveMode(boolean archive)
|
||||
{
|
||||
WebResource.Builder resource = createResource(client, "config").type(MediaType.APPLICATION_JSON);
|
||||
ConfigDto config = resource.get(ConfigDto.class);
|
||||
|
||||
assertNotNull(config);
|
||||
config.setEnableRepositoryArchive(archive);
|
||||
|
||||
ClientResponse resp = createResource(client, "config").type(VndMediaType.CONFIG).put(ClientResponse.class, config);
|
||||
|
||||
assertNotNull(resp);
|
||||
assertEquals(204, resp.getStatus());
|
||||
}
|
||||
|
||||
/** Field description */
|
||||
private ScmClient client;
|
||||
|
||||
/** Field description */
|
||||
private RepositoryDto repository;
|
||||
|
||||
/** Field description */
|
||||
private String type;
|
||||
}
|
||||
Reference in New Issue
Block a user