blob: 634a9f28f146c92855a8889670ed87a7e6a5d7e1 [file] [log] [blame]
Scenario: A class that is replicated using a CloneVisitor should be equal to the source
Given a CompilationUnit
Given a second CompilationUnit
When the following source is parsed:
package japa.parser;
public class ClassEquality {
public void aMethod(){
int a=0; // second comment
}
}
When the CompilationUnit is cloned to the second CompilationUnit
Then the CompilationUnit is equal to the second CompilationUnit
Then the CompilationUnit has the same hashcode to the second CompilationUnit
Scenario: A classes variable name is changed to uppercase VoidVisitorAdapter
Given a CompilationUnit
Given a VoidVisitorAdapter with a visit method that changes variable names to uppercase
When the following source is parsed:
package japa.parser;
public class ToUpperClass {
private int zero = 0;
}
When the CompilationUnit is visited by the to uppercase visitor
Then the expected source should be:
package japa.parser;
public class ToUpperClass {
private int ZERO = 0;
}
Scenario: A class with a try statement is visited using by a VoidVisitorAdapter
Given a CompilationUnit
Given a VoidVisitorAdapter with a visit method and collects the variable names
When the following source is parsed:
package japa.parser;
public class ToUpperClass {
public void aMethod(){
try {
int zero = 0;
}catch (Exception exception) {
}
}
}
When the CompilationUnit is visited by the variable name collector visitor
Then the collected variable name is "exception;zero;"
Scenario: A class with a try statement is visited using by a GenericVisitorAdapter
Given a CompilationUnit
Given a GenericVisitorAdapter with a visit method that returns variable names
When the following source is parsed:
package japa.parser;
public class ToUpperClass {
public void aMethod(){
try {
int zero = 0;
}catch (Exception exception) {
}
}
}
When the CompilationUnit is visited by the visitor that returns variable names
Then the return variable name is "zero"