Skip to content

Commit

Permalink
Removed SlackService class and moved the API creation to the SlackApi…
Browse files Browse the repository at this point in the history
… class.
  • Loading branch information
Iiro Krankka committed Feb 3, 2017
1 parent 600f538 commit 3b797f9
Show file tree
Hide file tree
Showing 6 changed files with 18 additions and 42 deletions.
13 changes: 13 additions & 0 deletions app/src/main/java/com/codemate/koffeemate/data/network/SlackApi.kt
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@ import okhttp3.MultipartBody
import okhttp3.RequestBody
import okhttp3.ResponseBody
import retrofit2.Response
import retrofit2.Retrofit
import retrofit2.adapter.rxjava.RxJavaCallAdapterFactory
import retrofit2.converter.gson.GsonConverterFactory
import retrofit2.http.*
import rx.Observable

Expand Down Expand Up @@ -39,5 +42,15 @@ interface SlackApi {

companion object {
val BASE_URL = HttpUrl.parse("https://slack.com/api/")!!

fun create(baseUrl: HttpUrl): SlackApi {
val retrofit = Retrofit.Builder()
.baseUrl(baseUrl)
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.build()

return retrofit.create(SlackApi::class.java)
}
}
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

package com.codemate.koffeemate.di.modules

import com.codemate.koffeemate.data.network.SlackService
import com.codemate.koffeemate.data.network.SlackApi
import dagger.Module
import dagger.Provides
import okhttp3.HttpUrl
Expand All @@ -26,5 +26,5 @@ import javax.inject.Singleton
class NetModule(val baseUrl: HttpUrl) {
@Provides
@Singleton
fun provideApi() = SlackService.getApi(baseUrl)
fun provideApi() = SlackApi.create(baseUrl)
}
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ import com.codemate.koffeemate.BuildConfig
import com.codemate.koffeemate.data.local.UserRepository
import com.codemate.koffeemate.data.models.User
import com.codemate.koffeemate.data.network.SlackApi
import com.codemate.koffeemate.data.network.SlackService
import com.codemate.koffeemate.testutils.getResourceFile
import com.nhaarman.mockito_kotlin.verify
import com.nhaarman.mockito_kotlin.whenever
Expand Down Expand Up @@ -52,7 +51,7 @@ class LoadUsersUseCaseTest {
mockServer = MockWebServer()
mockServer.start()

slackApi = SlackService.getApi(mockServer.url("/"))
slackApi = SlackApi.create(mockServer.url("/"))
useCase = LoadUsersUseCase(
mockUserRepository,
slackApi,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ import com.codemate.koffeemate.common.AwardBadgeCreator
import com.codemate.koffeemate.data.local.CoffeeEventRepository
import com.codemate.koffeemate.data.local.CoffeePreferences
import com.codemate.koffeemate.data.network.SlackApi
import com.codemate.koffeemate.data.network.SlackService
import com.codemate.koffeemate.testutils.RegexMatcher.Companion.matchesPattern
import com.codemate.koffeemate.testutils.fakeUser
import com.codemate.koffeemate.testutils.getResourceFile
Expand Down Expand Up @@ -75,7 +74,7 @@ class PostAccidentUseCaseTest {
whenever(mockAwardBadgeCreator.createBitmapFileWithAward(mockBitmap, 1))
.thenReturn(getResourceFile("images/empty.png"))

slackApi = SlackService.getApi(mockServer.url("/"))
slackApi = SlackApi.create(mockServer.url("/"))
useCase = PostAccidentUseCase(
slackApi,
mockCoffeeEventRepository,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ package com.codemate.koffeemate.usecases

import com.codemate.koffeemate.BuildConfig
import com.codemate.koffeemate.data.network.SlackApi
import com.codemate.koffeemate.data.network.SlackService
import okhttp3.ResponseBody
import okhttp3.mockwebserver.MockResponse
import okhttp3.mockwebserver.MockWebServer
Expand Down Expand Up @@ -48,7 +47,7 @@ class SendCoffeeAnnouncementUseCaseTest {
mockServer = MockWebServer()
mockServer.start()

slackApi = SlackService.getApi(mockServer.url("/"))
slackApi = SlackApi.create(mockServer.url("/"))
useCase = SendCoffeeAnnouncementUseCase(
slackApi,
Schedulers.immediate(),
Expand Down

0 comments on commit 3b797f9

Please sign in to comment.