Search in sources :

Example 16 with EvoSuiteSolver

use of org.evosuite.symbolic.solver.avm.EvoSuiteSolver in project evosuite by EvoSuite.

the class TestRealSearch method testNEVariable.

@Test
public void testNEVariable() {
    double var1 = 1.5546;
    double var2 = 1.5546;
    List<Constraint<?>> constraints = new ArrayList<Constraint<?>>();
    constraints.add(new RealConstraint(new RealVariable("test1", var1, -1000000.0, 1000000.0), Comparator.NE, new RealVariable("test2", var2, -1000000.0, 1000000.0)));
    EvoSuiteSolver skr = new EvoSuiteSolver();
    Map<String, Object> result;
    try {
        result = solve(skr, constraints);
        assertNotNull(result);
        if (result.containsKey("test1"))
            var1 = ((Number) result.get("test1")).doubleValue();
        if (result.containsKey("test2"))
            var2 = ((Number) result.get("test2")).doubleValue();
        assertTrue(var1 != var2);
    } catch (SolverTimeoutException e) {
        fail();
    }
}
Also used : SolverTimeoutException(org.evosuite.symbolic.solver.SolverTimeoutException) Constraint(org.evosuite.symbolic.expr.Constraint) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) EvoSuiteSolver(org.evosuite.symbolic.solver.avm.EvoSuiteSolver) ArrayList(java.util.ArrayList) RealVariable(org.evosuite.symbolic.expr.fp.RealVariable) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) Test(org.junit.Test)

Example 17 with EvoSuiteSolver

use of org.evosuite.symbolic.solver.avm.EvoSuiteSolver in project evosuite by EvoSuite.

the class TestRealSearch method testLTConstantAfterComma.

@Test
public void testLTConstantAfterComma() {
    List<Constraint<?>> constraints = new ArrayList<Constraint<?>>();
    constraints.add(new RealConstraint(new RealVariable("test1", 2.35086, -1000000.0, 1000000.0), Comparator.LT, new RealConstant(2.35082)));
    EvoSuiteSolver skr = new EvoSuiteSolver();
    Map<String, Object> result;
    try {
        result = solve(skr, constraints);
        assertNotNull(result);
        assertNotNull(result.get("test1"));
        assertTrue(2.35082 > ((Number) result.get("test1")).doubleValue());
    } catch (SolverTimeoutException e) {
        fail();
    }
}
Also used : SolverTimeoutException(org.evosuite.symbolic.solver.SolverTimeoutException) RealConstant(org.evosuite.symbolic.expr.fp.RealConstant) Constraint(org.evosuite.symbolic.expr.Constraint) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) EvoSuiteSolver(org.evosuite.symbolic.solver.avm.EvoSuiteSolver) ArrayList(java.util.ArrayList) RealVariable(org.evosuite.symbolic.expr.fp.RealVariable) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) Test(org.junit.Test)

Example 18 with EvoSuiteSolver

use of org.evosuite.symbolic.solver.avm.EvoSuiteSolver in project evosuite by EvoSuite.

the class TestRealSearch method testGTConstant.

@Test
public void testGTConstant() {
    List<Constraint<?>> constraints = new ArrayList<Constraint<?>>();
    constraints.add(new RealConstraint(new RealVariable("test1", 0, -1000000.0, 1000000.0), Comparator.GT, new RealConstant(2.35082)));
    EvoSuiteSolver skr = new EvoSuiteSolver();
    Map<String, Object> result;
    try {
        result = solve(skr, constraints);
        assertNotNull(result);
        assertNotNull(result.get("test1"));
        assertTrue(2.35082 < ((Number) result.get("test1")).doubleValue());
    } catch (SolverTimeoutException e) {
        fail();
    }
}
Also used : SolverTimeoutException(org.evosuite.symbolic.solver.SolverTimeoutException) RealConstant(org.evosuite.symbolic.expr.fp.RealConstant) Constraint(org.evosuite.symbolic.expr.Constraint) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) EvoSuiteSolver(org.evosuite.symbolic.solver.avm.EvoSuiteSolver) ArrayList(java.util.ArrayList) RealVariable(org.evosuite.symbolic.expr.fp.RealVariable) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) Test(org.junit.Test)

Example 19 with EvoSuiteSolver

use of org.evosuite.symbolic.solver.avm.EvoSuiteSolver in project evosuite by EvoSuite.

the class TestRealSearch method testEvosuiteExample2.

@Test
public void testEvosuiteExample2() {
    double var1 = 355.80758027529504;
    // var3__SYM(355.80758027529504) >= 0.0 dist: 177.90379013764752
    // var3__SYM(355.80758027529504) == 0.0 dist: 177.90379013764752
    RealVariable realVar = new RealVariable("test1", var1, -1000000, 1000000);
    List<Constraint<?>> constraints = new ArrayList<Constraint<?>>();
    constraints.add(new RealConstraint(realVar, Comparator.GE, new RealConstant(0.0)));
    constraints.add(new RealConstraint(realVar, Comparator.EQ, new RealConstant(0.0)));
    EvoSuiteSolver skr = new EvoSuiteSolver();
    Map<String, Object> result;
    try {
        result = solve(skr, constraints);
        assertNotNull(result);
        if (result.containsKey("test1"))
            var1 = ((Number) result.get("test1")).doubleValue();
        assertEquals(0, var1, 0.0001);
    } catch (SolverTimeoutException e) {
        fail();
    }
}
Also used : SolverTimeoutException(org.evosuite.symbolic.solver.SolverTimeoutException) Constraint(org.evosuite.symbolic.expr.Constraint) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) EvoSuiteSolver(org.evosuite.symbolic.solver.avm.EvoSuiteSolver) ArrayList(java.util.ArrayList) RealVariable(org.evosuite.symbolic.expr.fp.RealVariable) RealConstant(org.evosuite.symbolic.expr.fp.RealConstant) RealConstraint(org.evosuite.symbolic.expr.RealConstraint) Test(org.junit.Test)

Example 20 with EvoSuiteSolver

use of org.evosuite.symbolic.solver.avm.EvoSuiteSolver in project evosuite by EvoSuite.

the class TestStringSearch2 method testSolveIndexOfConstant.

@Test
public void testSolveIndexOfConstant() throws SecurityException, NoSuchMethodException {
    DefaultTestCase tc = buildTestCase("V*X-:o%tp");
    List<BranchCondition> branch_conditions = executeTest(tc);
    Collection<Constraint<?>> constraints = new ArrayList<Constraint<?>>();
    for (int i = 0; i < branch_conditions.size() - 2; i++) {
        BranchCondition b = branch_conditions.get(i);
        constraints.addAll(b.getSupportingConstraints());
        constraints.add(b.getConstraint());
    }
    BranchCondition last_branch = branch_conditions.get(branch_conditions.size() - 2);
    constraints.addAll(last_branch.getSupportingConstraints());
    constraints.add(last_branch.getConstraint().negate());
    EvoSuiteSolver solver = new EvoSuiteSolver();
    Map<String, Object> solution;
    try {
        solution = solve(solver, constraints);
        assertNotNull(solution);
        System.out.println(solution);
    } catch (SolverTimeoutException e) {
        fail();
    }
}
Also used : SolverTimeoutException(org.evosuite.symbolic.solver.SolverTimeoutException) Constraint(org.evosuite.symbolic.expr.Constraint) EvoSuiteSolver(org.evosuite.symbolic.solver.avm.EvoSuiteSolver) ArrayList(java.util.ArrayList) DefaultTestCase(org.evosuite.testcase.DefaultTestCase) BranchCondition(org.evosuite.symbolic.BranchCondition) Constraint(org.evosuite.symbolic.expr.Constraint) Test(org.junit.Test)

Aggregations

Constraint (org.evosuite.symbolic.expr.Constraint)76 EvoSuiteSolver (org.evosuite.symbolic.solver.avm.EvoSuiteSolver)76 SolverTimeoutException (org.evosuite.symbolic.solver.SolverTimeoutException)74 Test (org.junit.Test)74 ArrayList (java.util.ArrayList)67 IntegerConstraint (org.evosuite.symbolic.expr.IntegerConstraint)48 IntegerConstant (org.evosuite.symbolic.expr.bv.IntegerConstant)36 SolverResult (org.evosuite.symbolic.solver.SolverResult)31 IntegerVariable (org.evosuite.symbolic.expr.bv.IntegerVariable)24 StringVariable (org.evosuite.symbolic.expr.str.StringVariable)24 StringConstraint (org.evosuite.symbolic.expr.StringConstraint)23 RealConstraint (org.evosuite.symbolic.expr.RealConstraint)22 RealVariable (org.evosuite.symbolic.expr.fp.RealVariable)21 StringConstant (org.evosuite.symbolic.expr.str.StringConstant)19 RealConstant (org.evosuite.symbolic.expr.fp.RealConstant)15 StringBinaryComparison (org.evosuite.symbolic.expr.bv.StringBinaryComparison)14 StringBinaryToIntegerExpression (org.evosuite.symbolic.expr.bv.StringBinaryToIntegerExpression)10 IntegerBinaryExpression (org.evosuite.symbolic.expr.bv.IntegerBinaryExpression)8 StringUnaryExpression (org.evosuite.symbolic.expr.str.StringUnaryExpression)5 Expression (org.evosuite.symbolic.expr.Expression)4