Alexander Morozov created WICKET-5851:
-----------------------------------------

             Summary: PackageResourceTest#packageResourceGuard test fails under 
Windows
                 Key: WICKET-5851
                 URL: https://issues.apache.org/jira/browse/WICKET-5851
             Project: Wicket
          Issue Type: Bug
          Components: wicket
    Affects Versions: 6.19.0
         Environment: Windows 8.1 Pro, Oracle JDK 7u72 x64
            Reporter: Alexander Morozov


I'm emphasized assert statement which causes the issue
{code:java}
        @Test
        public void packageResourceGuard() throws Exception
        {
                PackageResourceGuard guard = new PackageResourceGuard();
                assertTrue(guard.acceptExtension("txt"));
                assertFalse(guard.acceptExtension("java"));
                assertTrue(guard.acceptAbsolutePath("foo/Bar.txt"));
                assertFalse(guard.acceptAbsolutePath("foo/Bar.java"));
                assertTrue(guard.accept(PackageResourceTest.class,
                        Packages.absolutePath(PackageResourceTest.class, 
"Bar.txt")));
                assertTrue(guard.accept(PackageResourceTest.class,
                        Packages.absolutePath(PackageResourceTest.class, 
"Bar.txt.")));
                assertTrue(guard.accept(PackageResourceTest.class,
                        Packages.absolutePath(PackageResourceTest.class, 
".Bar.txt")));
                assertTrue(guard.accept(PackageResourceTest.class,
                        Packages.absolutePath(PackageResourceTest.class, 
".Bar.txt.")));
                assertTrue(guard.accept(PackageResourceTest.class,
                        Packages.absolutePath(PackageResourceTest.class, 
".Bar")));
>>>>    assertTrue(guard.accept(PackageResourceTest.class,
                        Packages.absolutePath(PackageResourceTest.class, 
".java")));
                assertFalse(guard.accept(PackageResourceTest.class,
                        Packages.absolutePath(PackageResourceTest.class, 
"Bar.java")));
        }
{code}

There is another issue in PackageResourceGuardTest 
{code:java}
        @Test
        public void acceptAbsolutePath()
        {
                PackageResourceGuard guard = new PackageResourceGuard();
                guard.setAllowAccessToRootResources(false);

                assertTrue(guard.acceptAbsolutePath("/test/test.js"));
                assertFalse(guard.acceptAbsolutePath("/test.js"));

>>> File.pathSeparator must be replaced with File.separator
>>>             if ("\\".equals(File.pathSeparator))
                {
                        
assertTrue(guard.acceptAbsolutePath("c:\\test\\org\\apache\\test.js"));
                        
assertTrue(guard.acceptAbsolutePath("\\test\\org\\apache\\test.js"));
                        assertFalse(guard.acceptAbsolutePath("c:\\test.js"));
                        assertFalse(guard.acceptAbsolutePath("\\test.js"));

                        // java also generates file paths with '/' on windows
                        
assertTrue(guard.acceptAbsolutePath("c:/test/org/apache/test.js"));
                        
assertTrue(guard.acceptAbsolutePath("/test/org/apache/test.js"));
                        assertFalse(guard.acceptAbsolutePath("c:/test.js"));
                        assertFalse(guard.acceptAbsolutePath("/test.js"));
                }
        }
{code}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to