diff --git a/marginalia_nu/src/main/java/nu/marginalia/wmsa/edge/model/EdgeUrl.java b/marginalia_nu/src/main/java/nu/marginalia/wmsa/edge/model/EdgeUrl.java index 579b6cf4..2e451ba1 100644 --- a/marginalia_nu/src/main/java/nu/marginalia/wmsa/edge/model/EdgeUrl.java +++ b/marginalia_nu/src/main/java/nu/marginalia/wmsa/edge/model/EdgeUrl.java @@ -34,7 +34,7 @@ public class EdgeUrl implements WideHashable { public static String urlencodeFixer(String url) throws URISyntaxException { var s = new StringBuilder(); - String goodChars = "&.?:/-;+$"; + String goodChars = "&.?:/-;+$#"; String hexChars = "0123456789abcdefABCDEF"; int pathIdx = findPathIdx(url); diff --git a/marginalia_nu/src/test/java/nu/marginalia/wmsa/edge/model/EdgeUrlTest.java b/marginalia_nu/src/test/java/nu/marginalia/wmsa/edge/model/EdgeUrlTest.java index 953fd473..09498160 100644 --- a/marginalia_nu/src/test/java/nu/marginalia/wmsa/edge/model/EdgeUrlTest.java +++ b/marginalia_nu/src/test/java/nu/marginalia/wmsa/edge/model/EdgeUrlTest.java @@ -4,12 +4,22 @@ import org.junit.jupiter.api.Test; import java.net.URISyntaxException; +import static org.junit.jupiter.api.Assertions.assertEquals; + class EdgeUrlTest { @Test public void testHashCode() throws URISyntaxException { System.out.println(new EdgeUrl("https://memex.marginalia.nu").hashCode()); } + + @Test + public void testFragment() throws URISyntaxException { + assertEquals( + new EdgeUrl("https://memex.marginalia.nu/"), + new EdgeUrl("https://memex.marginalia.nu/#here") + ); + } @Test public void testParam() throws URISyntaxException { System.out.println(new EdgeUrl("https://memex.marginalia.nu/index.php?id=1").toString());