+ @Test
+ public void albumImageIsGeneratedRandomly() {
+ Image image = mock(Image.class);
+ List<Image> albumImages = Arrays.asList(mock(Image.class), image);
+ when(album.getImages()).thenReturn(albumImages);
+ int matchedImage = 0;
+ for (int i = 0; i < 1000; i++) {
+ Image randomImage = (Image) albumAccessor.get(null, album, "albumImage");
+ if (randomImage == image) {
+ matchedImage++;
+ }
+ }
+ assertThat(matchedImage, allOf(greaterThanOrEqualTo(250), lessThanOrEqualTo(750)));
+ }
+
+ @Test
+ public void albumImageIsNullIfThereAreNoImagesInAnAlbum() {
+ when(album.getImages()).thenReturn(Collections.<Image>emptyList());
+ assertThat(albumAccessor.get(null, album, "albumImage"), nullValue());
+ }
+