package uk.org.squirm3.model.level; import java.util.Collection; import java.util.List; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; import org.junit.runners.Parameterized.Parameters; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.google.common.collect.Lists; @RunWith(Parameterized.class) public class LevelsIntegrationTest { private final Level level; public LevelsIntegrationTest(final Level level) { this.level = level; } @Parameters public static Collection<Object[]> parameters() { final ApplicationContext applicationContext = new ClassPathXmlApplicationContext( "engine-context.xml"); @SuppressWarnings("unchecked") final List<Level> levels = applicationContext.getBean("levels", List.class); final Collection<Object[]> parameters = Lists.newArrayList(); for (final Level level : levels) { parameters.add(new Object[]{level}); } return parameters; } @Test public void shouldConstructSucessfullyAllLevels() { level.construct(); level.getTitle(); level.getChallenge(); level.getHint(); } }