Search in sources :

Example 26 with GenericField

use of org.evosuite.utils.generic.GenericField in project evosuite by EvoSuite.

the class FactoryTestSystemTest method testAddFieldReuse.

@Test
public void testAddFieldReuse() throws ConstructionFailedException, NoSuchMethodException, SecurityException, NoSuchFieldException, ClassNotFoundException {
    TestFactory testFactory = TestFactory.getInstance();
    Class<?> sut = TestGenerationContext.getInstance().getClassLoaderForSUT().loadClass(FactoryExample.class.getCanonicalName());
    GenericField field = new GenericField(sut.getField("setMe"), sut);
    DefaultTestCase test = new DefaultTestCase();
    testFactory.addField(test, field, 0, 0);
    assertEquals(2, test.size());
    Properties.PRIMITIVE_REUSE_PROBABILITY = 1.0;
    Properties.OBJECT_REUSE_PROBABILITY = 1.0;
    testFactory.reset();
    testFactory.addField(test, field, 2, 0);
    assertEquals(3, test.size());
    String code = test.toCode();
    System.out.println(code);
    assertTrue(code.contains("factoryExample0.setMe"));
    assertFalse(code.contains("factoryExample1"));
}
Also used : FactoryExample(com.examples.with.different.packagename.FactoryExample) GenericField(org.evosuite.utils.generic.GenericField) Test(org.junit.Test)

Example 27 with GenericField

use of org.evosuite.utils.generic.GenericField in project evosuite by EvoSuite.

the class FactoryTestSystemTest method testAddFieldAssignmentNoreuse.

@Test
public void testAddFieldAssignmentNoreuse() throws ConstructionFailedException, NoSuchMethodException, SecurityException, NoSuchFieldException, ClassNotFoundException {
    TestFactory testFactory = TestFactory.getInstance();
    Class<?> sut = TestGenerationContext.getInstance().getClassLoaderForSUT().loadClass(FactoryExample.class.getCanonicalName());
    GenericField field = new GenericField(sut.getField("setMe"), sut);
    DefaultTestCase test = new DefaultTestCase();
    testFactory.addFieldAssignment(test, field, 0, 0);
    assertEquals(3, test.size());
    testFactory.reset();
    Properties.PRIMITIVE_REUSE_PROBABILITY = 0.0;
    Properties.OBJECT_REUSE_PROBABILITY = 0.0;
    testFactory.addFieldAssignment(test, field, 3, 0);
    assertEquals(6, test.size());
    String code = test.toCode();
    System.out.println(code);
    assertTrue(code.contains("factoryExample0.setMe"));
    assertTrue(code.contains("factoryExample1.setMe"));
    assertFalse(code.contains("factoryExample2"));
}
Also used : FactoryExample(com.examples.with.different.packagename.FactoryExample) GenericField(org.evosuite.utils.generic.GenericField) Test(org.junit.Test)

Aggregations

GenericField (org.evosuite.utils.generic.GenericField)27 Test (org.junit.Test)11 FactoryExample (com.examples.with.different.packagename.FactoryExample)8 VariableReference (org.evosuite.testcase.variable.VariableReference)8 GenericConstructor (org.evosuite.utils.generic.GenericConstructor)8 GenericMethod (org.evosuite.utils.generic.GenericMethod)8 AssignmentStatement (org.evosuite.testcase.statements.AssignmentStatement)6 FieldReference (org.evosuite.testcase.variable.FieldReference)6 ConstructionFailedException (org.evosuite.ga.ConstructionFailedException)5 GenericClass (org.evosuite.utils.generic.GenericClass)5 CaptureType (com.googlecode.gentyref.CaptureType)4 Field (java.lang.reflect.Field)3 Method (java.lang.reflect.Method)3 ArrayList (java.util.ArrayList)3 List (java.util.List)3 FieldStatement (org.evosuite.testcase.statements.FieldStatement)3 GenericAccessibleObject (org.evosuite.utils.generic.GenericAccessibleObject)3 DowncastExample (com.examples.with.different.packagename.test.DowncastExample)2 Collection (java.util.Collection)2 LinkedHashSet (java.util.LinkedHashSet)2