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 2004/01/23 03:28:18 UTC

cvs commit: jakarta-jmeter/src/functions/org/apache/jmeter/functions FileWrapper.java PackageTest.java

sebb        2004/01/22 18:28:18

  Modified:    src/functions/org/apache/jmeter/functions FileWrapper.java
                        PackageTest.java
  Log:
  Allow for default file name
  
  Revision  Changes    Path
  1.3       +34 -4     jakarta-jmeter/src/functions/org/apache/jmeter/functions/FileWrapper.java
  
  Index: FileWrapper.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/functions/org/apache/jmeter/functions/FileWrapper.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- FileWrapper.java	23 Jan 2004 01:27:08 -0000	1.2
  +++ FileWrapper.java	23 Jan 2004 02:28:18 -0000	1.3
  @@ -85,6 +85,8 @@
       private int currentRow;
       private static final int NO_LINE = -1;
       
  +    private static String defaultFile = ""; // for omitted file names
  +    
   	private static Map fileContainers = new HashMap(); // Map file names to containers
       
       /*
  @@ -104,12 +106,34 @@
   		}
   	};
   
  +    private static String checkDefault(String file)
  +    {
  +		if (file.length() == 0)
  +		{
  +			if (fileContainers.size() == 1 && defaultFile.length() > 0)
  +			{
  +				log.warn("Using default: "+defaultFile);
  +				file = defaultFile;
  +			}
  +			else
  +			{
  +				log.error("Cannot determine default file name");
  +			}
  +		}
  +    	return file;
  +    }
       /*
  -     * called by (file,alias)
  +     * called by CSVRead(file,alias)
        */
  -    public static void open(String file, String alias)
  +    public static synchronized void open(String file, String alias)
       {
       	log.info("Opening "+file+ " as " + alias);
  +    	file = checkDefault(file);
  +		if (alias.length() == 0)
  +		{
  +			log.error("Alias cannot be empty");
  +			return;
  +		} 
       	Map m = (Map) filePacks.get();
       	if (m.get(alias) == null)
       	{
  @@ -138,8 +162,11 @@
       	if ((frcc = (FileRowColContainer) fileContainers.get(alias)) == null)
       	{
       		frcc = new FileRowColContainer(file);
  -			log.info("Opened "+file+" as "+alias);
       		fileContainers.put(alias,frcc);
  +			log.info("Saved "+file+" as "+alias);
  +			if (defaultFile.length() == 0){
  +				defaultFile = file;// Save in case needed later
  +			}
       	}
       	return frcc;
       }
  @@ -151,6 +178,7 @@
        */
       public static void endRow(String file)
       {
  +    	file=checkDefault(file);
   		Map my = (Map) filePacks.get();
   		FileWrapper fw = (FileWrapper) (my).get(file);
   		if (fw == null)
  @@ -183,6 +211,7 @@
   			}
   			else
   			{
  +				file=checkDefault(file);
   				log.info("Attaching "+file);
   				open(file,file);
   				fw = (FileWrapper) my.get(file);
  @@ -217,5 +246,6 @@
   			i.remove();
   		}
   		fileContainers.clear();
  +		defaultFile = "";
   	}
   }
  
  
  
  1.5       +27 -12    jakarta-jmeter/src/functions/org/apache/jmeter/functions/PackageTest.java
  
  Index: PackageTest.java
  ===================================================================
  RCS file: /home/cvs/jakarta-jmeter/src/functions/org/apache/jmeter/functions/PackageTest.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- PackageTest.java	23 Jan 2004 01:15:17 -0000	1.4
  +++ PackageTest.java	23 Jan 2004 02:28:18 -0000	1.5
  @@ -8,7 +8,7 @@
    */
   package org.apache.jmeter.functions;
   
  -//import java.io.PrintWriter;
  +import java.io.PrintWriter;
   import java.util.Collection;
   import java.util.LinkedList;
   
  @@ -18,7 +18,7 @@
   
   import org.apache.jmeter.engine.util.CompoundVariable;
   import org.apache.jmeter.junit.JMeterTestCase;
  -//import org.apache.jorphan.logging.LoggingManager;
  +import org.apache.jorphan.logging.LoggingManager;
   //import org.apache.log.Logger;
   
   /**
  @@ -60,14 +60,14 @@
   		   suite.addTest(new PackageTest("CSVSetup"));
   		   suite.addTest(new PackageTest("CSVRun"));
   
  -           suite.addTest(new PackageTest("CSValias"));
  -
  -           //Reset files
  -           suite.addTest(new PackageTest("CSVSetup"));
  -		   TestSuite par = new ActiveTestSuite("Parallel");
  -		   par.addTest(new PackageTest("CSVThread1"));
  -		   par.addTest(new PackageTest("CSVThread2"));
  -		   suite.addTest(par);
  +//           suite.addTest(new PackageTest("CSValias"));
  +//
  +//           //Reset files
  +//           suite.addTest(new PackageTest("CSVSetup"));
  +//		   TestSuite par = new ActiveTestSuite("Parallel");
  +//		   par.addTest(new PackageTest("CSVThread1"));
  +//		   par.addTest(new PackageTest("CSVThread2"));
  +//		   suite.addTest(par);
   		   return suite;
       }
       
  @@ -184,6 +184,11 @@
   		assertEquals("b1",cr1.execute(null,null));
   		assertEquals("c1",cr2.execute(null,null));
   		assertEquals("d1",cr3.execute(null,null));
  +		
  +		assertEquals("a1",cr5.execute(null,null));
  +		assertEquals("",cr6.execute(null,null));
  +		assertEquals("a2",cr5.execute(null,null));
  +		
       }
       
       public void CSVParams() throws Exception
  @@ -217,6 +222,8 @@
   		cr2=setParams("testfiles/test.csv","2");
   		cr3=setParams("testfiles/test.csv","3");
   		cr4=setParams("testfiles/test.csv","next");
  +		cr5=setParams("","0");
  +		cr6=setParams("","next");
       }
       
       public void CSValias() throws Exception
  @@ -246,8 +253,16 @@
   		assertEquals("",s);
   		s = cr2.execute(null,null);
   		assertEquals("b2",s);
  +		
  +		// Empty string
   		s = cr5.execute(null,null);
  -		assertEquals("c1",s);
  +		assertEquals("d1",s);
  +
  +		s = cr6.execute(null,null);
  +		assertEquals("",s);
  +
  +		s = cr5.execute(null,null);
  +		assertEquals("d2",s);
   
       }
   
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org