### Question:
SyncCollection { public CollectionId getCollectionId() { return collectionId; } 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 testBuilderIdIsNotRequired() { SyncCollection syncRequestCollection = builderWithRequirement().collectionId(null).build(); assertThat(syncRequestCollection.getCollectionId()).isNull(); }
@Test public void testBuilderIdValid() { SyncCollection syncRequestCollection = builderWithRequirement().collectionId(CollectionId.of(135)).build(); assertThat(syncRequestCollection.getCollectionId()).isEqualTo(CollectionId.of(135)); }