content: /**
   * Scaffolding file used to store all the setups needed to run 
   * tests automatically generated by EvoSuite
   * Tue Mar 19 18:15:33 GMT 2024
   */
  
  package org.javex;
  
  import org.evosuite.runtime.annotation.EvoSuiteClassExclude;
  import org.junit.jupiter.api.BeforeAll;
  import org.junit.jupiter.api.BeforeEach;
  import org.junit.jupiter.api.AfterEach;
  import org.evosuite.runtime.sandbox.Sandbox;
  import org.evosuite.runtime.sandbox.Sandbox.SandboxMode;
  
  @EvoSuiteClassExclude
  public class Expression_ESTest_scaffolding {
  
    @org.junit.jupiter.api.extension.RegisterExtension
    public org.evosuite.runtime.vnet.NonFunctionalRequirementExtension nfr = new org.evosuite.runtime.vnet.NonFunctionalRequirementExtension();
  
    private org.evosuite.runtime.thread.ThreadStopper threadStopper =  new org.evosuite.runtime.thread.ThreadStopper (org.evosuite.runtime.thread.KillSwitchHandler.getInstance(), 3000);
  
  
    @BeforeAll
    public static void initEvoSuiteFramework() { 
      org.evosuite.runtime.RuntimeSettings.className = "org.javex.Expression"; 
      org.evosuite.runtime.GuiSupport.initialize(); 
      org.evosuite.runtime.RuntimeSettings.maxNumberOfThreads = 100; 
      org.evosuite.runtime.RuntimeSettings.maxNumberOfIterationsPerLoop = 10000; 
      org.evosuite.runtime.RuntimeSettings.mockSystemIn = true; 
      org.evosuite.runtime.RuntimeSettings.sandboxMode = org.evosuite.runtime.sandbox.Sandbox.SandboxMode.OFF; 
      org.evosuite.runtime.sandbox.Sandbox.initializeSecurityManagerForSUT(); 
      org.evosuite.runtime.classhandling.JDKClassResetter.init();
      setSystemProperties();
      initializeClasses();
      org.evosuite.runtime.Runtime.getInstance().resetRuntime(); 
    } 
  
    @BeforeEach
    public void initTestCase(){ 
      threadStopper.storeCurrentThreads();
      threadStopper.startRecordingTime();
      org.evosuite.runtime.jvm.ShutdownHookHandler.getInstance().initHandler(); 
      org.evosuite.runtime.sandbox.Sandbox.goingToExecuteSUTCode(); 
      org.evosuite.runtime.GuiSupport.setHeadless(); 
      org.evosuite.runtime.Runtime.getInstance().resetRuntime(); 
      org.evosuite.runtime.agent.InstrumentingAgent.activate(); 
    } 
  
    @AfterEach
    public void doneWithTestCase(){ 
      threadStopper.killAndJoinClientThreads();
      org.evosuite.runtime.jvm.ShutdownHookHandler.getInstance().safeExecuteAddedHooks(); 
      org.evosuite.runtime.classhandling.JDKClassResetter.reset(); 
      resetClasses(); 
      org.evosuite.runtime.sandbox.Sandbox.doneWithExecutingSUTCode(); 
      org.evosuite.runtime.agent.InstrumentingAgent.deactivate(); 
      org.evosuite.runtime.GuiSupport.restoreHeadlessMode(); 
    } 
  
    public static void setSystemProperties() {
   
      /*No java.lang.System property to set*/
    }
  
    private static void initializeClasses() {
      org.evosuite.runtime.classhandling.ClassStateSupport.initializeClasses(Expression_ESTest_scaffolding.class.getClassLoader() ,
        "org.javex.functions.logical.GreaterEqThanFunction",
        "org.javex.functions.math.SqrtFunction",
        "org.javex.evaluators.two.math.MultiplyEvaluator",
        "org.javex.evaluators.two.logical.ContainsEvaluator",
        "org.javex.functions.logical.OrFunction",
        "org.javex.functions.ThreeValuesFunction",
        "org.javex.functions.logical.NotFunction",
        "org.javex.evaluators.one.string.SubStringEvaluator",
        "org.javex.functions.TwoValuesFunction",
        "org.javex.functions.logical.GreaterThanFunction",
        "org.javex.functions.logical.EqualsFunction",
        "org.javex.ExpressionStack",
        "org.javex.evaluators.two.logical.LessEqThanEvaluator",
        "org.javex.evaluators.two.math.PowEvaluator",
        "org.javex.functions.logical.ContainsFunction",
        "org.javex.evaluators.two.logical.GreaterThanEvaluator",
        "org.javex.functions.logical.LessThanFunction",
        "org.javex.evaluators.one.date.DateAddEvaluator",
        "org.javex.evaluators.one.string.LengthEvaluator",
        "org.javex.evaluators.two.math.PlusEvaluator",
        "org.javex.evaluators.two.logical.BetweenEvaluator",
        "org.javex.functions.logical.EndsWithFunction",
        "org.javex.evaluators.three.logical.StartsWithEvaluator",
        "org.javex.functions.math.MultiplyFunction",
        "org.javex.functions.OneValueFunction",
        "org.javex.evaluators.two.TwoValueEvaluator",
        "org.javex.functions.math.PlusFunction",
        "org.javex.evaluators.one.logical.IsNullEvaluator",
        "org.javex.functions.logical.BetweenFunction",
        "org.javex.Expression",
        "org.javex.evaluators.two.logical.NotEqualsEvaluator",
        "org.javex.evaluators.three.logical.EndsWithEvaluator",
        "org.javex.functions.math.SubstractFunction",
        "org.javex.functions.math.PowerCharFunction",
        "org.javex.functions.string.SubStringFunction",
        "org.javex.ExpressionImpl",
        "org.javex.functions.logical.LessEqThanFunction",
        "org.javex.evaluators.one.logical.NotEvaluator",
        "org.javex.evaluators.one.string.ToLowerEvaluator",
        "org.javex.functions.logical.IsNullFunction",
        "org.javex.functions.logical.IsEmptyFunction",
        "org.javex.evaluators.two.logical.EqualsEvaluator",
        "org.javex.functions.logical.NotEqualsFunction",
        "org.javex.functions.string.LengthFunction",
        "org.javex.functions.math.DivideFunction",
        "org.javex.evaluators.Evaluator",
        "org.javex.functions.logical.StartsWithFunction",
        "org.javex.evaluators.two.logical.GreaterEqThanEvaluator",
        "org.javex.functions.string.ToUpperFunction",
        "org.javex.evaluators.two.logical.InListEvaluator",
        "org.javex.GenericFunctionExpression",
        "org.javex.evaluators.one.string.ToUpperEvaluator",
        "org.javex.functions.logical.InListFunction",
        "org.javex.functions.date.DateDiffFunction",
        "org.javex.evaluators.two.logical.MatchesEvaluator",
        "org.javex.evaluators.one.math.AbsEvaluator",
        "org.javex.evaluators.two.logical.AndEvaluator",
        "org.javex.utils.JavexUtils",
        "org.javex.evaluators.one.OneValueEvaluator",
        "org.javex.evaluators.two.logical.OrEvaluator",
        "org.javex.exceptions.WrongValuesException",
        "org.javex.evaluators.two.logical.LessThanEvaluator",
        "org.javex.functions.math.AbsFunction",
        "org.javex.functions.date.DateAddFunction",
        "org.javex.evaluators.two.math.SubstractEvaluator",
        "org.javex.functions.logical.NotCharFunction",
        "org.javex.FunctionExpression",
        "org.javex.functions.math.PowerFunction",
        "org.javex.evaluators.one.date.DateDiffEvaluator",
        "org.javex.evaluators.two.math.DivideEvaluator",
        "org.javex.functions.logical.MatchesFunction",
        "org.javex.functions.string.ToLowerFunction",
        "org.javex.evaluators.one.logical.IsEmptyEvaluator",
        "org.javex.functions.logical.IsFunction",
        "org.javex.functions.logical.AndFunction",
        "org.javex.evaluators.one.math.SqrtEvaluator"
      );
    } 
  
    private static void resetClasses() {
      org.evosuite.runtime.classhandling.ClassResetter.getInstance().setClassLoader(Expression_ESTest_scaffolding.class.getClassLoader()); 
  
      org.evosuite.runtime.classhandling.ClassStateSupport.resetClasses(
        "org.javex.Expression",
        "org.javex.utils.JavexUtils",
        "org.javex.FunctionExpression",
        "org.javex.functions.TwoValuesFunction",
        "org.javex.functions.logical.AndFunction",
        "org.javex.functions.logical.BetweenFunction",
        "org.javex.functions.logical.ContainsFunction",
        "org.javex.functions.ThreeValuesFunction",
        "org.javex.functions.logical.EndsWithFunction",
        "org.javex.functions.logical.EqualsFunction",
        "org.javex.functions.logical.GreaterEqThanFunction",
        "org.javex.functions.logical.GreaterThanFunction",
        "org.javex.functions.OneValueFunction",
        "org.javex.functions.logical.IsEmptyFunction",
        "org.javex.functions.logical.IsFunction",
        "org.javex.functions.logical.IsNullFunction",
        "org.javex.functions.logical.LessEqThanFunction",
        "org.javex.functions.logical.LessThanFunction",
        "org.javex.functions.logical.NotEqualsFunction",
        "org.javex.functions.logical.NotFunction",
        "org.javex.functions.logical.NotCharFunction",
        "org.javex.functions.logical.OrFunction",
        "org.javex.functions.logical.StartsWithFunction",
        "org.javex.functions.logical.MatchesFunction",
        "org.javex.functions.logical.InListFunction",
        "org.javex.functions.math.AbsFunction",
        "org.javex.functions.math.DivideFunction",
        "org.javex.functions.math.MultiplyFunction",
        "org.javex.functions.math.PlusFunction",
        "org.javex.functions.math.SqrtFunction",
        "org.javex.functions.math.SubstractFunction",
        "org.javex.functions.math.PowerFunction",
        "org.javex.functions.math.PowerCharFunction",
        "org.javex.functions.date.DateAddFunction",
        "org.javex.functions.date.DateDiffFunction",
        "org.javex.functions.string.LengthFunction",
        "org.javex.functions.string.SubStringFunction",
        "org.javex.functions.string.ToLowerFunction",
        "org.javex.functions.string.ToUpperFunction",
        "org.javex.GenericFunctionExpression",
        "org.javex.ExpressionStack",
        "org.javex.ExpressionImpl",
        "org.javex.evaluators.Evaluator"
      );
    }
  }
  