    1   /*
    2    *  soapUI, copyright (C) 2004-2007 eviware.com
    3    *
    4    *  soapUI is free software; you can redistribute it and/or modify it under the
    5    *  terms of version 2.1 of the GNU Lesser General Public License as published by
    6    *  the Free Software Foundation.
    7    *
    8    *  soapUI is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
    9    *  even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    10   *  See the GNU Lesser General Public License for more details at gnu.org.
    11   */
    12
    13  package com.eviware.soapui.impl.wsdl.submit.filters;
    14
    15  import com.eviware.soapui.impl.wsdl.WsdlSubmitContext;
    16  import com.eviware.soapui.impl.wsdl.submit.transports.http.BaseHttpRequestTransport;
    17
    18  import junit.framework.TestCase;
    19
    20  public class RemoveEmptyContentRequestFilterTestCase extends TestCase
    21  {
    22  	public void testRemoval() throws Exception
    23  	{
    24  		doRemoval( "<test><testing/></test>", "<test/>" );
    25  		doRemoval( "<test><testing test=\"\"/></test>", "<test/>" );
    26
    27  		doRemoval( "<test><testing>   </testing></test>", "<test/>" );
    28  		doRemoval( "<test><testing>  <testar test=\"\"></testar> </testing></test>",
    29  					"<test><testing>   </testing></test>" );
    30
    31  		doRemoval( "<test><testing>\n   <testar test=\"\"></testar>\n </testing></test>",
    32  		"<test><testing>\n   \n </testing></test>" );
    33
    34  		doRemoval( "<test></test>", "<test></test>" );
    35
    36  		doRemoval( "<test><testing></test>", "<test><testing></test>" );
    37  	}
    38
    39  	public void doRemoval( String request, String expected ) throws Exception
    40  	{
    41  		RemoveEmptyContentRequestFilter filter = new RemoveEmptyContentRequestFilter();
    42  		WsdlSubmitContext context = new WsdlSubmitContext();
    43
    44
    45  		context.setProperty( BaseHttpRequestTransport.REQUEST_CONTENT , request );
    46
    47  		filter.filterRequest( context, null );
    48
    49  		assertEquals( expected, context.getProperty( BaseHttpRequestTransport.REQUEST_CONTENT ) );
    50  	}
    51  }