/** * Copyright 2007 The JA-SIG Collaborative. All rights reserved. * See license distributed with this file and * available online at http://www.uportal.org/license.html */ package org.jasig.portal.io; import static org.jasig.portal.io.ChannelTitleIncorporationWiterFilter.TITLE_TOKEN_PREFIX; import static org.jasig.portal.io.ChannelTitleIncorporationWiterFilter.TITLE_TOKEN_SUFFIX; import java.io.StringWriter; import junit.framework.TestCase; /** * @author Eric Dalquist * @version $Revision$ */ public class ChannelTitleIncorporationWiterFilterTest extends TestCase { public void testRewriting() throws Exception { //normal test this.testRewriting( "\"Channel", "\"""); //start of string this.testRewriting( "Channel '12' Title\"/>", TITLE_TOKEN_PREFIX + "12" + TITLE_TOKEN_SUFFIX + "\"/>"); //end of string this.testRewriting( "\"Channel", "\"""); /* Not applicable with a single char suffix //partial suffix this.testRewriting( "\"Channel", "\"""); */ //no channel id this.testRewriting( "\""", "\"""); //max length channel id this.testRewriting( "\"Channel", "\"""); //too-long channel id this.testRewriting( "\""", "\"""); //nested too-long channel id this.testRewriting( "\"" Channel \'8901234567890123\' Title", "\"" " + TITLE_TOKEN_PREFIX + "8901234567890123" + TITLE_TOKEN_SUFFIX + ""); } private void testRewriting(String expected, String toFilter) throws Exception { final StringWriter writer = new StringWriter(); final ChannelTitleIncorporationWiterFilter filter = new ChannelTitleIncorporationWiterFilter(writer); filter.write(toFilter); filter.flush(); filter.close(); final StringBuffer filteredString = writer.getBuffer(); System.out.println("I|" + toFilter + "|"); System.out.println("O|" + filteredString + "|"); System.out.println("E|" + expected + "|"); System.out.println(); assertEquals(expected, filteredString.toString()); } }