-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdependencies.kt
More file actions
153 lines (128 loc) · 6.03 KB
/
dependencies.kt
File metadata and controls
153 lines (128 loc) · 6.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
object Versions {
const val androidx_core = "1.1.0"
const val androidx_appcompat = "1.1.0"
const val androidx_constraint = "1.1.3"
const val androidx_junit = "1.1.1"
const val androidx_recyclerview = "1.0.0"
const val androidx_cardview = "1.0.0"
const val okhttp_interceptor = "4.2.2"
const val koin_version = "2.0.1"
const val kotlin_version = "1.3.50"
const val anko_version = "0.10.4"
const val retrofit_version = "2.4.0"
const val rx_android_version = "2.1.1"
const val smoothprogressbar_circular_version = "1.3.0"
const val google_maps_version = "17.0.0"
const val espresso_version = "3.2.0"
const val mockito_kotlin_version = "2.2.0"
const val leak_canary = "2.0-beta-3"
const val test_runner_version = "1.0.1"
const val junit_version = "4.12"
const val kotlin_test = "1.3.50"
const val mockito_all = "1.10.19"
const val mockito_inline = "3.0.0"
const val mockito_core = "3.1.0"
const val hamcrest = "1.3"
const val okhttp_mockwebserver = "4.2.2"
const val android_core_testing = "1.1.1"
}
object Dependencies {
//Base
val kotlin = "implementation" to "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${Versions.kotlin_version}"
val appCompat = "implementation" to "androidx.appcompat:appcompat:${Versions.androidx_appcompat}"
val androidxCore = "implementation" to "androidx.core:core-ktx:${Versions.androidx_core}"
val constraintLayout = "implementation" to "androidx.constraintlayout:constraintlayout:${Versions.androidx_constraint}"
val androidxJunit = "testImplementation" to "androidx.test.ext:junit:${Versions.androidx_junit}"
val jUnit = "testImplementation" to "junit:junit:${Versions.junit_version}"
val androidxEspresso = "androidTestImplementation" to "androidx.test.espresso:espresso-core:${Versions.espresso_version}"
//Android libraries
val recyclerview = "implementation" to "androidx.recyclerview:recyclerview:${Versions.androidx_recyclerview}"
val cardview = "implementation" to "androidx.cardview:cardview:${Versions.androidx_cardview}"
//Anko
val anko = "implementation" to "org.jetbrains.anko:anko:${Versions.anko_version}"
val ankoCommons = "implementation" to "org.jetbrains.anko:anko-commons:${Versions.anko_version}"
//Retrofit
val retrofit = "implementation" to "com.squareup.retrofit2:retrofit:${Versions.retrofit_version}"
val retrofitRx = "implementation" to "com.squareup.retrofit2:adapter-rxjava2:${Versions.retrofit_version}"
val retrofitGson = "implementation" to "com.squareup.retrofit2:converter-gson:${Versions.retrofit_version}"
//Okhttp Interceptor
val okhttpInterceptor =
"implementation" to "com.squareup.okhttp3:logging-interceptor:${Versions.okhttp_interceptor}"
//Google Maps
val googleMaps = "implementation" to "com.google.android.gms:play-services-maps:${Versions.google_maps_version}"
//Smooth Progress Bar
val progressBar = "implementation" to "com.github.castorflex.smoothprogressbar:library-circular:${Versions.smoothprogressbar_circular_version}"
//RxJava2
val rxJava = "implementation" to "io.reactivex.rxjava2:rxandroid:${Versions.rx_android_version}"
//Koin
val koinViewModel = "implementation" to "org.koin:koin-androidx-viewmodel:${Versions.koin_version}"
//Tests
val mockitoAll = "testImplementation" to "org.mockito:mockito-all:${Versions.mockito_all}"
val mockitoCore = "testImplementation" to "org.mockito:mockito-core:${Versions.mockito_core}"
val mockitoInline = "testImplementation" to "org.mockito:mockito-inline:${Versions.mockito_inline}"
val kotlinTest = "testImplementation" to "org.jetbrains.kotlin:kotlin-test:${Versions.kotlin_test}"
val mockitoKotlin = "testImplementation" to "com.nhaarman.mockitokotlin2:mockito-kotlin:${Versions.mockito_kotlin_version}"
val hamcrest = "testImplementation" to "org.hamcrest:hamcrest-all:${Versions.hamcrest}"
val mockWebServer = "testImplementation" to "com.squareup.okhttp3:mockwebserver:${Versions.okhttp_mockwebserver}"
val coreTesting = "testImplementation" to "android.arch.core:core-testing:${Versions.android_core_testing}"
val testRunner = "testImplementation" to "com.android.support.test:runner:${Versions.test_runner_version}"
val testJunit = "testImplementation" to "org.jetbrains.kotlin:kotlin-test-junit:${Versions.kotlin_version}"
val leakCanary = "debugImplementation" to "com.squareup.leakcanary:leakcanary-android:${Versions.leak_canary}"
}
object Buckets {
val network =
listOf(
Dependencies.retrofit,
Dependencies.retrofitGson,
Dependencies.retrofitRx,
Dependencies.okhttpInterceptor
)
val rxJava =
listOf(
Dependencies.rxJava
)
val appLibraries =
listOf(
Dependencies.progressBar,
Dependencies.googleMaps,
Dependencies.recyclerview,
Dependencies.cardview
)
val baseAndroid =
listOf(
Dependencies.kotlin,
Dependencies.appCompat,
Dependencies.androidxCore,
Dependencies.constraintLayout,
Dependencies.androidxCore,
Dependencies.androidxJunit,
Dependencies.androidxEspresso
)
val testing =
listOf(
Dependencies.mockitoKotlin,
Dependencies.mockitoCore,
Dependencies.mockitoAll,
Dependencies.mockitoInline,
Dependencies.jUnit,
Dependencies.kotlinTest,
Dependencies.hamcrest,
Dependencies.mockWebServer,
Dependencies.coreTesting,
Dependencies.testRunner,
Dependencies.testJunit
)
val koin =
listOf(
Dependencies.koinViewModel
)
val anko =
listOf(
Dependencies.anko,
Dependencies.ankoCommons
)
val tools =
listOf(
Dependencies.leakCanary
)
}