- Notifications
You must be signed in to change notification settings - Fork 179
Closed
Description
How do you set up a Configuration
that includes a "Collection" attribute? Please refer the test code snippet shown below; I'm not able to make it work.
On the other hand, Configuration.withoutProperty
works with the PropertyPath
aliases
.
Object class to compare:
public class Person { private String name; private List<String> aliases; public Person() { } public Person(String name, List<String> aliases) { this.name = name; this.aliases = aliases; this.addresses = addresses; } public String getName() { return this.name; } public void setName(String name) { this.name = name; } public List<String> getAliases() { return this.aliases; } public void setAliases(List<String> aliases) { this.aliases = aliases; }
Test class:
@RunWith(JUnit4.class) public class Test { @Test public void testIncludeCollectionAttribute() { Person a = new Person( "Gulen Chongtham", Arrays.asList(new String[] {"Hola Espanyol", "Vicky Boss"}) ); Person b = new Person( "Gulen Chongthamm", Arrays.asList(new String[] {"Hola Espanyol", "Vicky Boss", "Roger Harper"}) ); ObjectDiffer differ = ObjectDifferFactory.getInstance( new Configuration() .withPropertyPath(PropertyPath.buildWith("aliases")) ); Node root = differ.compare(b, a); root.visit(new PrintingVisitor(b, a)); assertTrue(root.isChanged()); } }