package de.dhbw.humbuch.view; import static de.dhbw.humbuch.test.TestUtils.randomUser; import static org.hamcrest.CoreMatchers.notNullValue; import static org.junit.Assert.assertThat; import static org.junit.Assume.assumeThat; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.vaadin.navigator.View; import de.dhbw.humbuch.model.DAO; import de.dhbw.humbuch.model.entity.TestPersistenceInitialiser; import de.dhbw.humbuch.model.entity.User; import de.dhbw.humbuch.viewmodel.Properties; @Ignore("Base test") public class BaseTest { private final static Logger LOG = LoggerFactory.getLogger(BaseTest.class); private Object viewObject; private View view; private ViewInformation viewInformation; private Properties properties; private DAO<User> daoUser; public void setInjected(MVVMConfig mvvmConfig, TestPersistenceInitialiser testPersistenceInitialiser, Object view, Properties properties, DAO<User> daoUser) { this.properties = properties; this.daoUser = daoUser; setView(view); } private void setView(Object view) { this.viewObject = view; StringBuilder logStringBuilder = new StringBuilder("view: "); if (view instanceof View) { this.view = (View) view; logStringBuilder.append(View.class.getName()).append(" "); } if (view instanceof ViewInformation) { this.viewInformation = (ViewInformation) view; logStringBuilder.append(ViewInformation.class.getName()); } LOG.info(logStringBuilder.toString()); } @Before public void setLoggedInUser() { properties.currentUser.set(daoUser.insert(randomUser())); } @Test public void testInstantiation() { assertThat(viewObject, notNullValue()); } @Test public void testEnter() { assumeThat(view, notNullValue()); view.enter(null); } @Test public void testTitleNotNull() { assumeThat(viewInformation, notNullValue()); assertThat(viewInformation.getTitle(), notNullValue()); } }