### Question:
SyncCollection { public PIMDataType getDataType() { return dataType; } protected  SyncCollection(PIMDataType dataType, SyncKey syncKey, CollectionId collectionId,
			Boolean deletesAsMoves, Boolean changes, Optional<Integer> windowSize, 
			SyncCollectionOptions options, List<EncodedSyncCollectionCommandRequest> commands); static Builder builder(); PIMDataType getDataType(); CollectionId getCollectionId(); SyncKey getSyncKey(); List<EncodedSyncCollectionCommandRequest> getCommands(); Boolean getDeletesAsMoves(); Boolean isChanges(); Optional<Integer> getWindowSize(); SyncCollectionOptions getOptions(); boolean hasOptions(); @Override int hashCode(); @Override boolean equals(Object object); @Override String toString();  }### Answer:
@Test public void testBuilderDataClassIsNotRequired() { SyncCollection syncRequestCollection = builderWithRequirement().dataType(null).build(); assertThat(syncRequestCollection.getDataType()).isNull(); }
@Test public void testBuilderDataClassValid() { SyncCollection syncRequestCollection = builderWithRequirement().dataType(PIMDataType.EMAIL).build(); assertThat(syncRequestCollection.getDataType()).isEqualTo(PIMDataType.EMAIL); }