initial import
This commit is contained in:
58
modules/test/com/cmobile/unifiedtms/TmsTestContainer.java
Normal file
58
modules/test/com/cmobile/unifiedtms/TmsTestContainer.java
Normal file
@ -0,0 +1,58 @@
|
||||
package com.cmobile.unifiedtms;
|
||||
|
||||
import com.haulmont.cuba.testsupport.TestContainer;
|
||||
import org.junit.jupiter.api.extension.ExtensionContext;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
|
||||
public class TmsTestContainer extends TestContainer {
|
||||
|
||||
public TmsTestContainer() {
|
||||
super();
|
||||
//noinspection ArraysAsListWithZeroOrOneArgument
|
||||
appComponents = new ArrayList<>(Arrays.asList(
|
||||
// list add-ons here: "com.haulmont.reports", "com.haulmont.addon.bproc", etc.
|
||||
"com.haulmont.cuba"
|
||||
));
|
||||
appPropertiesFiles = Arrays.asList(
|
||||
// List the files defined in your web.xml
|
||||
// in appPropertiesConfig context parameter of the core module
|
||||
"com/cmobile/unifiedtms/app.properties",
|
||||
// Add this file which is located in CUBA and defines some properties
|
||||
// specifically for test environment. You can replace it with your own
|
||||
// or add another one in the end.
|
||||
"com/cmobile/unifiedtms/test-app.properties");
|
||||
autoConfigureDataSource();
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static class Common extends TmsTestContainer {
|
||||
|
||||
public static final TmsTestContainer.Common INSTANCE = new TmsTestContainer.Common();
|
||||
|
||||
private static volatile boolean initialized;
|
||||
|
||||
private Common() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void beforeAll(ExtensionContext extensionContext) throws Exception {
|
||||
if (!initialized) {
|
||||
super.beforeAll(extensionContext);
|
||||
initialized = true;
|
||||
}
|
||||
setupContext();
|
||||
}
|
||||
|
||||
|
||||
@SuppressWarnings("RedundantThrows")
|
||||
@Override
|
||||
public void afterAll(ExtensionContext extensionContext) throws Exception {
|
||||
cleanupContext();
|
||||
// never stops - do not call super
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,49 @@
|
||||
package com.cmobile.unifiedtms.core;
|
||||
|
||||
import com.cmobile.unifiedtms.TmsTestContainer;
|
||||
import com.haulmont.cuba.core.EntityManager;
|
||||
import com.haulmont.cuba.core.Persistence;
|
||||
import com.haulmont.cuba.core.Transaction;
|
||||
import com.haulmont.cuba.core.TypedQuery;
|
||||
import com.haulmont.cuba.core.global.AppBeans;
|
||||
import com.haulmont.cuba.core.global.DataManager;
|
||||
import com.haulmont.cuba.core.global.Metadata;
|
||||
import com.haulmont.cuba.security.entity.User;
|
||||
import org.junit.jupiter.api.*;
|
||||
import org.junit.jupiter.api.extension.RegisterExtension;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class SampleIntegrationTest {
|
||||
|
||||
@RegisterExtension
|
||||
public static TmsTestContainer cont = TmsTestContainer.Common.INSTANCE;
|
||||
|
||||
private static Metadata metadata;
|
||||
private static Persistence persistence;
|
||||
private static DataManager dataManager;
|
||||
|
||||
@BeforeAll
|
||||
public static void beforeAll() throws Exception {
|
||||
metadata = cont.metadata();
|
||||
persistence = cont.persistence();
|
||||
dataManager = AppBeans.get(DataManager.class);
|
||||
}
|
||||
|
||||
@AfterAll
|
||||
public static void afterAll() throws Exception {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLoadUser() {
|
||||
try (Transaction tx = persistence.createTransaction()) {
|
||||
EntityManager em = persistence.getEntityManager();
|
||||
TypedQuery<User> query = em.createQuery(
|
||||
"select u from sec$User u where u.login = :userLogin", User.class);
|
||||
query.setParameter("userLogin", "admin");
|
||||
List<User> users = query.getResultList();
|
||||
tx.commit();
|
||||
Assertions.assertEquals(1, users.size());
|
||||
}
|
||||
}
|
||||
}
|
||||
8
modules/test/com/cmobile/unifiedtms/test-app.properties
Normal file
8
modules/test/com/cmobile/unifiedtms/test-app.properties
Normal file
@ -0,0 +1,8 @@
|
||||
cuba.springContextConfig = +com/cmobile/unifiedtms/spring.xml \
|
||||
com/haulmont/cuba/testsupport/test-spring.xml \
|
||||
com/cmobile/unifiedtms/test-spring.xml
|
||||
|
||||
cuba.confDir=${user.dir}/build/test-home/${cuba.webContextName}/conf
|
||||
cuba.logDir=${user.dir}/build/test-home/${cuba.webContextName}/logs
|
||||
cuba.tempDir=${user.dir}/build/test-home/${cuba.webContextName}/temp
|
||||
cuba.dataDir=${user.dir}/build/test-home/${cuba.webContextName}/work
|
||||
8
modules/test/com/cmobile/unifiedtms/test-spring.xml
Normal file
8
modules/test/com/cmobile/unifiedtms/test-spring.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<beans xmlns="http://www.springframework.org/schema/beans">
|
||||
|
||||
<!-- Override existing beans or define new bean definitions required for tests -->
|
||||
|
||||
<!-- <bean id="cuba_Emailer" class="com.haulmont.cuba.testsupport.TestEmailer"/> -->
|
||||
|
||||
</beans>
|
||||
Reference in New Issue
Block a user