<NME> LazyInitializedListTest.java
<BEF> package cgeo.geocaching.utils;

import java.util.ArrayList;
import java.util.List;

import org.junit.Test;
import static org.assertj.core.api.Java6Assertions.assertThat;


    private static final class MockedLazyInitializedList extends LazyInitializedList<String> {
        @Override
        protected List<String> loadFromDatabase() {
            return new ArrayList<String>();
        }
    }
    }

    @Test
    public void testAccess() {
        final LazyInitializedList<String> list = new MockedLazyInitializedList();
        assertThat(list).isEmpty();
        list.add("Test");
        assertThat(list).isNotEmpty();
        assertThat(list).hasSize(1);
        int iterations = 0;
        for (final String element : list) {
            assertThat(element).isEqualTo("Test");
            iterations++;
        }
        assertThat(iterations).isEqualTo(1);
    }

}

<MSG> Use a standard Callable interface for lazy initialized lists

<DFF> @@ -9,7 +9,7 @@ public class LazyInitializedListTest extends TestCase {
 
     private static final class MockedLazyInitializedList extends LazyInitializedList<String> {
         @Override
-        protected List<String> loadFromDatabase() {
+        public List<String> call() {
             return new ArrayList<String>();
         }
     }

Use a standard Callable interface for lazy initialized lists