mirror of
				https://github.com/commons-app/apps-android-commons.git
				synced 2025-10-31 06:43:56 +01:00 
			
		
		
		
	Refactoring to extract GpsCategoryModel and ensure single-responsibility-principle is maintained in CategoryApi.
This commit is contained in:
		
							parent
							
								
									c7948c817b
								
							
						
					
					
						commit
						a66a0e8ca0
					
				
					 18 changed files with 542 additions and 192 deletions
				
			
		|  | @ -0,0 +1,77 @@ | |||
| package fr.free.nrw.commons.upload | ||||
| 
 | ||||
| import org.junit.Assert.* | ||||
| import org.junit.Before | ||||
| import org.junit.Test | ||||
| 
 | ||||
| class GpsCategoryModelTest { | ||||
| 
 | ||||
|     private lateinit var testObject : GpsCategoryModel | ||||
| 
 | ||||
|     @Before | ||||
|     fun setUp() { | ||||
|         testObject = GpsCategoryModel() | ||||
|     } | ||||
| 
 | ||||
|     @Test | ||||
|     fun initiallyTheModelIsEmpty() { | ||||
|         assertFalse(testObject.gpsCatExists) | ||||
|         assertTrue(testObject.categoryList.isEmpty()) | ||||
|     } | ||||
| 
 | ||||
|     @Test | ||||
|     fun addingCategoriesToTheModel() { | ||||
|         testObject.add("one") | ||||
|         assertTrue(testObject.gpsCatExists) | ||||
|         assertFalse(testObject.categoryList.isEmpty()) | ||||
|         assertEquals(listOf("one"), testObject.categoryList) | ||||
|     } | ||||
| 
 | ||||
|     @Test | ||||
|     fun duplicatesAreIgnored() { | ||||
|         testObject.add("one") | ||||
|         testObject.add("one") | ||||
|         assertEquals(listOf("one"), testObject.categoryList) | ||||
|     } | ||||
| 
 | ||||
|     @Test | ||||
|     fun modelProtectsAgainstExternalModification() { | ||||
|         testObject.add("one") | ||||
| 
 | ||||
|         val list = testObject.categoryList | ||||
|         list.add("two") | ||||
| 
 | ||||
|         assertEquals(listOf("one"), testObject.categoryList) | ||||
|     } | ||||
| 
 | ||||
|     @Test | ||||
|     fun clearingTheModel() { | ||||
|         testObject.add("one") | ||||
| 
 | ||||
|         testObject.clear() | ||||
|         assertFalse(testObject.gpsCatExists) | ||||
|         assertTrue(testObject.categoryList.isEmpty()) | ||||
| 
 | ||||
|         testObject.add("two") | ||||
|         assertEquals(listOf("two"), testObject.categoryList) | ||||
|     } | ||||
| 
 | ||||
|     @Test | ||||
|     fun settingTheListHandlesNull() { | ||||
|         testObject.add("one") | ||||
| 
 | ||||
|         testObject.categoryList = null | ||||
| 
 | ||||
|         assertFalse(testObject.gpsCatExists) | ||||
|         assertTrue(testObject.categoryList.isEmpty()) | ||||
|     } | ||||
| 
 | ||||
|     @Test | ||||
|     fun setttingTheListOverwritesExistingValues() { | ||||
|         testObject.add("one") | ||||
| 
 | ||||
|         testObject.categoryList = listOf("two") | ||||
| 
 | ||||
|         assertEquals(listOf("two"), testObject.categoryList) | ||||
|     } | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Paul Hawke
						Paul Hawke