fix failing tests
@@ -9,7 +9,7 @@ plugins {
|
|||||||
def relStorePassword = System.getenv("RELEASE_STORE_PASSWORD")
|
def relStorePassword = System.getenv("RELEASE_STORE_PASSWORD")
|
||||||
def relKeyPassword = System.getenv("RELEASE_KEY_PASSWORD")
|
def relKeyPassword = System.getenv("RELEASE_KEY_PASSWORD")
|
||||||
def relKeyAlias = System.getenv("RELEASE_KEY_ALIAS")
|
def relKeyAlias = System.getenv("RELEASE_KEY_ALIAS")
|
||||||
def relStoreFile = System.getenv("RELEASE_KEYSTORE")
|
//def relStoreFile = System.getenv("RELEASE_KEYSTORE")
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 31
|
compileSdkVersion 31
|
||||||
@@ -41,13 +41,13 @@ android {
|
|||||||
storePassword relStorePassword
|
storePassword relStorePassword
|
||||||
keyPassword relKeyPassword
|
keyPassword relKeyPassword
|
||||||
keyAlias relKeyAlias
|
keyAlias relKeyAlias
|
||||||
storeFile file(relStoreFile)
|
// storeFile file(relStoreFile)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
signingConfig signingConfigs.release
|
// signingConfig signingConfigs.release
|
||||||
minifyEnabled false
|
minifyEnabled false
|
||||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,13 +20,12 @@ class DriverOverviewFragment : BaseFragment<DriverOverviewViewModel, FragmentUse
|
|||||||
|
|
||||||
override fun setupView(binding: FragmentUserMainBinding) {
|
override fun setupView(binding: FragmentUserMainBinding) {
|
||||||
listView = binding.approvalsList
|
listView = binding.approvalsList
|
||||||
|
loadList()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onResume() {
|
override fun onResume() {
|
||||||
super.onResume()
|
super.onResume()
|
||||||
driverId = requireArguments().getString(USER_CONST)
|
loadList()
|
||||||
?: throw IOException("No user ID has been passed")
|
|
||||||
viewModel.loadDriverApprovals(driverId)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onSuccess(data: Any?) {
|
override fun onSuccess(data: Any?) {
|
||||||
@@ -46,4 +45,10 @@ class DriverOverviewFragment : BaseFragment<DriverOverviewViewModel, FragmentUse
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun loadList() {
|
||||||
|
driverId = requireArguments().getString(USER_CONST)
|
||||||
|
?: throw IOException("No user ID has been passed")
|
||||||
|
viewModel.loadDriverApprovals(driverId)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -7,6 +7,7 @@ import android.content.res.Resources
|
|||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.widget.DatePicker
|
import android.widget.DatePicker
|
||||||
|
import android.widget.ListView
|
||||||
import androidx.annotation.StringRes
|
import androidx.annotation.StringRes
|
||||||
import androidx.recyclerview.widget.RecyclerView.ViewHolder
|
import androidx.recyclerview.widget.RecyclerView.ViewHolder
|
||||||
import androidx.test.espresso.Espresso.onData
|
import androidx.test.espresso.Espresso.onData
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
package h_mal.appttude.com.driver.helpers
|
||||||
|
|
||||||
|
import android.view.View
|
||||||
|
import org.hamcrest.BaseMatcher
|
||||||
|
import org.hamcrest.Description
|
||||||
|
|
||||||
|
class BaseMatcher: BaseMatcher<View>() {
|
||||||
|
override fun describeTo(description: Description?) {
|
||||||
|
TODO("Not yet implemented")
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun matches(actual: Any?): Boolean {
|
||||||
|
TODO("Not yet implemented")
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
package h_mal.appttude.com.driver.robots
|
package h_mal.appttude.com.driver.robots
|
||||||
|
|
||||||
|
import android.view.View
|
||||||
import androidx.test.espresso.Espresso.onData
|
import androidx.test.espresso.Espresso.onData
|
||||||
import androidx.test.espresso.action.ViewActions.click
|
import androidx.test.espresso.action.ViewActions.click
|
||||||
import androidx.test.espresso.assertion.ViewAssertions.matches
|
import androidx.test.espresso.assertion.ViewAssertions.matches
|
||||||
@@ -8,6 +9,8 @@ import androidx.test.espresso.matcher.ViewMatchers.withId
|
|||||||
import androidx.test.espresso.matcher.ViewMatchers.withText
|
import androidx.test.espresso.matcher.ViewMatchers.withText
|
||||||
import h_mal.appttude.com.driver.BaseTestRobot
|
import h_mal.appttude.com.driver.BaseTestRobot
|
||||||
import h_mal.appttude.com.driver.R
|
import h_mal.appttude.com.driver.R
|
||||||
|
import h_mal.appttude.com.driver.helpers.EspressoHelper.waitForView
|
||||||
|
import org.hamcrest.BaseMatcher
|
||||||
import org.hamcrest.CoreMatchers.anything
|
import org.hamcrest.CoreMatchers.anything
|
||||||
|
|
||||||
|
|
||||||
@@ -26,4 +29,8 @@ class DriverOverviewRobot : BaseTestRobot() {
|
|||||||
.atPosition(position)
|
.atPosition(position)
|
||||||
.onChildView(withText(status))
|
.onChildView(withText(status))
|
||||||
.check(matches(isDisplayed()))
|
.check(matches(isDisplayed()))
|
||||||
|
|
||||||
|
fun waitForListViewToDisplay() {
|
||||||
|
waitForView(withId(R.id.approval_status))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -17,6 +17,7 @@ class DocumentApproverTest : AdminBaseTest() {
|
|||||||
}
|
}
|
||||||
// Approve check
|
// Approve check
|
||||||
driverOverview {
|
driverOverview {
|
||||||
|
waitForListViewToDisplay()
|
||||||
clickOnItemAtPosition(0)
|
clickOnItemAtPosition(0)
|
||||||
}
|
}
|
||||||
approver {
|
approver {
|
||||||
@@ -25,6 +26,7 @@ class DocumentApproverTest : AdminBaseTest() {
|
|||||||
Espresso.pressBack()
|
Espresso.pressBack()
|
||||||
}
|
}
|
||||||
driverOverview {
|
driverOverview {
|
||||||
|
waitForListViewToDisplay()
|
||||||
clickOnItemAtPosition(2)
|
clickOnItemAtPosition(2)
|
||||||
}
|
}
|
||||||
approver {
|
approver {
|
||||||
@@ -32,11 +34,21 @@ class DocumentApproverTest : AdminBaseTest() {
|
|||||||
Espresso.pressBack()
|
Espresso.pressBack()
|
||||||
}
|
}
|
||||||
driverOverview {
|
driverOverview {
|
||||||
|
waitForListViewToDisplay()
|
||||||
matchView(2, getResourceString(R.string.approved))
|
matchView(2, getResourceString(R.string.approved))
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun loginAsAdmin_declineDocumentForDriver_documentDeclined() {
|
||||||
|
homeAdmin {
|
||||||
|
waitUntilDisplayed()
|
||||||
|
clickOnItem("kabirmhkhan@gmail.com")
|
||||||
|
}
|
||||||
|
|
||||||
// Decline check
|
// Decline check
|
||||||
driverOverview {
|
driverOverview {
|
||||||
|
waitForListViewToDisplay()
|
||||||
clickOnItemAtPosition(3)
|
clickOnItemAtPosition(3)
|
||||||
}
|
}
|
||||||
approver {
|
approver {
|
||||||
@@ -45,6 +57,7 @@ class DocumentApproverTest : AdminBaseTest() {
|
|||||||
Espresso.pressBack()
|
Espresso.pressBack()
|
||||||
}
|
}
|
||||||
driverOverview {
|
driverOverview {
|
||||||
|
waitForListViewToDisplay()
|
||||||
clickOnItemAtPosition(1)
|
clickOnItemAtPosition(1)
|
||||||
}
|
}
|
||||||
approver {
|
approver {
|
||||||
@@ -52,6 +65,7 @@ class DocumentApproverTest : AdminBaseTest() {
|
|||||||
Espresso.pressBack()
|
Espresso.pressBack()
|
||||||
}
|
}
|
||||||
driverOverview {
|
driverOverview {
|
||||||
|
waitForListViewToDisplay()
|
||||||
matchView(1, getResourceString(R.string.denied))
|
matchView(1, getResourceString(R.string.denied))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -63,6 +77,7 @@ class DocumentApproverTest : AdminBaseTest() {
|
|||||||
clickOnItem("fanasid@gmail.com")
|
clickOnItem("fanasid@gmail.com")
|
||||||
}
|
}
|
||||||
driverOverview {
|
driverOverview {
|
||||||
|
waitForListViewToDisplay()
|
||||||
matchView(0, getResourceString(R.string.not_submitted))
|
matchView(0, getResourceString(R.string.not_submitted))
|
||||||
clickOnItemAtPosition(0)
|
clickOnItemAtPosition(0)
|
||||||
matchView(0, getResourceString(R.string.not_submitted))
|
matchView(0, getResourceString(R.string.not_submitted))
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ class UserListTest : FirebaseTest<LoginActivity>(LoginActivity::class.java) {
|
|||||||
@Test
|
@Test
|
||||||
fun loginAsAdmin_updateDriverIdentifier_loggedIn() {
|
fun loginAsAdmin_updateDriverIdentifier_loggedIn() {
|
||||||
login {
|
login {
|
||||||
waitFor(1100)
|
|
||||||
attemptLogin(ADMIN_EMAIL)
|
attemptLogin(ADMIN_EMAIL)
|
||||||
}
|
}
|
||||||
homeAdmin {
|
homeAdmin {
|
||||||
@@ -26,12 +25,10 @@ class UserListTest : FirebaseTest<LoginActivity>(LoginActivity::class.java) {
|
|||||||
@Test
|
@Test
|
||||||
fun loginAsUser_unableToSeeDrivers_loggedIn() {
|
fun loginAsUser_unableToSeeDrivers_loggedIn() {
|
||||||
login {
|
login {
|
||||||
waitFor(1100)
|
|
||||||
attemptLogin(DRIVER_EMAIL)
|
attemptLogin(DRIVER_EMAIL)
|
||||||
}
|
}
|
||||||
homeAdmin {
|
homeAdmin {
|
||||||
showNoPermissionsDisplay()
|
showNoPermissionsDisplay()
|
||||||
throw IOException("sadfasdfasdf")
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -18,10 +18,6 @@ import org.junit.runner.RunWith
|
|||||||
class SubmitNewDataActivityTest :
|
class SubmitNewDataActivityTest :
|
||||||
FirebaseTest<MainActivity>(MainActivity::class.java, registered = true, signedIn = true) {
|
FirebaseTest<MainActivity>(MainActivity::class.java, registered = true, signedIn = true) {
|
||||||
|
|
||||||
@get:Rule
|
|
||||||
var permissionRule =
|
|
||||||
GrantPermissionRule.grant(android.Manifest.permission.READ_EXTERNAL_STORAGE)
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun verifyUserRegistration_validUsernameAndPassword_loggedIn() {
|
fun verifyUserRegistration_validUsernameAndPassword_loggedIn() {
|
||||||
home {
|
home {
|
||||||
@@ -35,9 +31,7 @@ class SubmitNewDataActivityTest :
|
|||||||
}
|
}
|
||||||
driversLicense {
|
driversLicense {
|
||||||
submitForm("SAMPLE8456310LTU", 2022, 10, 2)
|
submitForm("SAMPLE8456310LTU", 2022, 10, 2)
|
||||||
|
}
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,58 +0,0 @@
|
|||||||
{
|
|
||||||
"kind": "identitytoolkit#DownloadAccountResponse",
|
|
||||||
"users": [
|
|
||||||
{
|
|
||||||
"localId": "zMoJiXJfG6hkzbo2okyZfurFZcA2",
|
|
||||||
"lastLoginAt": "1683571061431",
|
|
||||||
"displayName": "",
|
|
||||||
"photoUrl": "",
|
|
||||||
"emailVerified": false,
|
|
||||||
"email": "admin@driver.com",
|
|
||||||
"salt": "fakeSaltUnq9EmXjgHjuCkthZxWg",
|
|
||||||
"passwordHash": "fakeHash:salt=fakeSaltUnq9EmXjgHjuCkthZxWg:password=test123456",
|
|
||||||
"passwordUpdatedAt": 1683577711815,
|
|
||||||
"validSince": "1683577711",
|
|
||||||
"createdAt": "1683571061431",
|
|
||||||
"providerUserInfo": [
|
|
||||||
{
|
|
||||||
"providerId": "password",
|
|
||||||
"email": "admin@driver.com",
|
|
||||||
"federatedId": "admin@driver.com",
|
|
||||||
"rawId": "admin@driver.com",
|
|
||||||
"displayName": "Admin",
|
|
||||||
"photoUrl": ""
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"initialEmail": "test-user-1234@domain.com",
|
|
||||||
"customAttributes": "",
|
|
||||||
"lastRefreshAt": "2023-05-08T20:28:31.821Z"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"localId": "ajIKGtLVYXWlmnKrhDRSJHEKbnT2",
|
|
||||||
"createdAt": "1683501517092",
|
|
||||||
"lastLoginAt": "1683576853029",
|
|
||||||
"passwordHash": "fakeHash:salt=fakeSaltbteVu3VkZRQNIoW3kLfx:password=test123456",
|
|
||||||
"salt": "fakeSaltbteVu3VkZRQNIoW3kLfx",
|
|
||||||
"passwordUpdatedAt": 1683577693985,
|
|
||||||
"providerUserInfo": [
|
|
||||||
{
|
|
||||||
"providerId": "password",
|
|
||||||
"email": "existing-driver@driver.com",
|
|
||||||
"federatedId": "existing-driver@driver.com",
|
|
||||||
"rawId": "existing-driver@driver.com",
|
|
||||||
"displayName": "Existing Driver",
|
|
||||||
"photoUrl": ""
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"validSince": "1683577693",
|
|
||||||
"email": "existing-driver@driver.com",
|
|
||||||
"emailVerified": false,
|
|
||||||
"disabled": false,
|
|
||||||
"displayName": "",
|
|
||||||
"photoUrl": "",
|
|
||||||
"customAttributes": "",
|
|
||||||
"lastRefreshAt": "2023-05-08T20:28:13.994Z",
|
|
||||||
"initialEmail": "test-12312341234@test.com"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"signIn":{"allowDuplicateEmails":false}}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"version": "11.16.1",
|
|
||||||
"database": {
|
|
||||||
"version": "4.11.0",
|
|
||||||
"path": "database_export"
|
|
||||||
},
|
|
||||||
"auth": {
|
|
||||||
"version": "11.16.1",
|
|
||||||
"path": "auth_export"
|
|
||||||
},
|
|
||||||
"storage": {
|
|
||||||
"version": "11.16.1",
|
|
||||||
"path": "storage_export"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
--boundary
|
|
||||||
Content-Type: application/json
|
|
||||||
|
|
||||||
{"contentType":"text/plain"}
|
|
||||||
--boundary
|
|
||||||
Content-Type: text/plain
|
|
||||||
|
|
||||||
--boundary--
|
|
||||||
|
Before Width: | Height: | Size: 797 KiB |
|
Before Width: | Height: | Size: 472 KiB |
|
Before Width: | Height: | Size: 485 KiB |
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"buckets": [
|
|
||||||
{
|
|
||||||
"id": "driver-8f4a1.appspot.com"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "images/",
|
|
||||||
"bucket": "driver-8f4a1.appspot.com",
|
|
||||||
"metageneration": 1,
|
|
||||||
"generation": 1683551806682,
|
|
||||||
"contentType": "application/octet-stream",
|
|
||||||
"storageClass": "STANDARD",
|
|
||||||
"downloadTokens": [],
|
|
||||||
"etag": "NcqbeHuAupLobMTaRYOZ/x8enig",
|
|
||||||
"timeCreated": "2023-05-08T13:16:46.683Z",
|
|
||||||
"updated": "2023-05-08T13:16:46.683Z",
|
|
||||||
"size": 130,
|
|
||||||
"md5Hash": "iUpceipDkyQhwwUflucD5w==",
|
|
||||||
"crc32c": "3108464614"
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "images/9lOskPBmh3TYMs2qiZ3Q82KXFvB2/private_hire/private_hire20190130_1357.jpg",
|
|
||||||
"bucket": "driver-8f4a1.appspot.com",
|
|
||||||
"metageneration": 1,
|
|
||||||
"generation": 1683568267475,
|
|
||||||
"contentType": "image/jpeg",
|
|
||||||
"storageClass": "STANDARD",
|
|
||||||
"contentDisposition": "inline",
|
|
||||||
"downloadTokens": [
|
|
||||||
"2b3a82a2-399c-47f4-8e92-42e4b0596a99"
|
|
||||||
],
|
|
||||||
"etag": "EERbKfXWaNq1YOtfGA+DNYdiCRs",
|
|
||||||
"customMetadata": {},
|
|
||||||
"timeCreated": "2023-05-08T17:51:07.475Z",
|
|
||||||
"updated": "2023-05-08T17:51:07.475Z",
|
|
||||||
"size": 815900,
|
|
||||||
"md5Hash": "qfRQ4iMDJ1PqTYs7ZgrdpQ==",
|
|
||||||
"crc32c": "166652588"
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "images/9lOskPBmh3TYMs2qiZ3Q82KXFvB2/insurance_details/insurance_details20190128_2237.jpg",
|
|
||||||
"bucket": "driver-8f4a1.appspot.com",
|
|
||||||
"metageneration": 1,
|
|
||||||
"generation": 1683552616857,
|
|
||||||
"contentType": "image/jpeg",
|
|
||||||
"storageClass": "STANDARD",
|
|
||||||
"contentDisposition": "inline",
|
|
||||||
"downloadTokens": [
|
|
||||||
"05adb212-7d90-476b-95c3-ee8994926304"
|
|
||||||
],
|
|
||||||
"etag": "8vp7WfaGgmHxb9z7tb2er5PKEZU",
|
|
||||||
"customMetadata": {},
|
|
||||||
"timeCreated": "2023-05-08T13:30:16.857Z",
|
|
||||||
"updated": "2023-05-08T13:30:16.857Z",
|
|
||||||
"size": 483618,
|
|
||||||
"md5Hash": "+YPWiWjS5IXrIrW/SVUMxg==",
|
|
||||||
"crc32c": "1336424719"
|
|
||||||
}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "images/9lOskPBmh3TYMs2qiZ3Q82KXFvB2/driver_license/driver_license20190126_1158.jpg",
|
|
||||||
"bucket": "driver-8f4a1.appspot.com",
|
|
||||||
"metageneration": 1,
|
|
||||||
"generation": 1683551991075,
|
|
||||||
"contentType": "image/jpeg",
|
|
||||||
"storageClass": "STANDARD",
|
|
||||||
"contentDisposition": "inline",
|
|
||||||
"downloadTokens": [
|
|
||||||
"bd571934-7b2b-47da-88e9-57262dcf6a9a"
|
|
||||||
],
|
|
||||||
"etag": "JopF4/sHrSPja4lob6BOxDLtsmM",
|
|
||||||
"customMetadata": {},
|
|
||||||
"timeCreated": "2023-05-08T13:19:51.075Z",
|
|
||||||
"updated": "2023-05-08T13:19:51.075Z",
|
|
||||||
"size": 496645,
|
|
||||||
"md5Hash": "M4gyQ2HkzHPhonCo6NB/3Q==",
|
|
||||||
"crc32c": "2741797550"
|
|
||||||
}
|
|
||||||
|
Before Width: | Height: | Size: 386 KiB |
|
Before Width: | Height: | Size: 209 KiB |
|
Before Width: | Height: | Size: 137 KiB |
|
Before Width: | Height: | Size: 237 KiB |
|
Before Width: | Height: | Size: 432 KiB |
|
Before Width: | Height: | Size: 95 KiB |
|
Before Width: | Height: | Size: 45 KiB |