Author: sebb
Date: Wed Jan 16 16:38:23 2008
New Revision: 612659

URL: http://svn.apache.org/viewvc?rev=612659&view=rev
Log:
Check that all the jmx files in the demos directory load OK

Modified:
    jakarta/jmeter/trunk/test/src/org/apache/jmeter/gui/action/TestLoad.java

Modified: 
jakarta/jmeter/trunk/test/src/org/apache/jmeter/gui/action/TestLoad.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/trunk/test/src/org/apache/jmeter/gui/action/TestLoad.java?rev=612659&r1=612658&r2=612659&view=diff
==============================================================================
--- jakarta/jmeter/trunk/test/src/org/apache/jmeter/gui/action/TestLoad.java 
(original)
+++ jakarta/jmeter/trunk/test/src/org/apache/jmeter/gui/action/TestLoad.java 
Wed Jan 16 16:38:23 2008
@@ -26,9 +26,14 @@
 
 import junit.framework.TestSuite;
 
+import org.apache.jmeter.gui.GuiPackage;
+import org.apache.jmeter.gui.tree.JMeterTreeListener;
+import org.apache.jmeter.gui.tree.JMeterTreeModel;
 import org.apache.jmeter.junit.JMeterTestCase;
 import org.apache.jmeter.save.SaveService;
 import org.apache.jorphan.collections.HashTree;
+import org.apache.jorphan.logging.LoggingManager;
+import org.apache.log.Logger;
 
 /**
  * 
@@ -36,6 +41,8 @@
  */
 public class TestLoad extends JMeterTestCase {
 
+       private static final Logger log = LoggingManager.getLoggerForClass();
+       
        private static final String basedir = new 
File(System.getProperty("user.dir")).getParent();
        private static final File testfiledir = new 
File(basedir,"bin/testfiles");
        private static final File demofiledir = new File(basedir,"xdocs/demos");
@@ -48,6 +55,8 @@
                notTestPlan.add("ProxyServerTestPlan.jmx");// used by 
TestSaveService
        }
 
+       private static GuiPackage guiInstance = null;
+       
        private static final FilenameFilter jmxFilter = new FilenameFilter() {
                public boolean accept(File dir, String name) {
                        return name.endsWith(".jmx");
@@ -71,6 +80,7 @@
 
        public static TestSuite suite(){
                TestSuite suite=new TestSuite("Load Test");
+               suite.addTest(new TestLoad("checkGuiPackage"));
                scanFiles(suite,testfiledir);
                scanFiles(suite,demofiledir);
                return suite;
@@ -84,6 +94,17 @@
                }
        }
 
+       public void checkGuiPackage(){
+               guiInstance = GuiPackage.getInstance();
+               if (guiInstance == null){// e.g. if running this test 
stand-alone
+                       System.out.println("Creating GuiPackage");
+                       JMeterTreeModel treeModel = new JMeterTreeModel();
+                       JMeterTreeListener treeLis = new 
JMeterTreeListener(treeModel);
+                       guiInstance = GuiPackage.getInstance(treeLis, 
treeModel);
+           }
+               assertNotNull("GuiPackage should not be null",guiInstance);
+       }
+       
        public void checkTestFile() throws Exception{
                HashTree tree = null;
                try {
@@ -98,6 +119,14 @@
                final Object object = tree.getArray()[0];
                final String name = testFile.getName();
                
+               if (parent.equals("demos") && guiInstance != null) {
+                       try {
+                               guiInstance.addSubTree(tree);
+                       } catch (Exception e){
+                               log.warn(parent+ ": " +name,e);
+                               fail(parent+ ": " +name+" "+e);
+                       }
+               }
                if (! (object instanceof 
org.apache.jmeter.testelement.TestPlan) && !notTestPlan.contains(name)){
                        fail(parent+ ": " +name+" tree should be TestPlan, but 
is "+object.getClass().getName());
                }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to