Skip to content

Commit

Permalink
[] -- Testing
Browse files Browse the repository at this point in the history
  • Loading branch information
Isanz committed May 7, 2024
1 parent 98ab4f3 commit 1855264
Show file tree
Hide file tree
Showing 4 changed files with 74 additions and 34 deletions.
2 changes: 2 additions & 0 deletions app/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,8 @@ dependencies {
implementation(libs.gson)
implementation(libs.converter.gson)
implementation(libs.play.services.ads)
implementation(libs.mockito.core)
implementation(libs.androidx.navigation.testing)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package com.isanz.inmomarket

import androidx.test.ext.junit.runners.AndroidJUnit4
import androidx.test.platform.app.InstrumentationRegistry
import com.isanz.inmomarket.ui.add.AddViewModel
import com.isanz.inmomarket.ui.chat.ChatViewModel
import com.isanz.inmomarket.ui.home.HomeViewModel
import com.isanz.inmomarket.ui.profile.ProfileViewModel
import com.isanz.inmomarket.ui.search.SearchViewModel
import com.isanz.inmomarket.ui.settings.SettingsViewModel
import com.isanz.inmomarket.utils.Constants
import com.isanz.inmomarket.utils.entities.Message
import com.isanz.inmomarket.utils.entities.Property
import org.junit.Assert.*
import org.junit.Test
import org.junit.runner.RunWith
import java.lang.reflect.Method

/**
* Instrumented test, which will execute on an Android device.
*
* See [testing documentation](http://d.android.com/tools/testing).
*/
@RunWith(AndroidJUnit4::class)
class InmomarketInstrumentedTest {
@Test
fun viewModelsNotNull() {
val chatViewModel = ChatViewModel()
assertNotNull(chatViewModel)
val homeViewModel = HomeViewModel()
assertNotNull(homeViewModel)
val addViewModel = AddViewModel()
assertNotNull(addViewModel)
val searchViewModel = SearchViewModel()
assertNotNull(searchViewModel)
val profileViewModel = ProfileViewModel()
assertNotNull(profileViewModel)
val settingsViewModel = SettingsViewModel()
assertNotNull(settingsViewModel)
}

@Test
fun useAppContext() {
// Context of the app under test.
val appContext = InstrumentationRegistry.getInstrumentation().targetContext
assertEquals("com.isanz.inmomarket", appContext.packageName)
}

@Test
fun chatMessageHasRightFormat() {
val chatViewModel = ChatViewModel()
val createMesssageMetoth: Method = ChatViewModel::class.java.getDeclaredMethod("createMessage", String::class.java, String::class.java)
createMesssageMetoth.isAccessible = true
val message : Message = createMesssageMetoth.invoke(chatViewModel, "Hello", "123") as Message
assertEquals("Hello", message.message )
assertEquals("123", message.senderId)
}
}
24 changes: 14 additions & 10 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,30 +1,30 @@
[versions]
agp = "8.3.2"
kotlin = "1.9.0"
coreKtx = "1.13.0"
coreKtx = "1.13.1"
junit = "4.13.2"
junitVersion = "1.1.5"
espressoCore = "3.5.1"
appcompat = "1.6.1"
material = "1.11.0"
material = "1.12.0"
constraintlayout = "2.1.4"
lifecycleLivedataKtx = "2.7.0"
lifecycleViewmodelKtx = "2.7.0"
navigationFragmentKtx = "2.7.7"
navigationUiKtx = "2.7.7"
googleServices = "4.4.1"
firebaseFirestore = "24.11.1"
firebaseFirestore = "25.0.0"
annotation = "1.7.1"
firebaseUiAuth = "8.0.2"
activity = "1.9.0"
firebaseAuth = "22.3.1"
firebaseDatabase = "20.3.1"
firebaseAuth = "23.0.0"
firebaseDatabase = "21.0.0"
legacySupportV4 = "1.0.0"
fragmentKtx = "1.6.2"
fragmentKtx = "1.7.0"
glide = "5.0.0-rc01"
firebaseStorageKtx = "20.3.0"
firebaseStorage = "20.3.0"
firebaseCrashlytics = "18.6.4"
firebaseStorage = "21.0.0"
firebaseCrashlytics = "19.0.0"
gradle = "8.1.4"
firebaseCrashlyticsGradle = "2.9.9"
kotlinxCoroutinesAndroid = "1.8.1-Beta"
Expand All @@ -36,6 +36,8 @@ retrofit = "2.11.0"
gson = "2.10.1"
converterGson = "2.11.0"
playServicesAds = "23.0.0"
mockitoCore = "5.11.0"
navigationTesting = "2.8.0-alpha08"

[libraries]
androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
Expand All @@ -59,21 +61,23 @@ firebase-database = { group = "com.google.firebase", name = "firebase-database",
androidx-legacy-support-v4 = { group = "androidx.legacy", name = "legacy-support-v4", version.ref = "legacySupportV4" }
androidx-fragment-ktx = { group = "androidx.fragment", name = "fragment-ktx", version.ref = "fragmentKtx" }
glide = { group = "com.github.bumptech.glide", name = "glide", version.ref = "glide" }
firebase-storage-ktx = { group = "com.google.firebase", name = "firebase-storage-ktx", version.ref = "firebaseStorageKtx" }
firebase-storage-ktx = { group = "com.google.firebase", name = "firebase-storage-ktx", version = "21.0.0" }
firebase-storage = { group = "com.google.firebase", name = "firebase-storage", version.ref = "firebaseStorage" }
firebase-crashlytics = { group = "com.google.firebase", name = "firebase-crashlytics", version.ref = "firebaseCrashlytics" }
gradle = { group = "com.android.tools.build", name = "gradle", version.ref = "gradle" }
firebase-crashlytics-gradle = { group = "com.google.firebase", name = "firebase-crashlytics-gradle", version.ref = "firebaseCrashlyticsGradle" }
kotlinx-coroutines-android = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-android", version.ref = "kotlinxCoroutinesAndroid" }
kotlinx-coroutines-play-services = { group = "org.jetbrains.kotlinx", name = "kotlinx-coroutines-play-services", version.ref = "kotlinxCoroutinesPlayServices" }
androidx-biometric = { group = "androidx.biometric", name = "biometric", version.ref = "biometric" }
androidx-transition = { group = "androidx.transition", name = "transition", version = "1.5.0-rc02" }
androidx-transition = { group = "androidx.transition", name = "transition", version = "1.5.0" }
places = { group = "com.google.android.libraries.places", name = "places", version.ref = "places" }
play-services-maps = { group = "com.google.android.gms", name = "play-services-maps", version.ref = "playServicesMaps" }
retrofit = { group = "com.squareup.retrofit2", name = "retrofit", version.ref = "retrofit" }
gson = { group = "com.google.code.gson", name = "gson", version.ref = "gson" }
converter-gson = { group = "com.squareup.retrofit2", name = "converter-gson", version.ref = "converterGson" }
play-services-ads = { group = "com.google.android.gms", name = "play-services-ads", version.ref = "playServicesAds" }
mockito-core = { group = "org.mockito", name = "mockito-core", version.ref = "mockitoCore" }
androidx-navigation-testing = { group = "androidx.navigation", name = "navigation-testing", version.ref = "navigationTesting" }

[plugins]
androidApplication = { id = "com.android.application", version.ref = "agp" }
Expand Down

0 comments on commit 1855264

Please sign in to comment.