CommonsApplication migrate to kotlin & some lint fixes (#5879)

* convert to kotlin

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* use lateinit instead of nullable types

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* instance property access fix

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* refactor constants name with uppercased ones

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* remove unused

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* fix imports in test

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

* use mockk for kotlin to fix tests

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>

---------

Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
This commit is contained in:
Parneet Singh 2024-10-26 19:49:34 +05:30 committed by GitHub
parent 7c58891892
commit bc065c8792
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 436 additions and 445 deletions

View file

@ -10,6 +10,7 @@ import android.os.Looper
import android.view.LayoutInflater
import android.view.View
import androidx.recyclerview.widget.RecyclerView
import fr.free.nrw.commons.CommonsApplication
import fr.free.nrw.commons.Media
import fr.free.nrw.commons.R
import fr.free.nrw.commons.TestCommonsApplication
@ -19,6 +20,8 @@ import fr.free.nrw.commons.description.EditDescriptionConstants.WIKITEXT
import fr.free.nrw.commons.settings.Prefs
import fr.free.nrw.commons.upload.UploadMediaDetail
import fr.free.nrw.commons.upload.UploadMediaDetailAdapter
import io.mockk.every
import io.mockk.mockkObject
import org.junit.Assert
import org.junit.Assert.assertEquals
import org.junit.Before
@ -54,6 +57,9 @@ class DescriptionEditActivityUnitTest {
@Mock
private lateinit var rvDescriptions: RecyclerView
@Mock
private lateinit var commonsApplication: CommonsApplication
private lateinit var media: Media
@Before
@ -82,6 +88,8 @@ class DescriptionEditActivityUnitTest {
bundle.putString(Prefs.DESCRIPTION_LANGUAGE, "bn")
bundle.putParcelable("media", media)
intent.putExtras(bundle)
mockkObject(CommonsApplication)
every { CommonsApplication.instance }.returns(commonsApplication)
activity =
Robolectric.buildActivity(DescriptionEditActivity::class.java, intent).create().get()
binding = ActivityDescriptionEditBinding.inflate(LayoutInflater.from(activity))