Previous code used five (!) different types for the network response. Some used Retrofit's `Response`. This provides access to the headers. Some used `NetworkResult`. This did not provide access to the headers, but did provide some higher-order functions (e.g., `fold`) for operating on the results. One used a raw `Map`. One used a raw `Call`. The rest had been converted to `ApiResult`, a `Result<V, ApiError>`. This provides the higher-order functions, provides the headers, and is exception-free, so is the correct type to use. This PR completes the work of cutting over to `ApiResult`. The return values are changed and the calling code is adjusted to use the new functions as appropriate.
46 lines
1.4 KiB
Plaintext
46 lines
1.4 KiB
Plaintext
/*
|
|
* Copyright 2024 Pachli Association
|
|
*
|
|
* This file is a part of Pachli.
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it under the terms of the
|
|
* GNU General Public License as published by the Free Software Foundation; either version 3 of the
|
|
* License, or (at your option) any later version.
|
|
*
|
|
* Pachli is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even
|
|
* the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
|
|
* Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License along with Pachli; if not,
|
|
* see <http://www.gnu.org/licenses>.
|
|
*/
|
|
|
|
plugins {
|
|
alias(libs.plugins.pachli.android.library)
|
|
alias(libs.plugins.pachli.android.hilt)
|
|
alias(libs.plugins.kotlin.parcelize)
|
|
}
|
|
|
|
android {
|
|
namespace = "app.pachli.core.network.test"
|
|
|
|
defaultConfig {
|
|
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation(projects.core.model)
|
|
api(projects.core.network)
|
|
|
|
implementation(libs.hilt.android.testing)
|
|
implementation(libs.bundles.mockito)
|
|
|
|
implementation(libs.moshi)
|
|
implementation(libs.moshi.adapters)
|
|
ksp(libs.moshi.codegen)
|
|
|
|
implementation(libs.bundles.okhttp)
|
|
?.because("FakeNetworkModule mocks OkHttpClient")
|
|
}
|