Author: scottbw
Date: Mon Feb 14 10:59:50 2011
New Revision: 1070437

URL: http://svn.apache.org/viewvc?rev=1070437&view=rev
Log:
Extended range of tests for widget outputter to cover more cases.

Modified:
    
incubator/wookie/trunk/parser/java/src-test/org/apache/wookie/w3c/test/WidgetOutputterTest.java

Modified: 
incubator/wookie/trunk/parser/java/src-test/org/apache/wookie/w3c/test/WidgetOutputterTest.java
URL: 
http://svn.apache.org/viewvc/incubator/wookie/trunk/parser/java/src-test/org/apache/wookie/w3c/test/WidgetOutputterTest.java?rev=1070437&r1=1070436&r2=1070437&view=diff
==============================================================================
--- 
incubator/wookie/trunk/parser/java/src-test/org/apache/wookie/w3c/test/WidgetOutputterTest.java
 (original)
+++ 
incubator/wookie/trunk/parser/java/src-test/org/apache/wookie/w3c/test/WidgetOutputterTest.java
 Mon Feb 14 10:59:50 2011
@@ -18,11 +18,14 @@ import static org.junit.Assert.assertEqu
 import static org.junit.Assert.assertTrue;
 
 import java.io.File;
+import java.io.FileOutputStream;
 import java.net.URL;
 
 import org.apache.wookie.w3c.INameEntity;
 import org.apache.wookie.w3c.W3CWidget;
 import org.apache.wookie.w3c.W3CWidgetFactory;
+import org.apache.wookie.w3c.exceptions.BadManifestException;
+import org.apache.wookie.w3c.exceptions.BadWidgetZipFileException;
 import org.apache.wookie.w3c.util.WidgetOutputter;
 import org.apache.wookie.w3c.util.WidgetPackageUtils;
 import org.junit.Test;
@@ -34,17 +37,64 @@ public class WidgetOutputterTest extends
        
        @Test
        public void outputString() throws Exception{
-               W3CWidget widget = 
load("http://dev.w3.org/2006/waf/widgets/test-suite/test-cases/ta-RRZxvvTFHx/001/b6.wgt";);
+               File testWidget = new File("build/widgets/bubbles.wgt");
+               W3CWidget widget = load(testWidget);
                WidgetOutputter outputter = new WidgetOutputter();
                outputter.setWidgetFolder("/widgets");
                String manifest = outputter.outputXMLString(widget);
-               assertTrue(manifest.contains("id=\"b6:\""));
+               
assertTrue(manifest.contains("id=\"http://www.opera.com/widgets/bubbles\"";));
                assertTrue(manifest.contains("<content src=\"index.html\""));
        }
+       @Test
+       public void outputString2() throws Exception{
+               File testWidget = new File("build/widgets/natter.wgt");
+               W3CWidget widget = load(testWidget);
+               WidgetOutputter outputter = new WidgetOutputter();
+               outputter.setWidgetFolder("/widgets");
+               String manifest = outputter.outputXMLString(widget);
+               
assertTrue(manifest.contains("id=\"http://www.getwookie.org/widgets/natter\"";));
+               assertTrue(manifest.contains("<content src=\"index.htm\""));
+               assertTrue(manifest.contains("name=\"moderator\" 
value=\"false\""));
+       }
+       @Test
+       public void outputString3() throws Exception{
+               File testWidget = new File("build/widgets/weather.wgt");
+               W3CWidget widget = load(testWidget);
+               WidgetOutputter outputter = new WidgetOutputter();
+               outputter.setWidgetFolder("/widgets");
+               String manifest = outputter.outputXMLString(widget);
+               
assertTrue(manifest.contains("id=\"http://www.getwookie.org/widgets/weather\"";));
+               
assertTrue(manifest.contains("origin=\"http://feeds.bbc.co.uk";));
+       }
+       @Test
+       public void outputString4() throws Exception{
+               File testWidget = new File("build/widgets/localetest.wgt");
+               W3CWidget widget = load(testWidget);
+               WidgetOutputter outputter = new WidgetOutputter();
+               outputter.setWidgetFolder("/widgets");
+               String manifest = outputter.outputXMLString(widget);
+               
assertTrue(manifest.contains("id=\"http://www.getwookie.org/widgets/localetest\"";));
+               assertTrue(manifest.contains("xml:lang=\"fr\">tester les 
paramètres régionaux</name>"));
+       }
+       
+       @Test
+       public void outputStream() throws Exception{
+               File testWidget = new File("build/widgets/geo.wgt");
+               W3CWidget widget = load(testWidget);
+               WidgetOutputter outputter = new WidgetOutputter();
+               outputter.setWidgetFolder("/widgets");
+               
+               File widgetFolder = new File(output.getPath());
+               File configXml = new File(widgetFolder, "config.xml");
+               FileOutputStream out = new FileOutputStream(configXml);
+               outputter.outputXML(widget, out);
+               assertTrue(configXml.exists());
+       }
        
        @Test 
        public void loadModifySave() throws Exception{
-               W3CWidget widget = 
load("http://dev.w3.org/2006/waf/widgets/test-suite/test-cases/ta-RRZxvvTFHx/001/b6.wgt";);
+               File testWidget = new File("build/widgets/bubbles.wgt");
+               W3CWidget widget = load(testWidget);
                INameEntity name = widget.getNames().get(0);
                name.setName("Modified Widget");
                WidgetOutputter outputter = new WidgetOutputter();
@@ -89,20 +139,28 @@ public class WidgetOutputterTest extends
                // Check the content is now pointing to the new location
                assertEquals("/zaphod.bee.ble/brox/b6/index.html", 
widget.getContentList().get(0).getSrc());
        }
-       
+       private W3CWidget load(File file) throws BadWidgetZipFileException, 
BadManifestException, Exception{
+               W3CWidgetFactory fac = getFactory();
+               W3CWidget widget = fac.parse(file);
+               return widget;          
+       }
        private W3CWidget load(String url) throws Exception{
+               W3CWidgetFactory fac = getFactory();
+               W3CWidget widget = fac.parse(new URL(url));
+               return widget;
+       }
+       
+       private W3CWidgetFactory getFactory() throws Exception{
                String outputPath = "/widgets";
-               
                // Load the widget
                W3CWidgetFactory fac = new W3CWidgetFactory();
                fac.setLocalPath(outputPath);
-               fac.setFeatures(new String[]{"feature:a9bb79c1"});
+               fac.setFeatures(new 
String[]{"feature:a9bb79c1","http://wave.google.com"});
                fac.setEncodings(new String[]{"UTF-8", 
"ISO-8859-1","Windows-1252"});
                if (download.exists()) download.delete();
                if (output.exists()) output.delete();
                output.mkdir();
                fac.setOutputDirectory(output.getAbsolutePath());
-               W3CWidget widget = fac.parse(new URL(url));
-               return widget;
+               return fac;
        }
 }


Reply via email to