diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..c5871cc
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/android/app/src/test/java/fr/iut/sciencequest/viewModel/pendu/PenduJouerActionTest.kt b/android/app/src/test/java/fr/iut/sciencequest/viewModel/pendu/PenduJouerActionTest.kt
new file mode 100644
index 0000000..10d6120
--- /dev/null
+++ b/android/app/src/test/java/fr/iut/sciencequest/viewModel/pendu/PenduJouerActionTest.kt
@@ -0,0 +1,52 @@
+package fr.iut.sciencequest.viewModel.pendu
+
+import fr.iut.sciencequest.model.dto.extensions.ToModel
+import fr.iut.sciencequest.model.repositories.scientifique.ScientifiqueStubRepostory
+import fr.iut.sciencequest.stub.StubScientifique1
+import fr.iut.sciencequest.testRules.MainDispatcherRule
+import fr.iut.sciencequest.viewModels.PenduViewModel
+import org.junit.Assert
+import org.junit.Rule
+import org.junit.Test
+import org.junit.runner.RunWith
+import org.junit.runners.Parameterized
+
+@RunWith(Parameterized::class)
+class PenduJouerActionTest (
+ private val playedLetter: Char,
+ private val expectedLetter: Char,
+ private val expectedVieRestante: Int,
+ private val expectedResult: Boolean
+){
+
+ @get:Rule
+ val mainDispatcherRule = MainDispatcherRule()
+
+ @Test
+ fun TestGoodActionPutsLetter() {
+ val scientifique = StubScientifique1.ToModel()
+ val repo = ScientifiqueStubRepostory()
+ repo.setScientifiqueStub(scientifique)
+ val vm = PenduViewModel(repo)
+ vm.InitPartie()
+ vm.PlayAction(playedLetter)
+ Assert.assertEquals(expectedResult, vm.uiState.value.motATrou.contains(expectedLetter))
+ Assert.assertEquals(expectedVieRestante, vm.uiState.value.nbViesRestantes)
+ }
+
+ companion object {
+ @JvmStatic
+ @Parameterized.Parameters(
+ name = "Quand joueur joue {0}, le jeu est censé trouvé que {1} est {2} "
+ )
+ fun getTestActionData(): Iterable> {
+ return arrayListOf(
+ arrayOf('e','e',10,true),
+ arrayOf('q','q',9,false),
+ arrayOf('E','e',10,true),
+ arrayOf('j','J',10,true),
+ arrayOf('J','J',10,true),
+ )
+ }
+ }
+}
\ No newline at end of file
diff --git a/android/app/src/test/java/fr/iut/sciencequest/viewModel/PenduViewModelTest.kt b/android/app/src/test/java/fr/iut/sciencequest/viewModel/pendu/PenduViewModelTest.kt
similarity index 52%
rename from android/app/src/test/java/fr/iut/sciencequest/viewModel/PenduViewModelTest.kt
rename to android/app/src/test/java/fr/iut/sciencequest/viewModel/pendu/PenduViewModelTest.kt
index fbcdba7..dd76c6b 100644
--- a/android/app/src/test/java/fr/iut/sciencequest/viewModel/PenduViewModelTest.kt
+++ b/android/app/src/test/java/fr/iut/sciencequest/viewModel/pendu/PenduViewModelTest.kt
@@ -1,7 +1,6 @@
-package fr.iut.sciencequest.viewModel
+package fr.iut.sciencequest.viewModel.pendu
import fr.iut.sciencequest.model.dto.extensions.ToModel
-import fr.iut.sciencequest.model.metier.Scientifique
import fr.iut.sciencequest.model.repositories.scientifique.ScientifiqueStubRepostory
import fr.iut.sciencequest.stub.StubScientifique1
import fr.iut.sciencequest.testRules.MainDispatcherRule
@@ -9,8 +8,6 @@ import fr.iut.sciencequest.viewModels.PenduViewModel
import org.junit.Assert
import org.junit.Rule
import org.junit.Test
-import org.junit.runner.RunWith
-import org.junit.runners.Parameterized
class PenduViewModelTest {
@get:Rule
@@ -29,17 +26,6 @@ class PenduViewModelTest {
Assert.assertEquals(trou, vm.uiState.value.motATrou)
}
- @Test
- fun TestGoodActionPutsLetter() {
- val scientifique = StubScientifique1.ToModel()
- val repo = ScientifiqueStubRepostory()
- repo.setScientifiqueStub(scientifique)
- val vm = PenduViewModel(repo)
- vm.InitPartie()
- vm.PlayAction('e')
- Assert.assertEquals(true, vm.uiState.value.motATrou.contains('e'))
- }
-
@Test
fun TestWrongActionDoesNotPutLetterAndDamage() {
val scientifique = StubScientifique1.ToModel()
@@ -51,26 +37,4 @@ class PenduViewModelTest {
Assert.assertEquals(false, vm.uiState.value.motATrou.contains('q'))
Assert.assertEquals(9,vm.uiState.value.nbViesRestantes)
}
-
- @Test
- fun TestGoodActionWithUppercaseLetter() {
- val scientifique = StubScientifique1.ToModel()
- val repo = ScientifiqueStubRepostory()
- repo.setScientifiqueStub(scientifique)
- val vm = PenduViewModel(repo)
- vm.InitPartie()
- vm.PlayAction('E')
- Assert.assertEquals(true, vm.uiState.value.motATrou.contains('e'))
- }
-
- @Test
- fun TestGoodActionWithLowercaseOnOriginalyUppercase() {
- val scientifique = StubScientifique1.ToModel()
- val repo = ScientifiqueStubRepostory()
- repo.setScientifiqueStub(scientifique)
- val vm = PenduViewModel(repo)
- vm.InitPartie()
- vm.PlayAction('j')
- Assert.assertEquals(true, vm.uiState.value.motATrou.contains('j'))
- }
}
\ No newline at end of file