mirror of
				https://github.com/scm-manager/scm-manager.git
				synced 2025-10-31 10:35:56 +01:00 
			
		
		
		
	Add missing unit tests
This commit is contained in:
		| @@ -0,0 +1,64 @@ | ||||
| package sonia.scm.api.v2.resources; | ||||
|  | ||||
| import com.fasterxml.jackson.databind.ObjectMapper; | ||||
| import com.fasterxml.jackson.databind.node.ObjectNode; | ||||
| import com.github.sdorra.shiro.ShiroRule; | ||||
| import com.github.sdorra.shiro.SubjectAware; | ||||
| import com.google.inject.util.Providers; | ||||
| import org.junit.Rule; | ||||
| import org.junit.Test; | ||||
| import sonia.scm.web.JsonEnricherContext; | ||||
| import sonia.scm.web.VndMediaType; | ||||
|  | ||||
| import javax.ws.rs.core.MediaType; | ||||
| import java.net.URI; | ||||
|  | ||||
| import static org.junit.Assert.assertEquals; | ||||
|  | ||||
| @SubjectAware(configuration = "classpath:sonia/scm/configuration/shiro.ini") | ||||
| public class SvnConfigInIndexResourceTest { | ||||
|  | ||||
|   @Rule | ||||
|   public final ShiroRule shiroRule = new ShiroRule(); | ||||
|  | ||||
|   private final ObjectMapper objectMapper = new ObjectMapper(); | ||||
|   private final ObjectNode root = objectMapper.createObjectNode(); | ||||
|   private final SvnConfigInIndexResource svnConfigInIndexResource; | ||||
|  | ||||
|   public SvnConfigInIndexResourceTest() { | ||||
|     root.put("_links", objectMapper.createObjectNode()); | ||||
|     ScmPathInfoStore pathInfoStore = new ScmPathInfoStore(); | ||||
|     pathInfoStore.set(() -> URI.create("/")); | ||||
|     svnConfigInIndexResource = new SvnConfigInIndexResource(Providers.of(pathInfoStore), objectMapper); | ||||
|   } | ||||
|  | ||||
|   @Test | ||||
|   @SubjectAware(username = "admin", password = "secret") | ||||
|   public void admin() { | ||||
|     JsonEnricherContext context = new JsonEnricherContext(URI.create("/index"), MediaType.valueOf(VndMediaType.INDEX), root); | ||||
|  | ||||
|     svnConfigInIndexResource.enrich(context); | ||||
|  | ||||
|     System.out.println(root); | ||||
|     assertEquals("/v2/config/svn", root.get("_links").get("svnConfig").get("href").asText()); | ||||
|   } | ||||
|  | ||||
|   @Test | ||||
|   @SubjectAware(username = "readOnly", password = "secret") | ||||
|   public void user() { | ||||
|     JsonEnricherContext context = new JsonEnricherContext(URI.create("/index"), MediaType.valueOf(VndMediaType.INDEX), root); | ||||
|  | ||||
|     svnConfigInIndexResource.enrich(context); | ||||
|  | ||||
|     System.out.println(root); | ||||
|   } | ||||
|  | ||||
|   @Test | ||||
|   public void anonymous() { | ||||
|     JsonEnricherContext context = new JsonEnricherContext(URI.create("/index"), MediaType.valueOf(VndMediaType.INDEX), root); | ||||
|  | ||||
|     svnConfigInIndexResource.enrich(context); | ||||
|  | ||||
|     System.out.println(root); | ||||
|   } | ||||
| } | ||||
| @@ -2,8 +2,10 @@ | ||||
| readOnly = secret, reader | ||||
| writeOnly = secret, writer | ||||
| readWrite = secret, readerWriter | ||||
| admin = secret, admin | ||||
|  | ||||
| [roles] | ||||
| reader = configuration:read:svn | ||||
| writer = configuration:write:svn | ||||
| readerWriter = configuration:*:svn | ||||
| admin = * | ||||
|   | ||||
		Reference in New Issue
	
	Block a user