From doxia-commits-return-778-apmail-maven-doxia-commits-archive=maven.apache.org@maven.apache.org Tue Feb 19 23:24:36 2008 Return-Path: Delivered-To: apmail-maven-doxia-commits-archive@www.apache.org Received: (qmail 22967 invoked from network); 19 Feb 2008 23:24:36 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 19 Feb 2008 23:24:36 -0000 Received: (qmail 68876 invoked by uid 500); 19 Feb 2008 23:24:31 -0000 Delivered-To: apmail-maven-doxia-commits-archive@maven.apache.org Received: (qmail 68852 invoked by uid 500); 19 Feb 2008 23:24:31 -0000 Mailing-List: contact doxia-commits-help@maven.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: doxia-dev@maven.apache.org Delivered-To: mailing list doxia-commits@maven.apache.org Received: (qmail 68840 invoked by uid 99); 19 Feb 2008 23:24:31 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 19 Feb 2008 15:24:31 -0800 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 19 Feb 2008 23:24:06 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 492C11A9832; Tue, 19 Feb 2008 15:24:15 -0800 (PST) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r629271 - in /maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink: SinkEventElement.java SinkEventTestingSink.java Date: Tue, 19 Feb 2008 23:24:14 -0000 To: doxia-commits@maven.apache.org From: ltheussl@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080219232415.492C11A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: ltheussl Date: Tue Feb 19 15:24:10 2008 New Revision: 629271 URL: http://svn.apache.org/viewvc?rev=629271&view=rev Log: Add a SinkEventTestingSink that will allow to test the order and arguments of events emitted by a parser Added: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventElement.java (with props) maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventTestingSink.java (with props) Added: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventElement.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventElement.java?rev=629271&view=auto ============================================================================== --- maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventElement.java (added) +++ maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventElement.java Tue Feb 19 15:24:10 2008 @@ -0,0 +1,78 @@ +package org.apache.maven.doxia.sink; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + +/** + * A single sink event, used for testing purposes in order to check + * the order and effect of some parser events. + * + * @author ltheussl + * @version $Id$ + * @since 1.0-beta-1 + */ +public class SinkEventElement +{ + /** The name of the sink event, ie the sink method name. */ + private final String methodName; + + /** The array of arguments to the sink method. */ + private final Object[] args; + + /** + * A SinkEventElement is characterized by the method name and associated array of arguments. + * + * @param name The name of the sink event, ie the sink method name. + * @param arguments The array of arguments to the sink method. + * For a no-arg element this may be null or an empty array. + */ + public SinkEventElement( String name, Object[] arguments ) + { + if ( name == null ) + { + throw new NullPointerException( "Element name can't be null!" ); + } + + this.methodName = name; + this.args = arguments; + } + + /** + * Check the name of the this event. + * + * @param name The name of the sink event to check. + * @return true if the names are equal. + */ + public boolean eventIs( String name ) + { + return methodName.equals( name ); + } + + /** + * Return the array of arguments to the sink method. + * + * @return the array of arguments to the sink method. + */ + public Object[] getArgs() + { + return this.args; + } + +} Propchange: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventElement.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventElement.java ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision" Added: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventTestingSink.java URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventTestingSink.java?rev=629271&view=auto ============================================================================== --- maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventTestingSink.java (added) +++ maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventTestingSink.java Tue Feb 19 15:24:10 2008 @@ -0,0 +1,616 @@ +package org.apache.maven.doxia.sink; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import org.apache.maven.doxia.sink.AbstractSink; + +import java.util.LinkedList; +import java.util.List; + +/** + * This sink is used for testing purposes in order to check wether + * the input of some parser is well-formed. + * + * @author ltheussl + * @version $Id$ + * @since 1.0-beta-1 + */ +public class SinkEventTestingSink + extends AbstractSink +{ + /** The list of sink events. */ + private final List events = new LinkedList(); + + /** + * Return the collected list of SinkEventElements. + * + * @return the collected list of SinkEventElements. + */ + public List getEventList() + { + return this.events; + } + + /** {@inheritDoc} */ + public void head() + { + addEvent( "head" ); + } + + /** {@inheritDoc} */ + public void head_() + { + addEvent( "head_" ); + } + + /** {@inheritDoc} */ + public void body() + { + addEvent( "body" ); + } + + /** {@inheritDoc} */ + public void body_() + { + addEvent( "body_" ); + } + + /** {@inheritDoc} */ + public void section1() + { + addEvent( "section1" ); + } + + /** {@inheritDoc} */ + public void section1_() + { + addEvent( "section1_" ); + } + + /** {@inheritDoc} */ + public void section2() + { + addEvent( "section2" ); + } + + /** {@inheritDoc} */ + public void section2_() + { + addEvent( "section2_" ); + } + + /** {@inheritDoc} */ + public void section3() + { + addEvent( "section3" ); + } + + /** {@inheritDoc} */ + public void section3_() + { + addEvent( "section3_" ); + } + + /** {@inheritDoc} */ + public void section4() + { + addEvent( "section4" ); + } + + /** {@inheritDoc} */ + public void section4_() + { + addEvent( "section4_" ); + } + + /** {@inheritDoc} */ + public void section5() + { + addEvent( "section5" ); + } + + /** {@inheritDoc} */ + public void section5_() + { + addEvent( "section5_" ); + } + + /** {@inheritDoc} */ + public void list() + { + addEvent( "list" ); + } + + /** {@inheritDoc} */ + public void list_() + { + addEvent( "list_" ); + } + + /** {@inheritDoc} */ + public void listItem() + { + addEvent( "listItem" ); + } + + /** {@inheritDoc} */ + public void listItem_() + { + addEvent( "listItem_" ); + } + + /** {@inheritDoc} */ + public void numberedList( int numbering ) + { + addEvent( "numberedList", new Object[] {new Integer( numbering )} ); + } + + /** {@inheritDoc} */ + public void numberedList_() + { + addEvent( "numberedList_" ); + } + + /** {@inheritDoc} */ + public void numberedListItem() + { + addEvent( "numberedListItem" ); + } + + /** {@inheritDoc} */ + public void numberedListItem_() + { + addEvent( "numberedListItem_" ); + } + + /** {@inheritDoc} */ + public void definitionList() + { + addEvent( "definitionList" ); + } + + /** {@inheritDoc} */ + public void definitionList_() + { + addEvent( "definitionList_" ); + } + + /** {@inheritDoc} */ + public void definitionListItem() + { + addEvent( "definitionListItem" ); + } + + /** {@inheritDoc} */ + public void definitionListItem_() + { + addEvent( "definitionListItem_" ); + } + + /** {@inheritDoc} */ + public void definition() + { + addEvent( "definition" ); + } + + /** {@inheritDoc} */ + public void definition_() + { + addEvent( "definition_" ); + } + + /** {@inheritDoc} */ + public void figure() + { + addEvent( "figure" ); + } + + /** {@inheritDoc} */ + public void figure_() + { + addEvent( "figure_" ); + } + + /** {@inheritDoc} */ + public void table() + { + addEvent( "table" ); + } + + /** {@inheritDoc} */ + public void table_() + { + addEvent( "table_" ); + } + + /** {@inheritDoc} */ + public void tableRows( int[] justification, boolean grid ) + { + addEvent( "tableRows", new Object[] {justification, new Boolean( grid )} ); + } + + /** {@inheritDoc} */ + public void tableRows_() + { + addEvent( "tableRows_" ); + } + + /** {@inheritDoc} */ + public void tableRow() + { + addEvent( "tableRow" ); + } + + /** {@inheritDoc} */ + public void tableRow_() + { + addEvent( "tableRow_" ); + } + + /** {@inheritDoc} */ + public void title() + { + addEvent( "title" ); + } + + /** {@inheritDoc} */ + public void title_() + { + addEvent( "title_" ); + } + + /** {@inheritDoc} */ + public void author() + { + addEvent( "author" ); + } + + /** {@inheritDoc} */ + public void author_() + { + addEvent( "author_" ); + } + + /** {@inheritDoc} */ + public void date() + { + addEvent( "date" ); + } + + /** {@inheritDoc} */ + public void date_() + { + addEvent( "date_" ); + } + + /** {@inheritDoc} */ + public void sectionTitle() + { + addEvent( "sectionTitle" ); + } + + /** {@inheritDoc} */ + public void sectionTitle_() + { + addEvent( "sectionTitle_" ); + } + + /** {@inheritDoc} */ + public void sectionTitle1() + { + addEvent( "sectionTitle1" ); + } + + /** {@inheritDoc} */ + public void sectionTitle1_() + { + addEvent( "sectionTitle1_" ); + } + + /** {@inheritDoc} */ + public void sectionTitle2() + { + addEvent( "sectionTitle2" ); + } + + /** {@inheritDoc} */ + public void sectionTitle2_() + { + addEvent( "sectionTitle2_" ); + } + + /** {@inheritDoc} */ + public void sectionTitle3() + { + addEvent( "sectionTitle3" ); + } + + /** {@inheritDoc} */ + public void sectionTitle3_() + { + addEvent( "sectionTitle3_" ); + } + + /** {@inheritDoc} */ + public void sectionTitle4() + { + addEvent( "sectionTitle4" ); + } + + /** {@inheritDoc} */ + public void sectionTitle4_() + { + addEvent( "sectionTitle4_" ); + } + + /** {@inheritDoc} */ + public void sectionTitle5() + { + addEvent( "sectionTitle5" ); + } + + /** {@inheritDoc} */ + public void sectionTitle5_() + { + addEvent( "sectionTitle5_" ); + } + + /** {@inheritDoc} */ + public void paragraph() + { + addEvent( "paragraph" ); + } + + /** {@inheritDoc} */ + public void paragraph_() + { + addEvent( "paragraph_" ); + } + + /** {@inheritDoc} */ + public void verbatim( boolean boxed ) + { + addEvent( "verbatim", new Object[] {new Boolean( boxed )} ); + } + + /** {@inheritDoc} */ + public void verbatim_() + { + addEvent( "verbatim_" ); + } + + /** {@inheritDoc} */ + public void definedTerm() + { + addEvent( "definedTerm" ); + } + + /** {@inheritDoc} */ + public void definedTerm_() + { + addEvent( "definedTerm_" ); + } + + /** {@inheritDoc} */ + public void figureCaption() + { + addEvent( "figureCaption" ); + } + + /** {@inheritDoc} */ + public void figureCaption_() + { + addEvent( "figureCaption_" ); + } + + /** {@inheritDoc} */ + public void tableCell() + { + addEvent( "tableCell" ); + } + + /** {@inheritDoc} */ + public void tableCell( String width ) + { + addEvent( "tableCell", new Object[] {width} ); + } + + /** {@inheritDoc} */ + public void tableCell_() + { + addEvent( "tableCell_" ); + } + + /** {@inheritDoc} */ + public void tableHeaderCell() + { + addEvent( "tableHeaderCell" ); + } + + /** {@inheritDoc} */ + public void tableHeaderCell( String width ) + { + addEvent( "tableHeaderCell", new Object[] {width} ); + } + + /** {@inheritDoc} */ + public void tableHeaderCell_() + { + addEvent( "tableHeaderCell_" ); + } + + /** {@inheritDoc} */ + public void tableCaption() + { + addEvent( "tableCaption" ); + } + + /** {@inheritDoc} */ + public void tableCaption_() + { + addEvent( "tableCaption_" ); + } + + /** {@inheritDoc} */ + public void figureGraphics( String name ) + { + addEvent( "figureGraphics", new Object[] {name} ); + } + + /** {@inheritDoc} */ + public void horizontalRule() + { + addEvent( "horizontalRule" ); + } + + /** {@inheritDoc} */ + public void pageBreak() + { + addEvent( "pageBreak" ); + } + + /** {@inheritDoc} */ + public void anchor( String name ) + { + addEvent( "anchor", new Object[] {name} ); + } + + /** {@inheritDoc} */ + public void anchor_() + { + addEvent( "anchor_" ); + } + + /** {@inheritDoc} */ + public void link( String name ) + { + addEvent( "link", new Object[] {name} ); + } + + /** {@inheritDoc} */ + public void link_() + { + addEvent( "link_" ); + } + + /** {@inheritDoc} */ + public void italic() + { + addEvent( "italic" ); + } + + /** {@inheritDoc} */ + public void italic_() + { + addEvent( "italic_" ); + } + + /** {@inheritDoc} */ + public void bold() + { + addEvent( "bold" ); + } + + /** {@inheritDoc} */ + public void bold_() + { + addEvent( "bold_" ); + } + + /** {@inheritDoc} */ + public void monospaced() + { + addEvent( "monospaced" ); + } + + /** {@inheritDoc} */ + public void monospaced_() + { + addEvent( "monospaced_" ); + } + + /** {@inheritDoc} */ + public void lineBreak() + { + addEvent( "lineBreak" ); + } + + /** {@inheritDoc} */ + public void nonBreakingSpace() + { + addEvent( "nonBreakingSpace" ); + } + + /** {@inheritDoc} */ + public void text( String text ) + { + addEvent( "text", new Object[] {text} ); + } + + /** {@inheritDoc} */ + public void rawText( String text ) + { + addEvent( "rawText", new Object[] {text} ); + } + + /** {@inheritDoc} */ + public void comment( String comment ) + { + addEvent( "comment", new Object[] {comment} ); + } + + /** {@inheritDoc} */ + public void flush() + { + addEvent( "flush" ); + } + + /** {@inheritDoc} */ + public void close() + { + addEvent( "close" ); + } + + // + // private + // + + /** + * Adds a no-arg event to the list of events. + * + * @param string the name of the event. + */ + private void addEvent( String string ) + { + addEvent( string, null ); + } + + /** + * Adds a no-arg event to the list of events. + * + * @param string the name of the event. + * @param arguments The array of arguments to the sink method. + */ + private void addEvent( String string, Object[] arguments ) + { + events.add( new SinkEventElement( string, arguments ) ); + } + +} Propchange: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventTestingSink.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: maven/doxia/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/sink/SinkEventTestingSink.java ------------------------------------------------------------------------------ svn:keywords = "Author Date Id Revision"