### Question:
CalendarBackend extends ObmSyncBackend<WindowingEvent> implements org.obm.push.ICalendarBackend { @VisibleForTesting boolean isParticipationChangeUpdate(CalendarPath calendar, Event oldEvent) { return oldEvent != null && !belongsToCalendar(oldEvent, calendar.getPath()); } @Inject @VisibleForTesting  CalendarBackend(MappingService mappingService, 
			CalendarClient.Factory calendarClientFactory, 
			EventConverter eventConverter, 
			EventService eventService,
			ConsistencyEventChangesLogger consistencyLogger,
			EventExtId.Factory eventExtIdFactory,
			WindowingDao windowingDao,
			ClientIdService clientIdService,
			Ical4jHelper ical4jHelper, 
			Ical4jUser.Factory ical4jUserFactory,
			DateService dateService,
			OpushResourcesHolder opushResourcesHolder,
			FolderSnapshotDao folderSnapshotDao); @Override PIMDataType getPIMDataType(); @Override BackendFolders getBackendFolders(final UserDataRequest udr); @Override int getItemEstimateSize(UserDataRequest udr, ItemSyncState state, CollectionId collectionId, SyncCollectionOptions collectionOptions); @Override ServerId createOrUpdate(UserDataRequest udr, CollectionId collectionId,
			ServerId serverId, String clientId, IApplicationData data); @Override void delete(UserDataRequest udr, CollectionId collectionId, ServerId serverId, Boolean moveToTrash); @Override ServerId handleMeetingResponse(UserDataRequest udr, Object iCalendar, AttendeeStatus status); @Override List<ItemChange> fetch(UserDataRequest udr, CollectionId collectionId, List<ServerId> fetchServerIds, SyncCollectionOptions syncCollectionOptions,
				ItemSyncState previousItemSyncState, SyncKey newSyncKey); @Override List<ItemChange> fetch(UserDataRequest udr, CollectionId collectionId, List<ServerId> fetchServerIds, SyncCollectionOptions syncCollectionOptions); @Override ServerId move(UserDataRequest udr, Folder srcFolder, Folder dstFolder,
			ServerId serverId); @Override void emptyFolderContent(UserDataRequest udr, Folder folder,
			boolean deleteSubFolder); @Override void initialize(DeviceId deviceId, CollectionId collectionId, FilterType filterType, SyncKey newSyncKey); @Override BackendId createFolder(UserDataRequest udr, FolderCreateRequest folderCreateRequest,
			Optional<BackendId> backendId);  }### Answer:
@Test public void testIsParticipationChangeUpdateWhenOldEventIsNull() { Event oldEvent = null; CalendarPath calendarPath = CalendarPath.of("calendarName"); assertThat(calendarBackend.isParticipationChangeUpdate(calendarPath, oldEvent)).isFalse(); }
@Test public void testIsParticipationChangeUpdateWhenOldEventNotBelongsToCalendar() { CalendarPath calendarPath = CalendarPath.of("calendarName"); Event oldEvent = new Event(); oldEvent.setOwner("otherCalendarName"); assertThat(calendarBackend.isParticipationChangeUpdate(calendarPath, oldEvent)).isTrue(); }
@Test public void testIsParticipationChangeUpdateWhenOldEventBelongsToCalendar() { CalendarPath calendarPath = CalendarPath.of("calendarName"); Event oldEvent = new Event(); oldEvent.setOwner("calendarName"); assertThat(calendarBackend.isParticipationChangeUpdate(calendarPath, oldEvent)).isFalse(); }