[jboss-cvs] jboss-seam/examples/wiki/src/test/org/jboss/seam/wiki/test/model ...
Christian Bauer
christian at hibernate.org
Thu Jan 10 19:09:16 EST 2008
User: cbauer
Date: 08/01/10 19:09:16
Modified: examples/wiki/src/test/org/jboss/seam/wiki/test/model
URLTests.java
Added: examples/wiki/src/test/org/jboss/seam/wiki/test/model
DocumentMacroTests.java
Log:
Improved macro handling in documents and URL rendering
Revision Changes Path
1.2 +12 -12 jboss-seam/examples/wiki/src/test/org/jboss/seam/wiki/test/model/URLTests.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: URLTests.java
===================================================================
RCS file: /cvsroot/jboss/jboss-seam/examples/wiki/src/test/org/jboss/seam/wiki/test/model/URLTests.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- URLTests.java 19 Dec 2007 04:29:24 -0000 1.1
+++ URLTests.java 11 Jan 2008 00:09:15 -0000 1.2
@@ -35,8 +35,8 @@
.setParameter("id", 6l)
.getSingleResult();
- assert d.getPermURL(".lace").equals("/6.lace");
- assert d.getWikiURL().equals("/CCC/One");
+ assert d.getPermURL(".lace").equals("6.lace");
+ assert d.getWikiURL().equals("CCC/One");
}
}.run();
}
@@ -52,24 +52,24 @@
.setParameter("id", 3l)
.getSingleResult();
- assert d.getPermURL(".lace").equals("/3.lace");
- assert d.getWikiURL().equals("/CCC");
+ assert d.getPermURL(".lace").equals("3.lace");
+ assert d.getWikiURL().equals("CCC");
d = (WikiDirectory)
em.createQuery("select d from WikiDirectory d where d.id = :id")
.setParameter("id", 4l)
.getSingleResult();
- assert d.getPermURL(".lace").equals("/4.lace");
- assert d.getWikiURL().equals("/CCC/DDD");
+ assert d.getPermURL(".lace").equals("4.lace");
+ assert d.getWikiURL().equals("CCC/DDD");
d = (WikiDirectory)
em.createQuery("select d from WikiDirectory d where d.id = :id")
.setParameter("id", 1l)
.getSingleResult();
- assert d.getPermURL(".lace").equals("/1.lace");
- assert d.getWikiURL().equals("/");
+ assert d.getPermURL(".lace").equals("1.lace");
+ assert d.getWikiURL().equals("");
}
}.run();
@@ -86,8 +86,8 @@
.setParameter("id", 10l)
.getSingleResult();
- assert c.getPermURL(".lace").equals("/6.lace#comment10");
- assert c.getWikiURL().equals("/CCC/One#comment10");
+ assert c.getPermURL(".lace").equals("6.lace#comment10");
+ assert c.getWikiURL().equals("CCC/One#comment10");
}
}.run();
@@ -105,8 +105,8 @@
.setParameter("id", 30l)
.getSingleResult();
- assert u.getPermURL(".lace").equals("/servlets/files/download.seam?fileId=30");
- assert u.getWikiURL().equals("/servlets/files/download.seam?fileId=30");
+ assert u.getPermURL(".lace").equals("servlets/files/download.seam?fileId=30");
+ assert u.getWikiURL().equals("servlets/files/download.seam?fileId=30");
}
}.run();
1.1 date: 2008/01/11 00:09:15; author: cbauer; state: Exp;jboss-seam/examples/wiki/src/test/org/jboss/seam/wiki/test/model/DocumentMacroTests.java
Index: DocumentMacroTests.java
===================================================================
/*
* JBoss, Home of Professional Open Source
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package org.jboss.seam.wiki.test.model;
import org.dbunit.operation.DatabaseOperation;
import org.jboss.seam.wiki.core.action.DocumentHome;
import org.jboss.seam.wiki.core.model.WikiDocument;
import org.jboss.seam.wiki.core.model.WikiDocumentDefaults;
import org.jboss.seam.wiki.core.engine.WikiMacro;
import org.jboss.seam.wiki.test.util.DBUnitSeamTest;
import org.testng.annotations.Test;
import java.util.List;
import java.util.ArrayList;
/**
* @author Christian Bauer
*/
public class DocumentMacroTests extends DBUnitSeamTest {
protected void prepareDBUnitOperations() {
beforeTestOperations.add(
new DataSetOperation("org/jboss/seam/wiki/test/WikiBaseData.dbunit.xml", DatabaseOperation.CLEAN_INSERT)
);
}
@Test
public void modifyMacros() throws Exception {
new NonFacesRequest("/wiki.xhtml") {
protected void beforeRequest() {
setParameter("nodeId", "6");
}
protected void renderResponse() throws Exception {
DocumentHome docHome = (DocumentHome)getInstance(DocumentHome.class);
assert docHome.getInstance().getId().equals(6l); // Init!
WikiDocument doc = docHome.getInstance();
// Header
doc.setHeader("[<=testMacro1[param1=value1]]\n[<=testMacro2]\nfoo");
docHome.syncMacros(doc);
assert doc.getHeaderMacros().size() == 2;
assert doc.getHeaderMacrosString().contains("testMacro1");
assert doc.getHeaderMacrosString().contains("testMacro2");
assert doc.getHeader().contains("[<=testMacro1[param1=value1]]\n");
assert doc.getHeader().contains("[<=testMacro2]\n");
assert doc.getHeader().indexOf("foo") == doc.getHeader().length()-3;
doc.removeHeaderMacros("testMacro1");
WikiMacro replacement = new WikiMacro("testMacro3");
replacement.getParams().put("p1", "value1");
replacement.getParams().put("p2", "value2");
doc.addHeaderMacro(replacement);
assert doc.getHeaderMacros().size() == 2;
assert doc.getHeaderMacrosString().contains("testMacro3");
assert doc.getHeaderMacrosString().contains("testMacro2");
assert doc.getHeader().contains("[<=testMacro3[p1=value1][p2=value2]]\n");
assert doc.getHeader().contains("[<=testMacro2]\n");
assert doc.getHeader().indexOf("foo") == doc.getHeader().length()-3;
}
}.run();
}
@Test
public void macrosFromDefaultStrings() throws Exception {
WikiDocument doc = new WikiDocument();
WikiDocumentDefaults defaults = new WikiDocumentDefaults() {
@Override
public String[] getContentMacrosAsString() {
return new String[] {"contentMacro1", "contentMacro2"};
}
@Override
public String getContentText() {
return "foo";
}
@Override
public String[] getHeaderMacrosAsString() {
return new String[] {"headerMacro1", "headerMacro2"};
}
@Override
public String getHeaderText() {
return "bar";
}
@Override
public String[] getFooterMacrosAsString() {
return new String[] {"footerMacro1", "footerMacro2"};
}
@Override
public String getFooterText() {
return "baz";
}
};
doc.setDefaults(defaults);
assert doc.getContentMacros().size() == 2;
assert doc.getContentMacrosString().contains("contentMacro1");
assert doc.getContentMacrosString().contains("contentMacro1");
assert doc.getContent().contains("[<=contentMacro1]");
assert doc.getContent().contains("[<=contentMacro2]");
assert doc.getContent().indexOf("foo") == doc.getContent().length()-3;
assert doc.getHeaderMacros().size() == 2;
assert doc.getHeaderMacrosString().contains("headerMacro1");
assert doc.getHeaderMacrosString().contains("headerMacro2");
assert doc.getHeader().contains("[<=headerMacro1]");
assert doc.getHeader().contains("[<=headerMacro2]");
assert doc.getHeader().indexOf("bar") == doc.getHeader().length()-3;
assert doc.getFooterMacros().size() == 2;
assert doc.getFooterMacrosString().contains("footerMacro1");
assert doc.getFooterMacrosString().contains("footerMacro2");
assert doc.getFooter().contains("[<=footerMacro1]");
assert doc.getFooter().contains("[<=footerMacro2]");
assert doc.getFooter().indexOf("baz") == 0;
}
@Test
public void macrosFromDefaultTypesafe() throws Exception {
WikiDocument doc = new WikiDocument();
WikiDocumentDefaults defaults = new WikiDocumentDefaults() {
@Override
public List<WikiMacro> getContentMacros() {
return new ArrayList<WikiMacro>() {{
add(new WikiMacro(0, "contentMacro1"));
add(new WikiMacro(1, "contentMacro2"));
}};
}
@Override
public String getContentText() {
return "foo";
}
@Override
public List<WikiMacro> getHeaderMacros() {
return new ArrayList<WikiMacro>() {{
add(new WikiMacro(0, "headerMacro1"));
add(new WikiMacro(1, "headerMacro2"));
}};
}
@Override
public String getHeaderText() {
return "bar";
}
@Override
public List<WikiMacro> getFooterMacros() {
return new ArrayList<WikiMacro>() {{
add(new WikiMacro(0, "footerMacro1"));
add(new WikiMacro(1, "footerMacro2"));
}};
}
@Override
public String getFooterText() {
return "baz";
}
};
doc.setDefaults(defaults);
assert doc.getContentMacros().size() == 2;
assert doc.getContentMacrosString().contains("contentMacro1");
assert doc.getContentMacrosString().contains("contentMacro1");
assert doc.getContent().contains("[<=contentMacro1]");
assert doc.getContent().contains("[<=contentMacro2]");
assert doc.getContent().indexOf("foo") == doc.getContent().length()-3;
assert doc.getHeaderMacros().size() == 2;
assert doc.getHeaderMacrosString().contains("headerMacro1");
assert doc.getHeaderMacrosString().contains("headerMacro2");
assert doc.getHeader().contains("[<=headerMacro1]");
assert doc.getHeader().contains("[<=headerMacro2]");
assert doc.getHeader().indexOf("bar") == doc.getHeader().length()-3;
assert doc.getFooterMacros().size() == 2;
assert doc.getFooterMacrosString().contains("footerMacro1");
assert doc.getFooterMacrosString().contains("footerMacro2");
assert doc.getFooter().contains("[<=footerMacro1]");
assert doc.getFooter().contains("[<=footerMacro2]");
assert doc.getFooter().indexOf("baz") == 0;
}
}
More information about the jboss-cvs-commits
mailing list