/* * 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. */ package org.apache.sling.jcr.davex.impl.servlets; import java.lang.reflect.Method; import junit.framework.TestCase; import org.junit.BeforeClass; import org.junit.Test; public class AuthHttpContextTest { private static Method getWorkspace; @BeforeClass public static void getGetWorkspaceMethod() throws Throwable { getWorkspace = AuthHttpContext.class.getDeclaredMethod("getWorkspace", String.class); getWorkspace.setAccessible(true); } @Test public void test_getWorkspace_null() throws Throwable { final AuthHttpContext ahc = new AuthHttpContext(); TestCase.assertNull(getWorkspace.invoke(ahc, (String) null)); } @Test public void test_getWorkspace_root() throws Throwable { final AuthHttpContext ahc = new AuthHttpContext(); TestCase.assertNull(getWorkspace.invoke(ahc, "")); } @Test public void test_getWorkspace_root_slash() throws Throwable { final AuthHttpContext ahc = new AuthHttpContext(); TestCase.assertNull(getWorkspace.invoke(ahc, "/")); } @Test public void test_getWorkspace_wsp() throws Throwable { final AuthHttpContext ahc = new AuthHttpContext(); TestCase.assertEquals("w", getWorkspace.invoke(ahc, "/w")); TestCase.assertEquals("wsp", getWorkspace.invoke(ahc, "/wsp")); } @Test public void test_getWorkspace_wsp_slash() throws Throwable { final AuthHttpContext ahc = new AuthHttpContext(); TestCase.assertEquals("w", getWorkspace.invoke(ahc, "/w/")); TestCase.assertEquals("wsp", getWorkspace.invoke(ahc, "/wsp/")); } @Test public void test_getWorkspace_wsp_path() throws Throwable { final AuthHttpContext ahc = new AuthHttpContext(); TestCase.assertEquals("w", getWorkspace.invoke(ahc, "/w/abc")); TestCase.assertEquals("wsp", getWorkspace.invoke(ahc, "/wsp/abc")); TestCase.assertEquals("w", getWorkspace.invoke(ahc, "/w/abc/xyz")); TestCase.assertEquals("wsp", getWorkspace.invoke(ahc, "/wsp/abc/xyz")); } }