test_class.declarator: LATER_DATE = "2016-02-29T09:00:56.000+0000"
test_class.modifier: private static final
test_class.original_string: private static final String LATER_DATE = "2016-02-29T09:00:56.000+0000";
test_class.type: String
test_class.var_name: LATER_DATE
test_class.declarator: EARLIER_DATE = "2016-02-28T09:00:56.000+0000"
test_class.modifier: private static final
test_class.original_string: private static final String EARLIER_DATE = "2016-02-28T09:00:56.000+0000";
test_class.type: String
test_class.var_name: EARLIER_DATE
test_class.declarator: INVALID_DATE = "2018-11-23"
test_class.modifier: private static final
test_class.original_string: private static final String INVALID_DATE = "2018-11-23";
test_class.type: String
test_class.var_name: INVALID_DATE
test_class.declarator: newIsTheBestMergeBehaviour
test_class.modifier: private
test_class.original_string: private NewIsTheBestMergeBehaviourImpl newIsTheBestMergeBehaviour;
test_class.type: NewIsTheBestMergeBehaviourImpl
test_class.var_name: newIsTheBestMergeBehaviour
test_class.file: api/src/test/java/org/openmrs/module/sync2/api/conflict/impl/NewIsTheBestMergeBehaviourImplTest.java
test_class.identifier: NewIsTheBestMergeBehaviourImplTest
test_case.body: @Test
  	public void resolveDiff_shouldReturnMergeConflictIfInvalidDateFormat() {
  		SyncObject localObj = getSyncObject(SimpleObjectMother.createInstanceWithDateChanged(
  				EARLIER_DATE,  true, false));
  		SyncObject foreignObj = getSyncObject(SimpleObjectMother.createInstanceWithDateChanged(
  				INVALID_DATE,  true, false));
  		MergeResult actual = newIsTheBestMergeBehaviour.resolveDiff(SyncObject.class, localObj, foreignObj);
  		Assert.assertTrue(actual instanceof MergeConflict);
  		Assert.assertEquals(MergeMessageEnum.CONFLICT, actual.getMessage());
  	}
test_case.class_method_signature: NewIsTheBestMergeBehaviourImplTest.resolveDiff_shouldReturnMergeConflictIfInvalidDateFormat()
test_case.full_signature: @Test public void resolveDiff_shouldReturnMergeConflictIfInvalidDateFormat()
test_case.identifier: resolveDiff_shouldReturnMergeConflictIfInvalidDateFormat
test_case.invocations: getSyncObject createInstanceWithDateChanged getSyncObject createInstanceWithDateChanged resolveDiff assertTrue assertEquals getMessage
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void resolveDiff_shouldReturnMergeConflictIfInvalidDateFormat()
focal_class.declarator: LOGGER = LoggerFactory.getLogger(NewIsTheBestMergeBehaviourImpl.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger LOGGER = LoggerFactory.getLogger(NewIsTheBestMergeBehaviourImpl.class);
focal_class.type: Logger
focal_class.var_name: LOGGER
focal_class.declarator: AUDIT_INFO_KEY = "auditInfo"
focal_class.modifier: private static final
focal_class.original_string: private static final String AUDIT_INFO_KEY = "auditInfo";
focal_class.type: String
focal_class.var_name: AUDIT_INFO_KEY
focal_class.declarator: DATE_CHANGED_KEY = "dateChanged"
focal_class.modifier: private static final
focal_class.original_string: private static final String DATE_CHANGED_KEY = "dateChanged";
focal_class.type: String
focal_class.var_name: DATE_CHANGED_KEY
focal_class.file: api/src/main/java/org/openmrs/module/sync2/api/conflict/impl/NewIsTheBestMergeBehaviourImpl.java
focal_class.identifier: NewIsTheBestMergeBehaviourImpl
focal_class.interfaces: implements MergeBehaviour<SyncObject>
focal_class.class_method_signature: NewIsTheBestMergeBehaviourImpl.resolveDiff(Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)
focal_class.full_signature: @Override public MergeResult<SyncObject> resolveDiff(Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)
focal_class.identifier: resolveDiff
focal_class.modifiers: @Override public
focal_class.parameters: (Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)
focal_class.return: MergeResult<SyncObject>
focal_class.signature: MergeResult<SyncObject> resolveDiff(Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)
focal_class.class_method_signature: NewIsTheBestMergeBehaviourImpl.resolveConflict(SyncObject source, SyncObject target)
focal_class.full_signature: private MergeResult<SyncObject> resolveConflict(SyncObject source, SyncObject target)
focal_class.identifier: resolveConflict
focal_class.modifiers: private
focal_class.parameters: (SyncObject source, SyncObject target)
focal_class.return: MergeResult<SyncObject>
focal_class.signature: MergeResult<SyncObject> resolveConflict(SyncObject source, SyncObject target)
focal_method.body: @Override
  	public MergeResult<SyncObject> resolveDiff(Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign) {
  		return resolveConflict(local, foreign);
  	}
focal_method.class_method_signature: NewIsTheBestMergeBehaviourImpl.resolveDiff(Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)
focal_method.full_signature: @Override public MergeResult<SyncObject> resolveDiff(Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)
focal_method.identifier: resolveDiff
focal_method.invocations: resolveConflict
focal_method.modifiers: @Override public
focal_method.parameters: (Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)
focal_method.return: MergeResult<SyncObject>
focal_method.signature: MergeResult<SyncObject> resolveDiff(Class<? extends SyncObject> clazz, SyncObject local, SyncObject foreign)