package cgeo.geocaching.utils;
import static org.assertj.core.api.Java6Assertions.assertThat;
import java.util.ArrayList;
import java.util.List;
import junit.framework.TestCase;
public class LazyInitializedListTest extends TestCase {
private static final class MockedLazyInitializedList extends LazyInitializedList<String> {
@Override
public List<String> call() {
return new ArrayList<>();
}
}
public static 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);
}
}