source: class HashUnmodifiedItemCheckerTest {
  
  	private final List<ItemHash> storedItemHash;
  	@Mock
  	private HashRepository hashRepository;
  
  	@Test
  	public void check() throws Exception {
  
target: 		HashUnmodifiedItemChecker<TestObj> checker = new HashUnmodifiedItemChecker<>();
  		checker.setHashRepository(hashRepository);
  		checker.setKeyPropertyNames(Arrays.asList("name"));
  
  		checker.setIgnorePropertyNames(Arrays.asList("randomVal", "randomVal2"));
  		checker.afterPropertiesSet();
  
  		TestObj p1 = new TestObj();
  		p1.setId(1);
  		p1.setName("YK");
  		p1.setAge(20);
  
  		p1.setRandomVal(123);
  		p1.setRandomVal2(678);
  
  		TestObj p2 = new TestObj();
  		p2.setId(1);
  		p2.setName("YK");
  		p2.setAge(20);
  
  		p2.setRandomVal(345);
  		p2.setRandomVal2(493);
  
  		boolean p1UnModified = checker.check(p1);
  		checker.afterChunk(null);
  
  		boolean p2UnModified = checker.check(p2);
  		checker.afterChunk(null);
  
  		Assert.assertFalse("p1UnModified must be false", p1UnModified);
  		Assert.assertTrue("p2UnModified must be true",p2UnModified);
  	}
  
  }