You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2008/01/17 01:38:24 UTC

svn commit: r612659 - /jakarta/jmeter/trunk/test/src/org/apache/jmeter/gui/action/TestLoad.java

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: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org