Add integration tests for CardDAV and VTODO migration #27

Closed
opened 2025-11-05 14:23:21 +00:00 by PhilflowIO · 0 comments
PhilflowIO commented 2025-11-05 14:23:21 +00:00 (Migrated from github.com)

Overview

Add comprehensive integration tests for newly implemented CardDAV (contacts) and VTODO (tasks) migration features.

Current State

  • CardDAV migration fully implemented (Issue #7)
  • VTODO migration fully implemented (Issue #6)
  • Missing integration tests for these features
  • CalDAV integration tests exist

Required Tests

tests/integration/contacts.integration.test.ts

  • Migrate contacts from source to target
  • Detect duplicate contacts by vCard UID
  • Resume capability for contacts migration
  • DSGVO compliance (state file contains no contact data)
  • Multi-addressbook migration

tests/integration/vtodo.integration.test.ts

  • Migrate tasks (VTODO) with events (VEVENT)
  • Interactive task prompt (user accepts/rejects)
  • Task-only calendars
  • Mixed calendars (events + tasks)
  • Object type counting (VEVENT vs VTODO)

Unit Tests

  • AddressBookCollectionMigrator unit tests
  • vCard UID extraction tests
  • Task detection and filtering tests
  • Interactive prompt testing

Acceptance Criteria

  • All tests pass
  • Code coverage for CardDAV/VTODO migrators >80%
  • DSGVO compliance verified for contacts
  • State file format validated

Priority

Medium (features are production-ready, tests are nice-to-have)

  • Issue #6 (VTODO Tasks Migration)
  • Issue #7 (CardDAV Contacts Migration)
## Overview Add comprehensive integration tests for newly implemented CardDAV (contacts) and VTODO (tasks) migration features. ## Current State - ✅ CardDAV migration fully implemented (Issue #7) - ✅ VTODO migration fully implemented (Issue #6) - ❌ Missing integration tests for these features - ✅ CalDAV integration tests exist ## Required Tests ### tests/integration/contacts.integration.test.ts - [ ] Migrate contacts from source to target - [ ] Detect duplicate contacts by vCard UID - [ ] Resume capability for contacts migration - [ ] DSGVO compliance (state file contains no contact data) - [ ] Multi-addressbook migration ### tests/integration/vtodo.integration.test.ts - [ ] Migrate tasks (VTODO) with events (VEVENT) - [ ] Interactive task prompt (user accepts/rejects) - [ ] Task-only calendars - [ ] Mixed calendars (events + tasks) - [ ] Object type counting (VEVENT vs VTODO) ### Unit Tests - [ ] AddressBookCollectionMigrator unit tests - [ ] vCard UID extraction tests - [ ] Task detection and filtering tests - [ ] Interactive prompt testing ## Acceptance Criteria - All tests pass - Code coverage for CardDAV/VTODO migrators >80% - DSGVO compliance verified for contacts - State file format validated ## Priority Medium (features are production-ready, tests are nice-to-have) ## Related - Issue #6 (VTODO Tasks Migration) - Issue #7 (CardDAV Contacts Migration)
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Phil/tsdav#27
No description provided.