/******************************************************************************* * Copyright (c) 2006 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.ua.tests.util; /** * A utility class for working with XHTML. */ public class XHTMLUtil { /* * Some of the XHTML content is environment-specific. This means it changes * depending on the test machine, location on filesystem, etc. This content * is not important for this test so just strip it out before comparing the * serializations. */ public static String removeEnvironmentSpecificContent(String xhtml) { /* * Remove the space between the last attribute value of a tag and * the closing part "/>". The Sun 1.5 JDK's XML DOM serializer will * always remove it, and 1.4 will always add it, so need to pick one * and adapt all documents to it. * * For example: * <myElement myAttribute="myValue" /> * becomes: * <myElement myAttribute="myValue"/> */ xhtml = xhtml.replaceAll(" />", "/>"); /* * The base tag is added before showing in browser. It contains an * absolute path in filesystem. */ xhtml = xhtml.replaceAll("<base href=\".*\"/>", ""); /* * The order of the params for the meta tag comes out differently on * different platforms. I'm not sure why, and why just this tag. We * don't care about this one for our tests anyway, so just strip it. */ xhtml = xhtml.replaceAll("<meta .*/>", ""); return xhtml; } }