// Copyright � 2006-2007 ASERT. Released under the Canoo Webtest license. package com.canoo.webtest.extension; import com.canoo.webtest.steps.AbstractFilter; import com.canoo.webtest.steps.Step; /** * Test for {@link MatchLinesFilter}. * * @author Paul King */ public class MatchLinesFilterTest extends BaseFilterTestCase { private static final String LS = System.getProperty("line.separator"); private static final String SOURCE_1 = "The quick brown" + LS + "fox jumped over" + LS + "the lazy dog" + LS; private static final String REGEX_1 = ".*\\W[df]o[gx]\\W?.*|.*\\W[df]o[gx]|[df]o[gx]\\W?.*"; private static final String EXPECTED_1A = "fox jumped over" + LS + "the lazy dog" + LS; private static final String EXPECTED_1B = "The quick brown" + LS; private MatchLinesFilter fFilter; protected AbstractFilter getFilter() { return fFilter; } public void testFilter() throws Exception { fFilter.setRegex(REGEX_1); checkFilter(EXPECTED_1A, SOURCE_1); fFilter.setRemove("true"); checkFilter(EXPECTED_1B, SOURCE_1); } protected void setUp() throws Exception { super.setUp(); fFilter = (MatchLinesFilter) getStep(); } public void testFailsIfNoRegex() { checkFailsIfNoParam("regex"); } public void testFailsIfNoResponse() { fFilter.setRegex("dummy"); checkFailsIfNoResponse(); } protected Step createStep() { return new MatchLinesFilter(); } }