@@ -12,6 +12,7 @@ import io.reactivex.schedulers.TestScheduler
1212import org.junit.Before
1313import org.junit.Test
1414import org.mockito.ArgumentMatchers
15+ import org.mockito.ArgumentMatchers.eq
1516import org.mockito.Mock
1617import org.mockito.Mockito
1718import org.mockito.Mockito.verify
@@ -38,6 +39,12 @@ class UploadMediaPresenterTest {
3839 @Mock
3940 private var uploadItem: UploadModel .UploadItem ? = null
4041
42+ @Mock
43+ private var title: Title ? = null
44+
45+ @Mock
46+ private var descriptions: List <Description >? = null
47+
4148 private var testObservableUploadItem: Observable <UploadModel .UploadItem >? = null
4249 private var testSingleImageResult: Single <Int >? = null
4350
@@ -107,4 +114,75 @@ class UploadMediaPresenterTest {
107114
108115 }
109116
117+ /* *
118+ * Test fetch previous image title when there was one
119+ */
120+ @Test
121+ fun fetchPreviousImageAndTitleTestPositive (){
122+ Mockito .`when `(repository?.getPreviousUploadItem(ArgumentMatchers .anyInt())).thenReturn(uploadItem)
123+ Mockito .`when `(uploadItem?.descriptions).thenReturn(descriptions)
124+ Mockito .`when `(uploadItem?.title).thenReturn(title)
125+ Mockito .`when `(title?.titleText).thenReturn(ArgumentMatchers .anyString())
126+
127+ uploadMediaPresenter?.fetchPreviousTitleAndDescription(0 )
128+ verify(view)?.setTitleAndDescription(ArgumentMatchers .anyString(),ArgumentMatchers .any())
129+ }
130+
131+ /* *
132+ * Test fetch previous image title when there was none
133+ */
134+ @Test
135+ fun fetchPreviousImageAndTitleTestNegative (){
136+ Mockito .`when `(repository?.getPreviousUploadItem(ArgumentMatchers .anyInt())).thenReturn(null )
137+ uploadMediaPresenter?.fetchPreviousTitleAndDescription(0 )
138+ verify(view)?.showMessage(ArgumentMatchers .anyInt(),ArgumentMatchers .anyInt())
139+ }
140+
141+ /* *
142+ * Test bad image invalid location
143+ */
144+ @Test
145+ fun handleBadImageBaseTestInvalidLocation (){
146+ uploadMediaPresenter?.handleBadImage(8 )
147+ verify(repository)?.saveValue(ArgumentMatchers .anyString(),eq(false ))
148+ verify(view)?.showBadImagePopup(8 )
149+ }
150+
151+ /* *
152+ * Test bad image empty title
153+ */
154+ @Test
155+ fun handleBadImageBaseTestEmptyTitle (){
156+ uploadMediaPresenter?.handleBadImage(- 3 )
157+ verify(view)?.showMessage(ArgumentMatchers .anyInt(),ArgumentMatchers .anyInt())
158+ }
159+
160+ /* *
161+ * Teste show file already exists
162+ */
163+ @Test
164+ fun handleBadImageBaseTestFileNameExists (){
165+ uploadMediaPresenter?.handleBadImage(- 4 )
166+ verify(view)?.showDuplicatePicturePopup()
167+ }
168+
169+
170+ /* *
171+ * Test show SimilarImageFragment
172+ */
173+ @Test
174+ fun showSimilarImageFragmentTest (){
175+ uploadMediaPresenter?.showSimilarImageFragment(ArgumentMatchers .anyString(),ArgumentMatchers .anyString())
176+ verify(view)?.showSimilarImageFragment(ArgumentMatchers .anyString(),ArgumentMatchers .anyString())
177+ }
178+
179+ /* *
180+ * Test set upload item
181+ */
182+ @Test
183+ fun setUploadItemTest (){
184+ uploadMediaPresenter?.setUploadItem(0 ,uploadItem)
185+ verify(repository)?.updateUploadItem(0 ,uploadItem)
186+ }
187+
110188}
0 commit comments