package pl.touk.tola.spring.mvc; import org.junit.Test; import static org.junit.Assert.*; public class ConcurrentFileRepositoryTest { private static class Convertable implements ModelToByteArrayConverter { byte[] array; public Convertable(byte b) { array = new byte[1]; array[0] = b; } public Convertable(byte[] array) { this.array = array; } public byte[] convert() { return array; } } @Test(expected = IllegalArgumentException.class) public void testSaveFile1() { FileRepository fr = new ConcurrentFileRepository(); fr.saveFile(null); } @Test public void testSaveFile3() { FileRepository fr = new ConcurrentFileRepository(); Long id1 = fr.saveFile(new Convertable(null)); assertTrue(id1 > 0); assertTrue(fr.getFile(id1) == null); Long id2 = fr.saveFile(new Convertable((byte) 10)); assertTrue(id2 > 0); assertTrue(fr.getFile(id1) == null); assertTrue(fr.getFile(id2).length == 1 && fr.getFile(id2)[0] == 10); Long id3 = fr.saveFile(new Convertable((byte) 5)); assertTrue(id3 > 0); assertTrue(fr.getFile(id1) == null); assertTrue(fr.getFile(id2).length == 1 && fr.getFile(id2)[0] == 10); assertTrue(fr.getFile(id3).length == 1 && fr.getFile(id3)[0] == 5); } @Test(expected = IllegalArgumentException.class) public void testGetFile1() { FileRepository fr = new ConcurrentFileRepository(); fr.getFile(null); } @Test(expected = RuntimeException.class) public void testGetFile2() { FileRepository fr = new ConcurrentFileRepository(); fr.getFile(1L); } }