Tests unitaires des user #54

Merged
leni.beaulaton merged 1 commits from TestUnit into master 3 weeks ago

@ -20,6 +20,8 @@ interface IServices {
fun EditPasswd(passwd : String, index : Int) fun EditPasswd(passwd : String, index : Int)
fun EditImage(index : Int) : String fun EditImage(index : Int) : String
fun ChangeLangage(index : Int): SrcLanguage fun ChangeLangage(index : Int): SrcLanguage
fun isUsernameExist(username : String) : Boolean
fun isEmailExist(email : String) : Boolean
fun AddFav(userId: Int, QuoteId : Int) fun AddFav(userId: Int, QuoteId : Int)
fun SupFav(userId: Int, QuoteId : Int) fun SupFav(userId: Int, QuoteId : Int)

@ -28,7 +28,7 @@ class ServicesStub : IServices {
if (user.username == username && user.password == hashPassWd) { if (user.username == username && user.password == hashPassWd) {
initialierCurrentUser(index) initialierCurrentUser(index)
navController(index) navController(index)
logsUser.logInformationUserConnect(user, "UserConnect") //logsUser.logInformationUserConnect(user, "UserConnect")
return true return true
} }
} }
@ -45,7 +45,7 @@ class ServicesStub : IServices {
} }
//Afficher tous les users //Afficher tous les users
logsUser.logDebugUserEmail(user, "UsernameUpdate") //logsUser.logDebugUserEmail(user, "UsernameUpdate")
return false return false
} }
@ -57,7 +57,7 @@ class ServicesStub : IServices {
return true return true
} }
//Afficher tous les users //Afficher tous les users
logsUser.logDebugAllUsers(getAllUsers(), "EmailUpdate") //logsUser.logDebugAllUsers(getAllUsers(), "EmailUpdate")
return false return false
} }
@ -67,7 +67,7 @@ class ServicesStub : IServices {
user?.password = passwordhash user?.password = passwordhash
//Afficher tous les users en log //Afficher tous les users en log
logsUser.logDebugAllUsers(getAllUsers(), "PasswordUpdate") //logsUser.logDebugAllUsers(getAllUsers(), "PasswordUpdate")
} }
override fun EditImage(index : Int) : String { override fun EditImage(index : Int) : String {
@ -82,7 +82,7 @@ class ServicesStub : IServices {
getAllUsers()[index].langage = SrcLanguage.vo getAllUsers()[index].langage = SrcLanguage.vo
} }
logsUser.logDebugUserLangage(getAllUsers()[index], "ChangeLangue") //logsUser.logDebugUserLangage(getAllUsers()[index], "ChangeLangue")
return getAllUsers()[index].langage return getAllUsers()[index].langage
} }
@ -114,7 +114,7 @@ class ServicesStub : IServices {
users.add(user)//ajout au stub users.add(user)//ajout au stub
//Afficher tous les users //Afficher tous les users
logsUser.logDebugAllUsers(users, "CreateUser") //logsUser.logDebugAllUsers(users, "CreateUser")
return true return true
} }
return false return false
@ -172,26 +172,7 @@ class ServicesStub : IServices {
}.take(indexCount)) }.take(indexCount))
} }
//------------------------------------------------------ override fun isUsernameExist(username : String) : Boolean{
@SuppressLint("NewApi")
fun dateDuJour(): String {
val date = LocalDate.now()
return date.toString()
}
fun randomImage() : String{
val sizeList = allImages.size
val randomNb = (0..sizeList).random()
allImages.forEach{image ->
if(image.id == randomNb){
return image.url
}
}
return allImages[0].url
}
fun isUsernameExist(username : String) : Boolean{
val userStub = getAllUsers() val userStub = getAllUsers()
for (user in userStub) { for (user in userStub) {
if (user.username == username) { if (user.username == username) {
@ -201,7 +182,7 @@ class ServicesStub : IServices {
return false return false
} }
fun isEmailExist(email : String) : Boolean{ override fun isEmailExist(email : String) : Boolean{
val userStub = getAllUsers() val userStub = getAllUsers()
for (user in userStub) { for (user in userStub) {
if (user.email == email) { if (user.email == email) {
@ -210,6 +191,23 @@ class ServicesStub : IServices {
} }
return false return false
} }
//------------------------------------------------------
@SuppressLint("NewApi")
fun dateDuJour(): String {
val date = LocalDate.now()
return date.toString()
}
fun randomImage() : String{
val sizeList = allImages.size
val randomNb = (0..sizeList).random()
allImages.forEach{image ->
if(image.id == randomNb){
return image.url
}
}
return allImages[0].url
}
} }

@ -1,17 +0,0 @@
package com.example.what_the_fantasy
import org.junit.Test
import org.junit.Assert.*
/**
* Example local unit test, which will execute on the development machine (host).
*
* See [testing documentation](http://d.android.com/tools/testing).
*/
class ExampleUnitTest {
@Test
fun addition_isCorrect() {
assertEquals(4, 2 + 2)
}
}

@ -0,0 +1,16 @@
package com.example.what_the_fantasy
import com.example.what_the_fantasy.data.model.SrcLanguage
import org.junit.Assert.assertEquals
import org.junit.Test
import com.example.what_the_fantasy.data.services.IServices
import com.example.what_the_fantasy.data.services.ServicesStub
import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue
class UnitTestQuote {
@Test
fun test(){
assertEquals(2,2)
}
}

@ -0,0 +1,127 @@
package com.example.what_the_fantasy
import androidx.compose.runtime.Composable
import androidx.navigation.compose.rememberNavController
import com.example.what_the_fantasy.data.model.SrcLanguage
import org.junit.Assert.assertEquals
import org.junit.Test
import com.example.what_the_fantasy.data.services.IServices
import com.example.what_the_fantasy.data.services.ServicesStub
import com.example.what_the_fantasy.data.services.hashPassword
import org.junit.Assert.assertFalse
import org.junit.Assert.assertTrue
class UnitTestUser {
private val services : IServices = ServicesStub()
@Test
fun testCreateUser_OK(){
assertTrue(services.CreateUser("username", "email", "passwd")
)
}
@Test
fun testCreateUserSameUsername(){
services.CreateUser("username2", "email2", "passwd")
assertFalse(services.CreateUser("username2", "emai", "passwd"))
}
@Test
fun testCreateUserSameEmail(){
services.CreateUser("username3", "email3", "passwd")
assertFalse(services.CreateUser("usernam", "email3", "passwd")
)
}
@Test
fun testUserEditUsername_OK(){
services.CreateUser("username4", "email4", "passwd")
assertTrue(services.EditUsername("newUsername",11))
}
@Test
fun testUserEditUsernameSameUsernameWithAnotherUsername(){
services.CreateUser("username5", "email5", "passwd")
assertFalse(services.EditUsername("dev",10))
}
@Test
fun testUserEditEmail_OK(){
services.CreateUser("username6", "email6", "passwd")
assertTrue(services.EditEmail("newEmail",11))
}
@Test
fun testUserEditEmailSameUsernameWithAnotherEmail(){
services.CreateUser("username7", "email7", "passwd")
assertFalse(services.EditEmail("testeur@example.com",10))
}
@Test
fun testUserEditPassword_OK(){
services.CreateUser("username8", "email8", "passwd")
services.EditPasswd("newPassword",11)
assertEquals(hashPassword("newPassword"), services.getUserById(11)?.password)
}
@Test
fun testUserChangeLangueVoAtVf(){
services.CreateUser("username9", "email9", "passwd")
services.ChangeLangage(11)
assertEquals(SrcLanguage.vf, services.getUserById(11)?.langage)
}
@Test
fun testUserChangeLangueVfAtVo(){
services.CreateUser("username10", "email10", "passwd")
services.ChangeLangage(11)
services.ChangeLangage(11)
assertEquals(SrcLanguage.vo, services.getUserById(11)?.langage)
}
@Test
fun testUserExist_OK(){
assertTrue(services.isUsernameExist("dev"))
}
@Test
fun testUserNotExist_OK(){
assertFalse(services.isUsernameExist("devNotExist"))
}
@Test
fun testEmailExist_OK(){
assertTrue(services.isEmailExist("testeur@example.com"))
}
@Test
fun testEmailNotExist_OK(){
assertFalse(services.isUsernameExist("email@example.com"))
}
@Test
fun TestUserValidLogin_OK() {
val navControllerMock: (Int) -> Unit = {}
val initialiserCurrentUserMock: (Int) -> Unit = {}
assertTrue(services.validLogin("dev", "1234", navControllerMock, initialiserCurrentUserMock))
}
@Test
fun TestUserValidLoginBadUsername() {
val navControllerMock: (Int) -> Unit = {}
val initialiserCurrentUserMock: (Int) -> Unit = {}
assertFalse(services.validLogin("devBad", "1234", navControllerMock, initialiserCurrentUserMock))
}
@Test
fun TestUserValidLoginBadPassword() {
val navControllerMock: (Int) -> Unit = {}
val initialiserCurrentUserMock: (Int) -> Unit = {}
assertFalse(services.validLogin("dev", "5678", navControllerMock, initialiserCurrentUserMock))
}
}
Loading…
Cancel
Save