/*
* JBoss, Home of Professional Open Source
*
* Distributable under LGPL license.
* See terms of license at gnu.org.
*/
package org.jboss.seam.wiki.test.browse;
import org.dbunit.operation.DatabaseOperation;
import org.jboss.seam.wiki.core.model.*;
import org.jboss.seam.wiki.core.action.DocumentHome;
import org.jboss.seam.mock.DBUnitSeamTest;
import org.testng.annotations.Test;
import java.util.List;
public class DisplayDocuments extends DBUnitSeamTest {
protected void prepareDBUnitOperations() {
beforeTestOperations.add(
new DataSetOperation("org/jboss/seam/wiki/test/WikiBaseData.dbunit.xml", DatabaseOperation.CLEAN_INSERT)
);
}
@Test
public void documentFromNodeId() throws Exception {
new NonFacesRequest("/wiki.xhtml") {
protected void beforeRequest() {
setParameter("nodeId", "6");
}
protected void renderResponse() throws Exception {
WikiDocument doc = (WikiDocument)getValue("#{currentDocument}");
assert doc != null;
assert doc.getId().equals(6l);
assert doc.getArea().getId().equals(3l);
WikiDirectory dir = (WikiDirectory)getValue("#{currentDirectory}");
assert dir != null;
assert dir.getId().equals(3l);
List<WikiNode> currentDirectoryPath = (List<WikiNode>)getValue("#{breadcrumb}");
assert currentDirectoryPath.size() == 2;
assert currentDirectoryPath.get(0).getId().equals( ((WikiDirectory)getValue("#{currentDirectory}")).getId() );
assert currentDirectoryPath.get(1).getId().equals( ((WikiDocument)getValue("#{currentDocument}")).getId() );
assert getRenderedViewId().equals("/docDisplay_d.xhtml");
}
}.run();
}
@Test
public void documentFromWikiName() throws Exception {
new NonFacesRequest("/wiki.xhtml") {
protected void beforeRequest() {
setParameter("areaName", "CCC");
setParameter("nodeName", "One");
}
protected void renderResponse() throws Exception {
WikiDocument doc = (WikiDocument)getValue("#{currentDocument}");
assert doc != null;
assert doc.getId().equals(6l);
WikiDirectory dir = (WikiDirectory)getValue("#{currentDirectory}");
assert dir != null;
assert dir.getId().equals(3l);
assert getRenderedViewId().equals("/docDisplay_d.xhtml");
}
}.run();
}
@Test
public void defaultDocumentFromAreaWikiName() throws Exception {
new NonFacesRequest("/wiki.xhtml") {
protected void beforeRequest() {
setParameter("areaName", "CCC");
}
protected void renderResponse() throws Exception {
WikiDocument doc = (WikiDocument)getValue("#{currentDocument}");
assert doc != null;
assert doc.getId().equals(6l);
WikiDirectory dir = (WikiDirectory)getValue("#{currentDirectory}");
assert dir != null;
assert dir.getId().equals(3l);
assert getRenderedViewId().equals("/docDisplay_d.xhtml");
}
}.run();
}
}