Skip to content
This repository has been archived by the owner on Aug 19, 2023. It is now read-only.

Commit

Permalink
Maintenance: Dependency update,androidX, some refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
d4rken committed May 18, 2019
1 parent 7af1783 commit 570b9d7
Show file tree
Hide file tree
Showing 39 changed files with 139 additions and 144 deletions.
35 changes: 18 additions & 17 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -94,20 +94,21 @@ dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$versions.kotlin"

// Support libs
implementation "com.android.support:support-annotations:${versions.supportLibrary}"
implementation "com.android.support:appcompat-v7:${versions.supportLibrary}"
implementation "com.android.support:design:${versions.supportLibrary}"
implementation "com.android.support:customtabs:${versions.supportLibrary}"
implementation "com.android.support.constraint:constraint-layout:1.1.3"
implementation 'androidx.annotation:annotation:1.0.2'
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.preference:preference:1.0.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidx.browser:browser:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'

// Crashtracking
implementation 'com.bugsnag:bugsnag-android:4.10.0'

// IAPs
implementation 'com.android.billingclient:billing:1.0'
implementation 'com.android.billingclient:billing:1.2.2'

// MVP lib
implementation 'eu.darken.mvpbakery:library:0.5.1'
implementation 'eu.darken.mvpbakery:library:0.7.1'

// RX
implementation "io.reactivex.rxjava2:rxjava:${versions.rxjava}"
Expand All @@ -130,20 +131,20 @@ dependencies {

// Testing
testImplementation "junit:junit:4.12"
testImplementation "org.mockito:mockito-core:2.20.0"
testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:2.0.0-RC1'
testImplementation "org.mockito:mockito-core:2.24.5"
testImplementation 'com.nhaarman.mockitokotlin2:mockito-kotlin:2.1.0'
testImplementation 'com.github.tmurakami:dexopener:1.0.2'

androidTestImplementation "org.mockito:mockito-core:2.20.0"
androidTestImplementation 'org.mockito:mockito-android:2.19.1'
androidTestImplementation "org.mockito:mockito-core:2.24.5"
androidTestImplementation 'org.mockito:mockito-android:2.23.0'
androidTestImplementation 'com.github.tmurakami:dexopener:1.0.2'

androidTestImplementation "com.android.support.test:runner:1.0.2"
androidTestImplementation "com.android.support.test:rules:1.0.2"
androidTestImplementation "com.android.support.test.espresso:espresso-core:3.0.2"
androidTestImplementation 'com.android.support.test.espresso:espresso-contrib:3.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-intents:3.0.2'
androidTestImplementation 'com.android.support.test.espresso.idling:idling-concurrent:3.0.2'
androidTestImplementation 'androidx.test:runner:1.1.1'
androidTestImplementation 'androidx.test:rules:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-intents:3.1.1'
androidTestImplementation 'androidx.test.espresso.idling:idling-concurrent:3.1.1'
}

kotlin {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package eu.thedarken.wldonate

import android.support.test.InstrumentationRegistry
import android.support.test.runner.AndroidJUnit4
import androidx.test.InstrumentationRegistry
import androidx.test.runner.AndroidJUnit4
import org.junit.Assert.assertEquals
import org.junit.Test
import org.junit.runner.RunWith
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package eu.thedarken.wldonate

import android.app.Application
import android.content.Context
import android.support.test.runner.AndroidJUnitRunner
import androidx.test.runner.AndroidJUnitRunner

import com.github.tmurakami.dexopener.DexOpener

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@ package eu.thedarken.wldonate.main.ui


import android.app.Activity
import android.support.test.InstrumentationRegistry
import android.support.test.rule.ActivityTestRule
import android.support.v4.app.Fragment
import androidx.test.InstrumentationRegistry
import androidx.test.rule.ActivityTestRule
import dagger.android.AndroidInjector
import eu.darken.mvpbakery.injection.ComponentSource
import eu.darken.mvpbakery.injection.ManualInjector
Expand Down Expand Up @@ -34,7 +33,7 @@ class MainActivityTest {
@Mock lateinit var mainPresenter: MainActivityPresenter
@Mock lateinit var mainComponent: MainActivityComponent

@Mock lateinit var fragmentInjector: ComponentSource<Fragment>
@Mock lateinit var fragmentInjector: ComponentSource<androidx.fragment.app.Fragment>
@Mock lateinit var navigator: Navigator
@Mock lateinit var onboardingFragmentPresenter: OnboardingFragmentPresenter
@Mock lateinit var onboardingFragmentComponent: OnboardingFragmentComponent
Expand Down
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
package eu.thedarken.wldonate.main.ui.manager

import android.support.test.espresso.Espresso.onView
import android.support.test.espresso.action.ViewActions.click
import android.support.test.espresso.assertion.ViewAssertions.matches
import android.support.test.espresso.matcher.ViewMatchers.isDisplayed
import android.support.test.espresso.matcher.ViewMatchers.withId
import android.support.v4.app.Fragment
package eu.thedarken.wldonate.main.ui.onboarding

import androidx.test.espresso.Espresso.onView
import androidx.test.espresso.action.ViewActions.click
import androidx.test.espresso.assertion.ViewAssertions.matches
import androidx.test.espresso.matcher.ViewMatchers.isDisplayed
import androidx.test.espresso.matcher.ViewMatchers.withId
import dagger.android.AndroidInjector
import eu.darken.mvpbakery.injection.ManualInjector
import eu.thedarken.wldonate.main.ui.onboarding.OnboardingFragment
import eu.thedarken.wldonate.main.ui.onboarding.OnboardingFragmentComponent
import eu.thedarken.wldonate.main.ui.onboarding.OnboardingFragmentPresenter
import eu.thedarken.wldonate.R
import org.junit.After
import org.junit.Before
import org.junit.Rule
Expand All @@ -31,13 +28,13 @@ class OnboardingFragmentTest {
@Mock lateinit var component: OnboardingFragmentComponent


private val injector = object : ManualInjector<Fragment> {
override fun get(instance: Fragment): AndroidInjector<Fragment> {
private val injector = object : ManualInjector<androidx.fragment.app.Fragment> {
override fun get(instance: androidx.fragment.app.Fragment): AndroidInjector<androidx.fragment.app.Fragment> {
@Suppress("UNCHECKED_CAST")
return component as AndroidInjector<Fragment>
return component as AndroidInjector<androidx.fragment.app.Fragment>
}

override fun inject(fragment: Fragment) {
override fun inject(fragment: androidx.fragment.app.Fragment) {

}
}
Expand Down
9 changes: 4 additions & 5 deletions app/src/androidTest/java/testhelper/FragmentTestRule.kt
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
package testhelper

import android.support.test.rule.ActivityTestRule
import android.support.v4.app.Fragment
import androidx.test.rule.ActivityTestRule
import eu.darken.mvpbakery.injection.ManualInjector
import eu.thedarken.wldonate.FragmentTestActivity
import junit.framework.Assert

class FragmentTestRule<FragmentT : Fragment>(private val fragmentClass: Class<FragmentT>) : ActivityTestRule<FragmentTestActivity>(FragmentTestActivity::class.java, true, false) {
class FragmentTestRule<FragmentT : androidx.fragment.app.Fragment>(private val fragmentClass: Class<FragmentT>) : ActivityTestRule<FragmentTestActivity>(FragmentTestActivity::class.java, true, false) {
var fragment: FragmentT? = null
private set
internal lateinit var manualInjector: ManualInjector<Fragment>
internal lateinit var manualInjector: ManualInjector<androidx.fragment.app.Fragment>

override fun afterActivityLaunched() {
super.afterActivityLaunched()
Expand Down Expand Up @@ -38,7 +37,7 @@ class FragmentTestRule<FragmentT : Fragment>(private val fragmentClass: Class<Fr
}
}

fun setManualInjector(manualInjector: ManualInjector<Fragment>) {
fun setManualInjector(manualInjector: ManualInjector<androidx.fragment.app.Fragment>) {
this.manualInjector = manualInjector
}
}
8 changes: 4 additions & 4 deletions app/src/androidTest/java/testhelper/TestHelper.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ package testhelper
import android.app.Activity
import android.content.pm.ActivityInfo
import android.content.res.Configuration
import android.support.test.espresso.UiController
import android.support.test.espresso.ViewAction
import android.support.test.espresso.matcher.ViewMatchers.isRoot
import android.support.test.rule.ActivityTestRule
import android.view.View
import androidx.test.espresso.UiController
import androidx.test.espresso.ViewAction
import androidx.test.espresso.matcher.ViewMatchers.isRoot
import androidx.test.rule.ActivityTestRule
import org.hamcrest.Matcher


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,15 @@ package eu.thedarken.wldonate

import android.annotation.SuppressLint
import android.os.Bundle
import android.support.v4.app.Fragment
import android.support.v7.app.AppCompatActivity
import android.widget.LinearLayout

import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import eu.darken.mvpbakery.injection.ManualInjector
import eu.darken.mvpbakery.injection.fragment.HasManualFragmentInjector

class FragmentTestActivity : AppCompatActivity(), HasManualFragmentInjector {

internal var manualInjector: ManualInjector<Fragment>? = null
private lateinit var manualInjector: ManualInjector<Fragment>

@SuppressLint("ResourceType")
override fun onCreate(savedInstanceState: Bundle?) {
Expand All @@ -25,7 +24,7 @@ class FragmentTestActivity : AppCompatActivity(), HasManualFragmentInjector {
this.manualInjector = manualInjector
}

override fun supportFragmentInjector(): ManualInjector<Fragment>? {
override fun supportFragmentInjector(): ManualInjector<Fragment> {
return manualInjector
}

Expand Down
2 changes: 1 addition & 1 deletion app/src/main/java/eu/thedarken/wldonate/App.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import android.app.Application
import android.app.Service
import android.content.BroadcastReceiver
import android.content.Intent
import android.support.v7.app.AppCompatDelegate
import androidx.appcompat.app.AppCompatDelegate
import com.bugsnag.android.Bugsnag
import eu.darken.mvpbakery.injection.ComponentSource
import eu.darken.mvpbakery.injection.ManualInjector
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/java/eu/thedarken/wldonate/IAPHelper.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package eu.thedarken.wldonate
import android.app.Activity
import android.content.Context
import android.graphics.drawable.Drawable
import android.support.v7.content.res.AppCompatResources
import androidx.appcompat.content.res.AppCompatResources
import com.android.billingclient.api.*
import io.reactivex.Single
import io.reactivex.schedulers.Schedulers
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,14 @@ package eu.thedarken.wldonate.common.smart
import android.content.Context
import android.content.Intent
import android.os.Bundle
import android.support.v4.app.Fragment
import android.view.View
import butterknife.Unbinder
import eu.thedarken.wldonate.App
import timber.log.Timber
import java.util.*


abstract class SmartFragment : Fragment() {
abstract class SmartFragment : androidx.fragment.app.Fragment() {
internal val tag: String

init {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package eu.thedarken.wldonate.main.core

import android.content.Context
import android.content.SharedPreferences
import android.support.v7.preference.PreferenceManager
import androidx.preference.PreferenceManager
import eu.thedarken.wldonate.AppComponent
import eu.thedarken.wldonate.ApplicationContext
import eu.thedarken.wldonate.main.core.locks.Lock
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import android.app.PendingIntent
import android.content.Intent
import android.os.Build
import android.os.IBinder
import android.support.v4.app.NotificationCompat
import androidx.core.app.NotificationCompat
import eu.thedarken.wldonate.App
import eu.thedarken.wldonate.R
import eu.thedarken.wldonate.common.smart.SmartService
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package eu.thedarken.wldonate.main.core.service

import android.content.Context
import android.content.Intent
import android.support.v4.content.ContextCompat
import androidx.core.content.ContextCompat
import eu.thedarken.wldonate.AppComponent
import eu.thedarken.wldonate.ApplicationContext
import eu.thedarken.wldonate.main.core.locks.Lock
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@ import android.graphics.Bitmap
import android.graphics.Canvas
import android.graphics.drawable.Drawable
import android.os.Bundle
import android.support.annotation.DrawableRes
import android.support.v7.content.res.AppCompatResources
import android.util.DisplayMetrics
import android.view.View
import android.widget.RemoteViews
import androidx.annotation.DrawableRes
import androidx.appcompat.content.res.AppCompatResources
import eu.darken.mvpbakery.injection.broadcastreceiver.HasManualBroadcastReceiverInjector
import eu.thedarken.wldonate.R
import eu.thedarken.wldonate.common.ApiHelper
Expand Down
17 changes: 10 additions & 7 deletions app/src/main/java/eu/thedarken/wldonate/main/ui/MainActivity.kt
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
package eu.thedarken.wldonate.main.ui

import android.os.Bundle
import android.support.v4.app.Fragment
import android.support.v7.app.AppCompatActivity
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import butterknife.ButterKnife
import eu.darken.mvpbakery.base.MVPBakery
import eu.darken.mvpbakery.base.PresenterRetainer
import eu.darken.mvpbakery.base.ViewModelRetainer
import eu.darken.mvpbakery.injection.ComponentSource
import eu.darken.mvpbakery.injection.InjectedPresenter
Expand All @@ -27,11 +28,13 @@ class MainActivity : AppCompatActivity(), MainActivityPresenter.View, HasManualF
MVPBakery.builder<MainActivityPresenter.View, MainActivityPresenter>()
.presenterFactory(InjectedPresenter(this))
.presenterRetainer(ViewModelRetainer(this))
.addPresenterCallback {
val component = it.component
component.inject(this@MainActivity)
navigator.mainActivity = this@MainActivity
}
.addPresenterCallback(object : PresenterRetainer.Callback<MainActivityPresenter.View, MainActivityPresenter> {
override fun onPresenterAvailable(presenter: MainActivityPresenter) {
val component = presenter.component
component.inject(this@MainActivity)
navigator.mainActivity = this@MainActivity
}
})
.attach(this)

setContentView(R.layout.main_activity)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package eu.thedarken.wldonate.main.ui


import android.support.v4.app.Fragment
import dagger.Binds
import dagger.Module
import dagger.Subcomponent
Expand All @@ -18,8 +17,8 @@ import eu.thedarken.wldonate.main.ui.settings.SettingsFragment
import eu.thedarken.wldonate.main.ui.settings.SettingsFragmentComponent

@MainActivityComponent.Scope
@Subcomponent(modules = arrayOf(MainActivityComponent.FragmentBinderModule::class))
interface MainActivityComponent : ActivityComponent<MainActivity>, PresenterComponent<MainActivityPresenter.View, MainActivityPresenter> {
@Subcomponent(modules = [MainActivityComponent.FragmentBinderModule::class])
interface MainActivityComponent : ActivityComponent<MainActivity>, PresenterComponent<MainActivityPresenter, MainActivityComponent> {

@Subcomponent.Builder
abstract class Builder : ActivityComponent.Builder<MainActivity, MainActivityComponent>()
Expand All @@ -34,16 +33,16 @@ interface MainActivityComponent : ActivityComponent<MainActivity>, PresenterComp
@Binds
@IntoMap
@FragmentKey(OnboardingFragment::class)
internal abstract fun onboarding(impl: OnboardingFragmentComponent.Builder): AndroidInjector.Factory<out Fragment>
internal abstract fun onboarding(impl: OnboardingFragmentComponent.Builder): AndroidInjector.Factory<out androidx.fragment.app.Fragment>

@Binds
@IntoMap
@FragmentKey(ManagerFragment::class)
internal abstract fun manager(impl: ManagerFragmentComponent.Builder): AndroidInjector.Factory<out Fragment>
internal abstract fun manager(impl: ManagerFragmentComponent.Builder): AndroidInjector.Factory<out androidx.fragment.app.Fragment>

@Binds
@IntoMap
@FragmentKey(SettingsFragment::class)
internal abstract fun settings(impl: SettingsFragmentComponent.Builder): AndroidInjector.Factory<out Fragment>
internal abstract fun settings(impl: SettingsFragmentComponent.Builder): AndroidInjector.Factory<out androidx.fragment.app.Fragment>
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ constructor(
super.onBindChange(view)
if (initialLaunch) {
initialLaunch = false
onView {
withView {
when {
settings.isShowOnboarding() -> navigator.goToOnboarding()
else -> navigator.goToManagement()
Expand Down
Loading

0 comments on commit 570b9d7

Please sign in to comment.