FakeAilianceApi.kt
124 lignes · 6484 octets
package fr.ebii.card2vcf.sync /** Fake [AilianceApi] configurable par test ; par défaut tout répond Ok vide. Partagé par [SyncEngineTest] et [AgendaSyncEngineTest]. */ class FakeAilianceApi : AilianceApi { var statusResult: AilianceApiClient.ApiResult<SyncStatusResponse> = AilianceApiClient.ApiResult.Ok(SyncStatusResponse("1970-01-01T00:00:00Z", SyncChanges(), 0)) var pullResult: AilianceApiClient.ApiResult<SyncPullResponse> = AilianceApiClient.ApiResult.Ok(SyncPullResponse(serverTime = "1970-01-01T00:00:00Z")) var createContactResult: AilianceApiClient.ApiResult<String> = AilianceApiClient.ApiResult.Ok("""{"id":"srv-generated"}""") val createContactCalls = mutableListOf<String>() var createReservationResult: AilianceApiClient.ApiResult<String> = AilianceApiClient.ApiResult.Ok("""{"id":"resa-generated"}""") var updateReservationResult: AilianceApiClient.ApiResult<String> = AilianceApiClient.ApiResult.Ok("{}") val createReservationCalls = mutableListOf<Triple<String, String, String>>() var createRdvResult: AilianceApiClient.ApiResult<String> = AilianceApiClient.ApiResult.Ok("""{"id":"rdv-generated"}""") val createRdvCalls = mutableListOf<String>() var statusQueries = mutableListOf<String?>() var pullQueries = mutableListOf<String?>() override fun authCle(nom: String, motDePasse: String) = AilianceApiClient.ApiResult.Ok(AuthCleResponse(nom, "", "", "argon2id", "xchacha20poly1305")) override fun syncStatus(sinceIso: String, ressourcesQuery: String?): AilianceApiClient.ApiResult<SyncStatusResponse> { statusQueries += ressourcesQuery return statusResult } override fun syncPull(sinceIso: String, ressourcesQuery: String?): AilianceApiClient.ApiResult<SyncPullResponse> { pullQueries += ressourcesQuery return pullResult } override fun createContact(jsonBody: String): AilianceApiClient.ApiResult<String> { createContactCalls += jsonBody return createContactResult } override fun updateContact(id: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun deleteContact(id: String) = AilianceApiClient.ApiResult.Ok(Unit) override fun createEntreprise(jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun updateEntreprise(id: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun deleteEntreprise(id: String) = AilianceApiClient.ApiResult.Ok(Unit) override fun createProjet(jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun updateProjet(id: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun deleteProjet(id: String) = AilianceApiClient.ApiResult.Ok(Unit) override fun createTache(projetId: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun updateTache(projetId: String, tacheId: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun deleteTache(projetId: String, tacheId: String) = AilianceApiClient.ApiResult.Ok(Unit) override fun moveTache(projetId: String, tacheId: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun createInteraction(contactId: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun listRdv() = AilianceApiClient.ApiResult.Ok(emptyList<RendezVousDto>()) override fun createRdv(jsonBody: String): AilianceApiClient.ApiResult<String> { createRdvCalls += jsonBody return createRdvResult } override fun getRdv(id: String) = error("not used") override fun updateRdv(id: String, jsonBody: String) = AilianceApiClient.ApiResult.Ok("{}") override fun deleteRdv(id: String) = AilianceApiClient.ApiResult.Ok(Unit) override fun getRessourcesCatalogue() = AilianceApiClient.ApiResult.Ok(RessourcesCatalogueDto()) override fun listReservations(genre: String, resourceId: String) = AilianceApiClient.ApiResult.Ok(emptyList<ReservationDto>()) override fun createReservation(genre: String, resourceId: String, jsonBody: String): AilianceApiClient.ApiResult<String> { createReservationCalls += Triple(genre, resourceId, jsonBody) return createReservationResult } override fun updateReservation(genre: String, resourceId: String, reservationId: String, jsonBody: String) = updateReservationResult val deleteReservationCalls = mutableListOf<Triple<String, String, String>>() override fun deleteReservation(genre: String, resourceId: String, reservationId: String): AilianceApiClient.ApiResult<Unit> { deleteReservationCalls += Triple(genre, resourceId, reservationId) return AilianceApiClient.ApiResult.Ok(Unit) } override fun listIndisponibilites(genre: String, resourceId: String) = AilianceApiClient.ApiResult.Ok(emptyList<IndisponibiliteDto>()) var uploadCarteResult: AilianceApiClient.ApiResult<String> = AilianceApiClient.ApiResult.Ok("{}") var uploadPhotoResult: AilianceApiClient.ApiResult<String> = AilianceApiClient.ApiResult.Ok("{}") val uploadCarteCalls = mutableListOf<Pair<String, Int>>() val uploadPhotoCalls = mutableListOf<Pair<String, Int>>() var downloadCarteResult: AilianceApiClient.ApiResult<ByteArray> = AilianceApiClient.ApiResult.Err(404, "absent") var downloadPhotoResult: AilianceApiClient.ApiResult<ByteArray> = AilianceApiClient.ApiResult.Err(404, "absent") val downloadCarteCalls = mutableListOf<String>() val downloadPhotoCalls = mutableListOf<String>() override fun uploadContactCarte( id: String, bytes: ByteArray, filename: String, contentType: String, ): AilianceApiClient.ApiResult<String> { uploadCarteCalls += id to bytes.size return uploadCarteResult } override fun uploadContactPhoto( id: String, bytes: ByteArray, filename: String, contentType: String, ): AilianceApiClient.ApiResult<String> { uploadPhotoCalls += id to bytes.size return uploadPhotoResult } override fun downloadContactCarte(id: String): AilianceApiClient.ApiResult<ByteArray> { downloadCarteCalls += id return downloadCarteResult } override fun downloadContactPhoto(id: String): AilianceApiClient.ApiResult<ByteArray> { downloadPhotoCalls += id return downloadPhotoResult } }
GitRust