parent
a79b56fe5a
commit
437d8ce947
@ -0,0 +1,31 @@ |
|||||||
|
package org.airsonic.player.service; |
||||||
|
|
||||||
|
import org.airsonic.player.domain.MediaLibraryStatistics; |
||||||
|
import org.airsonic.player.service.search.IndexManager; |
||||||
|
import org.junit.Test; |
||||||
|
import org.junit.runner.RunWith; |
||||||
|
import org.mockito.InjectMocks; |
||||||
|
import org.mockito.Mock; |
||||||
|
import org.mockito.runners.MockitoJUnitRunner; |
||||||
|
|
||||||
|
import static org.junit.Assert.*; |
||||||
|
import static org.mockito.Mockito.when; |
||||||
|
|
||||||
|
@RunWith(MockitoJUnitRunner.class) |
||||||
|
public class MediaScannerServiceUnitTest { |
||||||
|
|
||||||
|
@InjectMocks |
||||||
|
MediaScannerService mediaScannerService; |
||||||
|
|
||||||
|
@Mock |
||||||
|
IndexManager indexManager; |
||||||
|
|
||||||
|
@Test |
||||||
|
public void neverScanned() { |
||||||
|
when(indexManager.getStatistics()).thenReturn(null); |
||||||
|
assertTrue(mediaScannerService.neverScanned()); |
||||||
|
|
||||||
|
when(indexManager.getStatistics()).thenReturn(new MediaLibraryStatistics()); |
||||||
|
assertFalse(mediaScannerService.neverScanned()); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,88 @@ |
|||||||
|
package org.airsonic.player.util; |
||||||
|
|
||||||
|
import org.airsonic.player.domain.MediaLibraryStatistics; |
||||||
|
import org.junit.Test; |
||||||
|
|
||||||
|
import java.util.Date; |
||||||
|
import java.util.HashMap; |
||||||
|
import java.util.Map; |
||||||
|
|
||||||
|
import static org.junit.Assert.*; |
||||||
|
|
||||||
|
public class UtilTest { |
||||||
|
|
||||||
|
@Test |
||||||
|
public void objectToStringMapNull() { |
||||||
|
MediaLibraryStatistics statistics = null; |
||||||
|
Map<String, String> stringStringMap = Util.objectToStringMap(statistics); |
||||||
|
assertNull(stringStringMap); |
||||||
|
} |
||||||
|
|
||||||
|
@Test |
||||||
|
public void objectToStringMap() { |
||||||
|
Date date = new Date(1568350960725L); |
||||||
|
MediaLibraryStatistics statistics = new MediaLibraryStatistics(date); |
||||||
|
statistics.incrementAlbums(5); |
||||||
|
statistics.incrementSongs(4); |
||||||
|
statistics.incrementArtists(910823); |
||||||
|
statistics.incrementTotalDurationInSeconds(30); |
||||||
|
statistics.incrementTotalLengthInBytes(2930491082L); |
||||||
|
Map<String, String> stringStringMap = Util.objectToStringMap(statistics); |
||||||
|
assertEquals("5", stringStringMap.get("albumCount")); |
||||||
|
assertEquals("4", stringStringMap.get("songCount")); |
||||||
|
assertEquals("910823", stringStringMap.get("artistCount")); |
||||||
|
assertEquals("30", stringStringMap.get("totalDurationInSeconds")); |
||||||
|
assertEquals("2930491082", stringStringMap.get("totalLengthInBytes")); |
||||||
|
assertEquals("1568350960725", stringStringMap.get("scanDate")); |
||||||
|
} |
||||||
|
|
||||||
|
@Test |
||||||
|
public void stringMapToObject() { |
||||||
|
Map<String, String> stringStringMap = new HashMap<>(); |
||||||
|
stringStringMap.put("albumCount", "5"); |
||||||
|
stringStringMap.put("songCount", "4"); |
||||||
|
stringStringMap.put("artistCount", "910823"); |
||||||
|
stringStringMap.put("totalDurationInSeconds", "30"); |
||||||
|
stringStringMap.put("totalLengthInBytes", "2930491082"); |
||||||
|
stringStringMap.put("scanDate", "1568350960725"); |
||||||
|
MediaLibraryStatistics statistics = Util.stringMapToObject(MediaLibraryStatistics.class, stringStringMap); |
||||||
|
assertEquals(new Integer(5), statistics.getAlbumCount()); |
||||||
|
assertEquals(new Integer(4), statistics.getSongCount()); |
||||||
|
assertEquals(new Integer(910823), statistics.getArtistCount()); |
||||||
|
assertEquals(new Long(30L), statistics.getTotalDurationInSeconds()); |
||||||
|
assertEquals(new Long(2930491082L), statistics.getTotalLengthInBytes()); |
||||||
|
assertEquals(new Date(1568350960725L), statistics.getScanDate()); |
||||||
|
} |
||||||
|
|
||||||
|
@Test |
||||||
|
public void stringMapToObjectWithExtraneousData() { |
||||||
|
Map<String, String> stringStringMap = new HashMap<>(); |
||||||
|
stringStringMap.put("albumCount", "5"); |
||||||
|
stringStringMap.put("songCount", "4"); |
||||||
|
stringStringMap.put("artistCount", "910823"); |
||||||
|
stringStringMap.put("totalDurationInSeconds", "30"); |
||||||
|
stringStringMap.put("totalLengthInBytes", "2930491082"); |
||||||
|
stringStringMap.put("scanDate", "1568350960725"); |
||||||
|
stringStringMap.put("extraneousData", "nothingHereToLookAt"); |
||||||
|
MediaLibraryStatistics statistics = Util.stringMapToObject(MediaLibraryStatistics.class, stringStringMap); |
||||||
|
assertEquals(new Integer(5), statistics.getAlbumCount()); |
||||||
|
assertEquals(new Integer(4), statistics.getSongCount()); |
||||||
|
assertEquals(new Integer(910823), statistics.getArtistCount()); |
||||||
|
assertEquals(new Long(30L), statistics.getTotalDurationInSeconds()); |
||||||
|
assertEquals(new Long(2930491082L), statistics.getTotalLengthInBytes()); |
||||||
|
assertEquals(new Date(1568350960725L), statistics.getScanDate()); |
||||||
|
} |
||||||
|
|
||||||
|
public void stringMapToObjectWithNoData() { |
||||||
|
Map<String, String> stringStringMap = new HashMap<>(); |
||||||
|
MediaLibraryStatistics statistics = Util.stringMapToObject(MediaLibraryStatistics.class, stringStringMap); |
||||||
|
assertNotNull(statistics); |
||||||
|
} |
||||||
|
|
||||||
|
@Test(expected = IllegalArgumentException.class) |
||||||
|
public void stringMapToValidObjectWithNoData() { |
||||||
|
Map<String, String> stringStringMap = new HashMap<>(); |
||||||
|
MediaLibraryStatistics statistics = Util.stringMapToValidObject(MediaLibraryStatistics.class, stringStringMap); |
||||||
|
} |
||||||
|
|
||||||
|
} |
Loading…
Reference in new issue