You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Alexander Morozov (JIRA)" <ji...@apache.org> on 2015/03/06 18:46:38 UTC

[jira] [Created] (WICKET-5851) PackageResourceTest#packageResourceGuard test fails under Windows

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)