Author: vsiveton
Date: Sat Jan 27 07:28:24 2007
New Revision: 500547

URL: http://svn.apache.org/viewvc?view=rev&rev=500547
Log:
DOXIA-27: sink validation (sink advisor)
Submitted by: Juan F. Codagnone
Reviewed by: Vincent Siveton

o Added miss test cases (for r349241)
o Applied with new license header

Added:
    
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/
    
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/AdvicedSinkTest.java
   (with props)
    
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/HangingElemementAdvisorFactoryTest.java
   (with props)

Added: 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/AdvicedSinkTest.java
URL: 
http://svn.apache.org/viewvc/maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/AdvicedSinkTest.java?view=auto&rev=500547
==============================================================================
--- 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/AdvicedSinkTest.java
 (added)
+++ 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/AdvicedSinkTest.java
 Sat Jan 27 07:28:24 2007
@@ -0,0 +1,60 @@
+package org.apache.maven.doxia.validation;
+
+/*
+ * 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.Sink;
+import org.apache.maven.doxia.sink.SinkAdapter;
+import org.apache.maven.doxia.validation.advices.MethodBeforeAdvice;
+
+import junit.framework.TestCase;
+
+/**
+ * unit test
+ *
+ * @author Juan F. Codagnone
+ * @since Nov 6, 2005
+ */
+public class AdvicedSinkTest
+    extends TestCase
+{
+
+    /** unit test */
+    public void testException()
+    {
+        final Sink sink = new AdvicedSink( new MethodBeforeAdvice[] {}, new 
SinkAdapter()
+        {
+            /** @see 
org.apache.maven.doxia.sink.SinkAdapter#anchor(java.lang.String) */
+            public void anchor( String arg0 )
+            {
+                throw new IllegalArgumentException( "foo" );
+            }
+        } );
+
+        try
+        {
+            sink.anchor( "ok" );
+            fail();
+        }
+        catch ( final IllegalArgumentException e )
+        {
+            assertEquals( e.getMessage(), "foo" );
+        }
+    }
+}

Propchange: 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/AdvicedSinkTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/AdvicedSinkTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/HangingElemementAdvisorFactoryTest.java
URL: 
http://svn.apache.org/viewvc/maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/HangingElemementAdvisorFactoryTest.java?view=auto&rev=500547
==============================================================================
--- 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/HangingElemementAdvisorFactoryTest.java
 (added)
+++ 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/HangingElemementAdvisorFactoryTest.java
 Sat Jan 27 07:28:24 2007
@@ -0,0 +1,87 @@
+package org.apache.maven.doxia.validation;
+
+/*
+ * 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 junit.framework.TestCase;
+
+import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.sink.SinkAdapter;
+import org.apache.maven.doxia.validation.advices.HangingElementAdvice;
+import org.apache.maven.doxia.validation.advices.MethodBeforeAdvice;
+
+/**
+ * Unit test for
+ * [EMAIL PROTECTED] 
org.apache.maven.doxia.validation.advices.HangingElemementAdvisorFactory}
+ *
+ * @author Juan F. Codagnone
+ * @since Nov 6, 2005
+ */
+public class HangingElemementAdvisorFactoryTest
+    extends TestCase
+{
+
+    /** unit test */
+    public final void testOk()
+    {
+        final Sink sink = new AdvicedSink( new MethodBeforeAdvice[] { new 
HangingElementAdvice(), }, new SinkAdapter() );
+
+        sink.text( "foo" );
+        sink.paragraph();
+        sink.list();
+        sink.list_();
+        sink.paragraph_();
+    }
+
+    /** unit test */
+    public final void testWrongOrder()
+    {
+        final Sink sink = new AdvicedSink( new MethodBeforeAdvice[] { new 
HangingElementAdvice(), }, new SinkAdapter() );
+
+        sink.paragraph();
+        sink.list();
+        try
+        {
+            sink.paragraph_();
+            fail();
+        }
+        catch ( final IllegalStateException e )
+        {
+            // ok
+        }
+    }
+
+    /** unit test */
+    public final void testHanging()
+    {
+        final Sink sink = new AdvicedSink( new MethodBeforeAdvice[] { new 
HangingElementAdvice(), }, new SinkAdapter() );
+
+        sink.paragraph();
+        sink.paragraph_();
+        try
+        {
+            sink.paragraph_();
+            fail();
+        }
+        catch ( final IllegalStateException e )
+        {
+            // ok
+        }
+    }
+}

Propchange: 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/HangingElemementAdvisorFactoryTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
maven/doxia/trunk/doxia-core/src/test/java/org/apache/maven/doxia/validation/HangingElemementAdvisorFactoryTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"


Reply via email to