/incogito-domain/src/test/java/no/java/incogito/domain/IncogitoUriTest.java
http://github.com/javaBin/incogito · Java · 107 lines · 41 code · 17 blank · 49 comment · 2 complexity · dccf4dafb2fd395c7305fe1f144f13b7 MD5 · raw file
- package no.java.incogito.domain;
- import junit.framework.TestCase;
- import no.java.incogito.domain.IncogitoUri.IncogitoRestEventsUri.IncogitoRestEventUri.IncogitoRestSessionUri;
- import no.java.incogito.domain.Session.Format;
- import static no.java.incogito.domain.IncogitoTestData.session46;
- import java.util.LinkedList;
- import java.util.List;
- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- /**
- * @author <a href="mailto:trygvis@java.no">Trygve Laugstøl</a>
- * @version $Id$
- */
- public class IncogitoUriTest extends TestCase {
- public void testBasic() {
- IncogitoUri incogitoUri = new IncogitoUri("http://localhost");
- String what = incogitoUri.events().eventUri("JavaZone 2009").session(session46);
- assertEquals("http://localhost/events/JavaZone%202009/sessions/Dokumentasjon%20uten%20pistol%20-%20g%C3%A5r%20det%20an%3F", what);
- IncogitoRestSessionUri session2RestUri = incogitoUri.restEvents().eventUri("JavaZone 2009").session(IncogitoTestData.session3);
- String s = session2RestUri.toString();
- assertEquals("http://localhost/rest/events/JavaZone%202009/sessions/b8a6034f-573d-4321-9155-a5ed31885958", s);
- assertEquals("http://localhost/rest/events/JavaZone%202009/sessions/b8a6034f-573d-4321-9155-a5ed31885958/speaker-photos/2", session2RestUri.speakerPhoto(2));
- assertEquals("http://localhost/events/JavaZone%202009/sessions/Scala%20%2b%20Wicket%20=%20Match%20made%20in%20heaven%3F",
- incogitoUri.events().eventUri("JavaZone 2009").session(session46.title("Scala + Wicket = Match made in heaven?")));
- assertEquals("http://localhost/events/JavaZone%202009/sessions/%2b=",
- incogitoUri.events().eventUri("JavaZone 2009").session(session46.title("+=")));
- }
- // public void testCrap() {
- // String expr = "^/events/([.&&[^/]]*)/?$";
- // showMatches("/events/JavaZone%202009/", expr);
- // showMatches("/events/JavaZone%202009", expr);
- //
- // expr = "^/events/([\\w%0-9])*";
- // showMatches("/events/JavaZone%202009/", expr);
- // showMatches("/events/JavaZone%202009", expr);
- //
- // expr = "^/events/(.*)?$";
- // showMatches("/events/JavaZone%202009/", expr);
- // showMatches("/events/JavaZone%202009", expr);
- // }
- private void showMatches(String text, String regexp) {
- List<Integer> starts = new LinkedList<Integer>();
- List<Integer> ends = new LinkedList<Integer>();
- List<String> groups = new LinkedList<String>();
- Pattern pattern = Pattern.compile(regexp);
- Matcher matcher = pattern.matcher(text);
- while (matcher.find()) {
- // System.out.println("start: " + matcher.start() + ", end: " + matcher.end() + ", group: " + matcher.group());
- starts.add(matcher.start());
- ends.add(matcher.end());
- groups.add(matcher.group());
- }
- System.out.print(regexp + " with " + text + " => ");
- for (String group : groups) {
- System.out.println(group);
- }
- // System.out.print("match: ");
- //
- // if (starts.size() == 0) {
- // System.out.println();
- // return;
- // }
- //
- // int start = starts.remove(0);
- // int end = ends.remove(0);
- // for (int i = 0; i < text.length(); i++) {
- // if (i == start && start == end - 1) {
- // System.out.print("|");
- // }
- // else if (i == start) {
- // System.out.print("|");
- // } else if (i == end - 1) {
- // System.out.print("|");
- //
- // if (starts.size() == 0) {
- // break;
- // }
- // start = starts.remove(0);
- // end = ends.remove(0);
- // } else if (start < i && i < end) {
- // System.out.print("-");
- // } else {
- // System.out.print(" ");
- // }
- // }
- //
- // System.out.println();
- System.out.println();
- }
- }