diff --git a/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSource.kt b/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSource.kt index 95a96863..a2309e84 100644 --- a/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSource.kt +++ b/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSource.kt @@ -1,9 +1,8 @@ package com.moya.funch.datasource.remote -import com.moya.funch.network.dto.response.subway_station.SubwayStationsResponse +import com.moya.funch.network.dto.response.subwaystation.SubwayStationsResponse fun interface RemoteSubwayDataSource { suspend fun fetchSubwayStations(subwayStation: String): Result> - } diff --git a/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSourceImpl.kt b/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSourceImpl.kt index 9c80acd4..484ad76f 100644 --- a/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSourceImpl.kt +++ b/core/data/src/main/java/com/moya/funch/datasource/remote/RemoteSubwayDataSourceImpl.kt @@ -1,6 +1,6 @@ package com.moya.funch.datasource.remote -import com.moya.funch.network.dto.response.subway_station.SubwayStationsResponse +import com.moya.funch.network.dto.response.subwaystation.SubwayStationsResponse import com.moya.funch.network.service.SubwayService import javax.inject.Inject @@ -13,5 +13,4 @@ class RemoteSubwayDataSourceImpl @Inject constructor( subwayStationService.findSubwayStations(subwayStation = subwayStation) }.mapCatching { response -> response.data } } - } diff --git a/core/data/src/main/java/com/moya/funch/mapper/SubwayStationMapper.kt b/core/data/src/main/java/com/moya/funch/mapper/SubwayStationMapper.kt index 0ce63bde..d04a5839 100644 --- a/core/data/src/main/java/com/moya/funch/mapper/SubwayStationMapper.kt +++ b/core/data/src/main/java/com/moya/funch/mapper/SubwayStationMapper.kt @@ -2,10 +2,9 @@ package com.moya.funch.mapper import com.moya.funch.entity.SubwayLine import com.moya.funch.entity.SubwayStation -import com.moya.funch.network.dto.response.subway_station.SubwayStationsResponse +import com.moya.funch.network.dto.response.subwaystation.SubwayStationsResponse -fun SubwayStationsResponse.toDomain() = - SubwayStation( - name = name, - lines = lines.map { SubwayLine.valueOf(it) } - ) +fun SubwayStationsResponse.toDomain() = SubwayStation( + name = name, + lines = lines.map { SubwayLine.valueOf(it) } +) diff --git a/core/data/src/main/java/com/moya/funch/repository/SubwayRepositoryImpl.kt b/core/data/src/main/java/com/moya/funch/repository/SubwayRepositoryImpl.kt index 12610704..ed87cee2 100644 --- a/core/data/src/main/java/com/moya/funch/repository/SubwayRepositoryImpl.kt +++ b/core/data/src/main/java/com/moya/funch/repository/SubwayRepositoryImpl.kt @@ -10,9 +10,8 @@ class SubwayRepositoryImpl( override suspend fun fetchSubwayStations(subwayStation: String): Result> { return remoteSubwayDataSource.fetchSubwayStations(subwayStation = subwayStation) - .mapCatching { response -> + .mapCatching { response -> response.map { it.toDomain() } - } + } } - } diff --git a/core/domain/src/main/java/com/moya/funch/repository/SubwayRepository.kt b/core/domain/src/main/java/com/moya/funch/repository/SubwayRepository.kt index 148d9e78..223a82df 100644 --- a/core/domain/src/main/java/com/moya/funch/repository/SubwayRepository.kt +++ b/core/domain/src/main/java/com/moya/funch/repository/SubwayRepository.kt @@ -5,5 +5,4 @@ import com.moya.funch.entity.SubwayStation interface SubwayRepository { suspend fun fetchSubwayStations(subwayStation: String): Result> - } diff --git a/core/domain/src/main/java/com/moya/funch/usecase/LoadSubwayStationsUseCase.kt b/core/domain/src/main/java/com/moya/funch/usecase/LoadSubwayStationsUseCase.kt index f3745251..3446ef88 100644 --- a/core/domain/src/main/java/com/moya/funch/usecase/LoadSubwayStationsUseCase.kt +++ b/core/domain/src/main/java/com/moya/funch/usecase/LoadSubwayStationsUseCase.kt @@ -11,7 +11,6 @@ class LoadSubwayStationsUseCaseImpl @Inject constructor( override suspend operator fun invoke(subwayStation: String): Result> { return subwayRepository.fetchSubwayStations(subwayStation = subwayStation) } - } fun interface LoadSubwayStationsUseCase { diff --git a/core/network/src/main/java/com/moya/funch/network/di/ServiceModule.kt b/core/network/src/main/java/com/moya/funch/network/di/ServiceModule.kt index 1dc14fa0..a01c80f0 100644 --- a/core/network/src/main/java/com/moya/funch/network/di/ServiceModule.kt +++ b/core/network/src/main/java/com/moya/funch/network/di/ServiceModule.kt @@ -7,9 +7,9 @@ import dagger.Module import dagger.Provides import dagger.hilt.InstallIn import dagger.hilt.components.SingletonComponent +import javax.inject.Singleton import retrofit2.Retrofit import retrofit2.create -import javax.inject.Singleton @Module @InstallIn(SingletonComponent::class) diff --git a/core/network/src/main/java/com/moya/funch/network/dto/response/subway_station/LocationResponse.kt b/core/network/src/main/java/com/moya/funch/network/dto/response/subwaystation/LocationResponse.kt similarity index 80% rename from core/network/src/main/java/com/moya/funch/network/dto/response/subway_station/LocationResponse.kt rename to core/network/src/main/java/com/moya/funch/network/dto/response/subwaystation/LocationResponse.kt index 875dd380..3240a769 100644 --- a/core/network/src/main/java/com/moya/funch/network/dto/response/subway_station/LocationResponse.kt +++ b/core/network/src/main/java/com/moya/funch/network/dto/response/subwaystation/LocationResponse.kt @@ -1,4 +1,4 @@ -package com.moya.funch.network.dto.response.subway_station +package com.moya.funch.network.dto.response.subwaystation import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable diff --git a/core/network/src/main/java/com/moya/funch/network/dto/response/subway_station/SubwayStationsResponse.kt b/core/network/src/main/java/com/moya/funch/network/dto/response/subwaystation/SubwayStationsResponse.kt similarity index 73% rename from core/network/src/main/java/com/moya/funch/network/dto/response/subway_station/SubwayStationsResponse.kt rename to core/network/src/main/java/com/moya/funch/network/dto/response/subwaystation/SubwayStationsResponse.kt index 5f2610ff..48864533 100644 --- a/core/network/src/main/java/com/moya/funch/network/dto/response/subway_station/SubwayStationsResponse.kt +++ b/core/network/src/main/java/com/moya/funch/network/dto/response/subwaystation/SubwayStationsResponse.kt @@ -1,9 +1,8 @@ -package com.moya.funch.network.dto.response.subway_station +package com.moya.funch.network.dto.response.subwaystation import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable - @Serializable data class SubwayStationsResponse( @SerialName("id") @@ -13,5 +12,5 @@ data class SubwayStationsResponse( @SerialName("lines") val lines: List = listOf(), @SerialName("location") - val location: LocationResponse = LocationResponse(), + val location: LocationResponse = LocationResponse() ) diff --git a/core/network/src/main/java/com/moya/funch/network/service/SubwayService.kt b/core/network/src/main/java/com/moya/funch/network/service/SubwayService.kt index b40a4515..7f9c58c1 100644 --- a/core/network/src/main/java/com/moya/funch/network/service/SubwayService.kt +++ b/core/network/src/main/java/com/moya/funch/network/service/SubwayService.kt @@ -1,7 +1,7 @@ package com.moya.funch.network.service import com.moya.funch.network.dto.response.BaseResponse -import com.moya.funch.network.dto.response.subway_station.SubwayStationsResponse +import com.moya.funch.network.dto.response.subwaystation.SubwayStationsResponse import retrofit2.http.GET import retrofit2.http.Query @@ -9,5 +9,4 @@ interface SubwayService { @GET("api/v1/subway-stations/search") suspend fun findSubwayStations(@Query("query") subwayStation: String): BaseResponse> - } diff --git a/core/network/src/test/java/com/moya/funch/network/service/SubwayServiceTest.kt b/core/network/src/test/java/com/moya/funch/network/service/SubwayServiceTest.kt index b3c562e7..6dca8a9a 100644 --- a/core/network/src/test/java/com/moya/funch/network/service/SubwayServiceTest.kt +++ b/core/network/src/test/java/com/moya/funch/network/service/SubwayServiceTest.kt @@ -3,10 +3,11 @@ package com.moya.funch.network.service import com.google.common.truth.Truth import com.jakewharton.retrofit2.converter.kotlinx.serialization.asConverterFactory import com.moya.funch.network.dto.response.BaseResponse -import com.moya.funch.network.dto.response.subway_station.LocationResponse -import com.moya.funch.network.dto.response.subway_station.SubwayStationsResponse +import com.moya.funch.network.dto.response.subwaystation.LocationResponse +import com.moya.funch.network.dto.response.subwaystation.SubwayStationsResponse import com.moya.funch.rule.CoroutinesTestExtension import io.mockk.junit5.MockKExtension +import java.io.File import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.test.runTest import kotlinx.serialization.json.Json @@ -18,7 +19,6 @@ import org.junit.jupiter.api.Test import org.junit.jupiter.api.extension.ExtendWith import retrofit2.Retrofit import retrofit2.create -import java.io.File @OptIn(ExperimentalCoroutinesApi::class) @ExtendWith(MockKExtension::class) @@ -77,5 +77,4 @@ internal class SubwayServiceTest { // then Truth.assertThat(actualResponse).isEqualTo(expected) } - }