Skip to content

Commit 63e5a67

Browse files
Gabi Scardine SilvaGabi Scardine Silva
Gabi Scardine Silva
authored and
Gabi Scardine Silva
committed
Fix tests
1 parent cade325 commit 63e5a67

File tree

4 files changed

+33
-47
lines changed

4 files changed

+33
-47
lines changed

app/src/main/java/io/intrepid/contest/models/Category.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import android.os.Parcel
44
import android.os.Parcelable
55
import java.util.*
66

7-
class Category : Parcelable {
7+
open class Category : Parcelable {
88
val id: UUID? = null
99
var name: String? = null
1010
var description: String? = null

app/src/main/java/io/intrepid/contest/models/Contest.kt

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,6 @@ open class Contest {
1515
var lastUpdatedDate: Date? = null
1616
@SerializedName("ended_at")
1717
var endedDate: Date? = null
18-
set(value) {
19-
this.endedDate = endedDate
20-
}
2118
var title: String? = null
2219
var description: String? = null
2320
@SerializedName("scoring_categories")
@@ -42,7 +39,7 @@ open class Contest {
4239
" /n Ended Data " + endedDate
4340
}
4441

45-
class Builder {
42+
open class Builder {
4643
var categories: List<Category> = ArrayList()
4744
var title: String? = null
4845
var description: String? = null

app/src/test/java/io/intrepid/contest/screens/contestcreation/NewContestPresenterTest.kt

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,15 +19,12 @@ import org.mockito.Mockito.verify
1919
import java.util.*
2020

2121
class NewContestPresenterTest : BasePresenterTest<NewContestPresenter>() {
22-
2322
@Mock
2423
private lateinit var mockView: View
2524
@Mock
2625
private lateinit var mockChildFragment: ContestCreationFragment
2726
@Mock
2827
private lateinit var mockReviewContestFragment: ReviewContestFragment
29-
@Mock
30-
private lateinit var mockContestBuilder: Contest.Builder
3128

3229
private lateinit var categories: MutableList<Category>
3330

@@ -38,7 +35,7 @@ class NewContestPresenterTest : BasePresenterTest<NewContestPresenter>() {
3835
categories.add(Category("TEST TITLE " + i, "TEST DESCRIPTION " + i))
3936
}
4037
presenter = NewContestPresenter(mockView, testConfiguration)
41-
presenter.contest = mockContestBuilder
38+
presenter.contest = Contest.Builder()
4239
presenter.onViewCreated()
4340
}
4441

@@ -104,7 +101,7 @@ class NewContestPresenterTest : BasePresenterTest<NewContestPresenter>() {
104101

105102
@Test
106103
fun onEditContestCaegoryShouldTriggerViewToUpdateCategory() {
107-
`when`(mockContestBuilder.categories).thenReturn(categories)
104+
presenter.contest.categories = categories
108105
presenter.onContestEditEntered(0, "New Name", "New Description")
109106
verify<View>(mockView).showUpdatedCategories()
110107
}

app/src/test/java/io/intrepid/contest/screens/contestcreation/categorieslist/CategoriesListPresenterTest.kt

Lines changed: 29 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import org.mockito.ArgumentMatchers.any
1111
import org.mockito.ArgumentMatchers.anyInt
1212
import org.mockito.ArgumentMatchers.argThat
1313
import org.mockito.Mock
14-
import org.mockito.Mockito.`when`
1514
import org.mockito.Mockito.never
1615
import org.mockito.Mockito.times
1716
import org.mockito.Mockito.verify
@@ -20,27 +19,21 @@ import java.util.*
2019
class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>() {
2120
@Mock
2221
private lateinit var mockView: View
23-
@Mock
24-
private lateinit var mockContestBuilder: Contest.Builder
22+
23+
private lateinit var contestBuilder: Contest.Builder
2524

2625
@Before
2726
fun setup() {
28-
`when`(mockContestBuilder.categories).thenReturn(makeCategories())
29-
presenter = CategoriesListPresenter(mockView, testConfiguration, mockContestBuilder)
30-
}
31-
32-
private fun makeCategories(): List<Category> {
33-
val categories = ArrayList<Category>()
34-
for (i in 0..4) {
35-
categories.add(Category("Category " + i, "Category description " + i))
27+
contestBuilder = Contest.Builder().apply {
28+
categories = makeCategories()
3629
}
37-
return categories
30+
presenter = CategoriesListPresenter(mockView, testConfiguration, contestBuilder)
3831
}
3932

4033
@Test
4134
fun presenterShouldAddDefaultCategoryIfCategoriesIsEmptyOrNull() {
42-
`when`(mockContestBuilder.categories).thenReturn(ArrayList<Category>())
43-
presenter = CategoriesListPresenter(mockView, testConfiguration, mockContestBuilder)
35+
contestBuilder.categories = mutableListOf()
36+
presenter = CategoriesListPresenter(mockView, testConfiguration, contestBuilder)
4437
verify<View>(mockView).getDefaultCategory(anyInt(), anyInt())
4538
}
4639

@@ -52,14 +45,15 @@ class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>()
5245

5346
@Test
5447
fun onViewBoundShouldDisableNextWhenCategoriesIsEmpty() {
55-
`when`(mockContestBuilder.categories).thenReturn(ArrayList<Category>())
48+
contestBuilder.categories = mutableListOf()
5649
presenter.onViewBound()
5750
verify<View>(mockView).setNextEnabled(false)
5851
}
5952

6053
@Test
6154
fun onDeleteClickedShouldNeverDisableWhenCategoriesIsNotEmpty() {
62-
val categories = mockContestBuilder.categories
55+
val categories = contestBuilder.categories
56+
6357
var i = 0
6458
while (i < (categories.size - 1)) {
6559
presenter.onDeleteClicked(categories[i++])
@@ -71,7 +65,7 @@ class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>()
7165

7266
@Test
7367
fun onDeleteClickedShouldDisableNextWhenCategoriesIsEmpty() {
74-
`when`(mockContestBuilder.categories).thenReturn(ArrayList<Category>())
68+
contestBuilder.categories = mutableListOf()
7569
val singleCategory = Category("Single Category", "TEST")
7670

7771
presenter.onDeleteClicked(singleCategory)
@@ -94,7 +88,7 @@ class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>()
9488

9589
@Test
9690
fun onViewBoundShouldTriggerViewToDisableNextWhenCategoriesIsEmpty() {
97-
`when`(mockContestBuilder.categories).thenReturn(ArrayList<Category>())
91+
contestBuilder.categories = mutableListOf()
9892
presenter.onViewBound()
9993
verify<View>(mockView).setNextEnabled(false)
10094
}
@@ -108,7 +102,7 @@ class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>()
108102
@Test
109103
fun displayCategoriesShouldShowDefaultCategoryWhenThereAreNoCategories() {
110104
val categories = listOf(Category("Default name", "Default description"))
111-
`when`(mockContestBuilder.categories).thenReturn(categories)
105+
contestBuilder.categories = categories
112106

113107
presenter.displayCategories()
114108

@@ -117,12 +111,8 @@ class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>()
117111

118112
@Test
119113
fun displayCategoriesShouldShowCategoriesWhenThereAreCategories() {
120-
val categories = makeCategories()
121-
`when`(mockContestBuilder.categories).thenReturn(categories)
122-
123114
presenter.displayCategories()
124-
125-
verify<View>(mockView).showCategories(categories)
115+
verify<View>(mockView).showCategories(contestBuilder.categories)
126116
}
127117

128118
@Test
@@ -140,7 +130,7 @@ class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>()
140130
@Test
141131
fun onCategoryClickedShouldTriggerViewToShowEditPage() {
142132
val categories = listOf(Category("Test", "Tester"))
143-
`when`(mockContestBuilder.categories).thenReturn(categories)
133+
contestBuilder.categories = categories
144134

145135
presenter.onCategoryClicked(categories[0])
146136

@@ -149,30 +139,32 @@ class CategoriesListPresenterTest : BasePresenterTest<CategoriesListPresenter>()
149139

150140
@Test
151141
fun onDeleteClickedShouldTriggerViewToLoseCategory() {
152-
val initialSize = mockContestBuilder.categories.size
153-
presenter.onDeleteClicked(mockContestBuilder.categories[0])
142+
val initialSize = contestBuilder.categories.size
143+
presenter.onDeleteClicked(contestBuilder.categories[0])
154144
verify<View>(mockView).showCategories(argThat<List<Category>> { argument -> argument.size == initialSize - 1 })
155145
}
156146

157147
@Test
158148
fun onCategoryMovedShouldUpdateCategoriesListWhenItemMovedUp() {
159-
val categories = makeCategories()
160-
`when`(mockContestBuilder.categories).thenReturn(categories)
161-
162149
presenter.onCategoryMoved(1, 4)
163150

164-
assertTrue(categories[4].name == "Category 1")
165-
assertTrue(categories[1].name == "Category 2")
151+
assertTrue(contestBuilder.categories[4].name == "Category 1")
152+
assertTrue(contestBuilder.categories[1].name == "Category 2")
166153
}
167154

168155
@Test
169156
fun onCategoryMovedShouldUpdateCategoriesListWhenItemMovedDown() {
170-
val categories = makeCategories()
171-
`when`(mockContestBuilder.categories).thenReturn(categories)
172-
173157
presenter.onCategoryMoved(4, 1)
174158

175-
assertTrue(categories[1].name == "Category 4")
176-
assertTrue(categories[4].name == "Category 3")
159+
assertTrue(contestBuilder.categories[1].name == "Category 4")
160+
assertTrue(contestBuilder.categories[4].name == "Category 3")
161+
}
162+
163+
private fun makeCategories(): List<Category> {
164+
val categories = ArrayList<Category>()
165+
for (i in 0..4) {
166+
categories.add(Category("Category " + i, "Category description " + i))
167+
}
168+
return categories
177169
}
178170
}

0 commit comments

Comments
 (0)