Package org.jzonic.jlo

Source Code of org.jzonic.jlo.VariableManagerTest

/*
* ConfigurationTest.java
*
* Created on 19. November 2002, 22:37
*/
package org.jzonic.jlo;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
/**
* test cases for the for the VariableManager
*
* @author Andreas Mecky <andreas.mecky@xcom.de>
* @author Terry Dye <terry.dye@xcom.de>
*/
public class VariableManagerTest extends TestCase {
   
   
    public VariableManagerTest(String name) {
        super(name);
    }
    /**
     *  The main program for the ConfigurationTest class
     *
     *@param  args  The command line arguments
     */
    public static void main(String[] args) {
        junit.textui.TestRunner.run(VariableManagerTest.class);
    }

    public static Test suite() {
        TestSuite suite = new TestSuite(VariableManagerTest.class);       
        return suite;
    }
   
    protected void setUp() {    
    }
   
    protected void tearDown() {
    }
   
    public void testAddVars() {
        VariableManager vm = VariableManager.getInstance();
        vm.addVariable("test1", "hello", "test");
        vm.addVariable("test2","world","test");       
        assertEquals(2,vm.getVariableCount("test"));
    }
   
    public void testReplaceVariable() {
        VariableManager vm = VariableManager.getInstance();
        vm.addVariable("replace","me", "replace1");
        String line = "please ${replace}";
        String ret = vm.replaceVariables(line,"replace1");
        assertEquals("please me",ret);
    }
   
    public void testReplaceSeveralVariable() {
        VariableManager vm = VariableManager.getInstance();
        vm.addVariable("replace","me", "replace2");
        String line = "please ${replace} ${replace} ${replace}";
        String ret = vm.replaceVariables(line,"replace2");
        assertEquals("please me me me",ret);
    }
   
    public void testReplaceNEVariable() {
        VariableManager vm = VariableManager.getInstance();   
        vm.addVariable("replace","me", "replace2");
        String line = "please ${replacer}";
        String ret = vm.replaceVariables(line,"replace2");
        assertEquals("please ${replacer}",ret);
    }
   
    public void testReplaceNECVariable() {
        VariableManager vm = VariableManager.getInstance();           
        String line = "please ${replacer}";
        String ret = vm.replaceVariables(line,null);
        assertEquals("please ${replacer}",ret);
    }
   
    //
    // This section covers the env-variables
    //
    public void testReplaceEnvVariable() {
        VariableManager vm = VariableManager.getInstance();           
        String line = "please ${env:NUMBER_OF_PROCESSORS}";
        String ret = vm.replaceEnvVar(line);
        assertEquals("please 1",ret);
    }
   
    public void testReplaceNEEnvVariable() {
        VariableManager vm = VariableManager.getInstance();           
        String line = "please ${env:HELLO_WORLD}";
        String ret = vm.replaceEnvVar(line);
        assertEquals("please ${env:HELLO_WORLD}",ret);
    }
   
    public void _testReplaceSeveralEnvVariable() {
        VariableManager vm = VariableManager.getInstance();           
        String line = "please ${env:NUMBER_OF_PROCESSORS} - ${env:NUMBER_OF_PROCESSORS} - ${env:NUMBER_OF_PROCESSORS} - ${env:NUMBER_OF_PROCESSORS}";
        String ret = vm.replaceEnvVar(line);
        assertEquals("please 1 - 1 - 1 - 1",ret);
    }
   
    public void _testReplaceSystemVariable() {
        VariableManager vm = VariableManager.getInstance();   
        // TODO: find a better property that is the same on every machine
        String line = "please ${system:java.io.tmpdir}";
        String ret = vm.replaceVariables(line,"anyway");
        assertEquals("please C:\\DOCUME~1\\ADMINI~1\\LOCALS~1\\Temp\\",ret);
    }

}
TOP

Related Classes of org.jzonic.jlo.VariableManagerTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.