rendered paste bodypublic abstract class Node{
public boolean isRegexMatch(String regex, String value){
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(value);
return matcher.find();
}
}
ATD Node extends Node
public class CompositeActorRole extends ATDNode{
public void setName(String name){
if(isRegexMatch("^[A-z]+[A-Za-z0-9]*$", name)){
this.name = name;
}
}
}
===
Test method
@Test
public void testName(){
assertFalse(testName("5NumberFirst"));
assertFalse("NonAlphabeticChar is Possible", testName("NonAlphabeticChar@"));
assertFalse("NonAlphabeticChar is Possible", testName("NonAlphabeticChar^"));
assertTrue(testName("AlphabeticCharFirst12"));
assertFalse(testName(""));
}
private boolean testName(String newName){
car1.setName(newName);
return newName.equals(car1.getName());
}