From e24cd27f16f746f9fb4c81ee8379e2504fd444f3 Mon Sep 17 00:00:00 2001 From: OHTAKE Tomohiro Date: Mon, 24 Oct 2011 23:27:47 +0900 Subject: [PATCH] Test for absolute URIs with authorities --- core/src/test/java/hudson/FunctionsTest.java | 28 +++++++++++++++++--- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/core/src/test/java/hudson/FunctionsTest.java b/core/src/test/java/hudson/FunctionsTest.java index b3c6fb4e78..740b68ddf9 100644 --- a/core/src/test/java/hudson/FunctionsTest.java +++ b/core/src/test/java/hudson/FunctionsTest.java @@ -31,12 +31,32 @@ import org.jvnet.hudson.test.Bug; import static org.mockito.Mockito.*; public class FunctionsTest { + @Test + public void testGetActionUrl_absoluteUriWithAuthority(){ + String[] uris = { + "http://example.com/foo/bar", + "https://example.com/foo/bar", + "ftp://example.com/foo/bar", + "svn+ssh://nobody@example.com/foo/bar", + }; + for(String uri : uris) { + String result = Functions.getActionUrl(null, createMockAction(uri)); + assertEquals(uri, result); + } + } + @Test @Bug(7725) - public void testGetActionUrl_mailto(){ - String mailto = "mailto:nobody@example.com"; - String result = Functions.getActionUrl(null, createMockAction(mailto)); - assertEquals(mailto, result); + public void testGetActionUrl_absoluteUriWithoutAuthority(){ + String[] uris = { + "mailto:nobody@example.com", + "mailto:nobody@example.com?subject=hello", + "javascript:alert('hello')", + }; + for(String uri : uris) { + String result = Functions.getActionUrl(null, createMockAction(uri)); + assertEquals(uri, result); + } } private static Action createMockAction(String uri) {