Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
开发团队
Flowable Engine
提交
d4ccafe5
F
Flowable Engine
项目概览
开发团队
/
Flowable Engine
通知
9
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
Flowable Engine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
d4ccafe5
编写于
6月 28, 2010
作者:
D
dsyer
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Use Spring test features in SpringTest
上级
06621d70
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
99 addition
and
98 deletion
+99
-98
modules/activiti-engine-test-cfg/pom.xml
modules/activiti-engine-test-cfg/pom.xml
+5
-0
modules/activiti-engine-test-cfg/src/test/java/org/activiti/test/cfg/spring/ProcessEngineFactoryBean.java
...rg/activiti/test/cfg/spring/ProcessEngineFactoryBean.java
+20
-12
modules/activiti-engine-test-cfg/src/test/java/org/activiti/test/cfg/spring/SpringTest.java
...rc/test/java/org/activiti/test/cfg/spring/SpringTest.java
+36
-86
modules/activiti-engine-test-cfg/src/test/resources/org/activiti/test/cfg/spring/SpringTest-context.xml
...urces/org/activiti/test/cfg/spring/SpringTest-context.xml
+0
-0
modules/activiti-engine-test-cfg/src/test/resources/org/activiti/test/cfg/spring/testProcess.bpmn20.xml
...urces/org/activiti/test/cfg/spring/testProcess.bpmn20.xml
+32
-0
pom.xml
pom.xml
+6
-0
未找到文件。
modules/activiti-engine-test-cfg/pom.xml
浏览文件 @
d4ccafe5
...
...
@@ -38,6 +38,11 @@
<groupId>
org.springframework
</groupId>
<artifactId>
spring-tx
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-test
</artifactId>
<scope>
test
</scope>
</dependency>
</dependencies>
<build>
...
...
modules/activiti-engine-test-cfg/src/test/java/org/activiti/test/cfg/spring/ProcessEngineFactoryBean.java
浏览文件 @
d4ccafe5
...
...
@@ -13,27 +13,35 @@
package
org.activiti.test.cfg.spring
;
import
org.activiti.DbProcessEngineBuilder
;
import
org.activiti.ProcessEngine
;
import
org.activiti.ProcessEngines
;
import
org.springframework.beans.factory.FactoryBean
;
/**
* @author Dave Syer
*/
public
class
ProcessEngineFactoryBean
implements
FactoryBean
{
public
Object
getObject
()
throws
Exception
{
ProcessEngines
.
init
();
return
ProcessEngines
.
getDefaultProcessEngine
();
}
private
String
configurationResource
=
"activiti.properties"
;
public
void
setConfigurationResource
(
String
configurationResource
)
{
this
.
configurationResource
=
configurationResource
;
}
public
Object
getObject
()
throws
Exception
{
// ProcessEngines is not very friendly for configuration
// ProcessEngines.init();
// return ProcessEngines.getDefaultProcessEngine();
return
new
DbProcessEngineBuilder
().
configureFromPropertiesResource
(
configurationResource
).
buildProcessEngine
();
}
public
Class
<?>
getObjectType
()
{
return
ProcessEngine
.
class
;
}
public
Class
<?>
getObjectType
()
{
return
ProcessEngine
.
class
;
}
public
boolean
isSingleton
()
{
return
true
;
}
public
boolean
isSingleton
()
{
return
true
;
}
}
modules/activiti-engine-test-cfg/src/test/java/org/activiti/test/cfg/spring/SpringTest.java
浏览文件 @
d4ccafe5
...
...
@@ -12,103 +12,53 @@
*/
package
org.activiti.test.cfg.spring
;
import
org.activiti.Deployment
;
import
org.activiti.ProcessEngine
;
import
org.activiti.ProcessService
;
import
org.activiti.impl.util.LogUtil
;
import
org.junit.Test
;
import
org.springframework.context.support.ClassPathXmlApplicationContext
;
import
org.junit.runner.RunWith
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.test.context.ContextConfiguration
;
import
org.springframework.test.context.junit4.SpringJUnit4ClassRunner
;
import
org.springframework.util.ClassUtils
;
/**
* @author Tom Baeyens
* @author Dave Syer
*/
@ContextConfiguration
@RunWith
(
SpringJUnit4ClassRunner
.
class
)
public
class
SpringTest
{
static
{
LogUtil
.
readJavaUtilLoggingConfigFromClasspath
();
}
@Autowired
private
ProcessEngine
processEngine
;
@Test
public
void
testSpringApi
()
{
@Autowired
private
UserBean
userBean
;
ClassPathXmlApplicationContext
applicationContext
=
new
ClassPathXmlApplicationContext
(
"org/activiti/test/cfg/spring/applicationContext.xml"
);
UserBean
userBean
=
(
UserBean
)
applicationContext
.
getBean
(
"userBean"
);
userBean
.
doTransactional
();
applicationContext
.
close
();
static
{
LogUtil
.
readJavaUtilLoggingConfigFromClasspath
();
}
}
@Test
public
void
testSpringApi
()
{
userBean
.
doTransactional
();
}
// Temp test to try out some Spring stuff
@Test
public
void
testSaveDeployment
()
{
// ApplicationContext applicationContext = new
// ClassPathXmlApplicationContext("org/activiti/test/cfg/spring/applicationContext.xml");
// PlatformTransactionManager ptm = (PlatformTransactionManager)
// applicationContext.getBean("transactionManager");
// final EntityManagerFactory emf = (EntityManagerFactory)
// applicationContext.getBean("entityManagerFactory");
// TransactionTemplate transactionTemplate = new TransactionTemplate(ptm);
//
// // See logging: transaction is committed: '[DEBUG]: Committing JPA
// transaction on EntityManager ...'
// final Long dbId = (Long) transactionTemplate.execute(new
// TransactionCallback() {
//
// public Object doInTransaction(TransactionStatus transactionStatus) {
//
// // IMPORTANT!!!
// // cannot use EntityManager em = emf.createEntityManager();
// //
// // The JPATransactionManager will create a new entityManager and bind it
// to the thread
// // When you create an entityManager yourself, it will NOT participate in
// the
// // current transaction and the test will fail because the database will
// remain empty.
//
// EntityManager em =
// EntityManagerFactoryUtils.getTransactionalEntityManager(emf);
//
// DeploymentImpl deployment = new DeploymentImpl();
// deployment.setName("TEST_DEPLOYMENT");
// assertEquals(0L, deployment.getDbid());
//
// em.persist(deployment);
// assertTrue(deployment.getDbid() != 0L);
//
// return deployment.getDbid();
// }
// });
//
// transactionTemplate.execute(new TransactionCallback() {
//
// public Object doInTransaction(TransactionStatus transactionStatus) {
//
// EntityManager em =
// EntityManagerFactoryUtils.getTransactionalEntityManager(emf);
// DeploymentImpl deploymentFromDb = em.find(DeploymentImpl.class, dbId);
//
// assertEquals("TEST_DEPLOYMENT", deploymentFromDb.getName());
//
// return null;
// }
// });
//
// }
}
@Test
public
void
testSaveDeployment
()
{
String
resource
=
ClassUtils
.
addResourcePathToPackagePath
(
getClass
(),
"testProcess.bpmn20.xml"
);
ProcessService
processService
=
processEngine
.
getProcessService
();
Deployment
deployment
=
processService
.
createDeployment
()
.
name
(
resource
).
addClasspathResource
(
resource
).
deploy
();
if
(
deployment
!=
null
)
{
processService
.
deleteDeploymentCascade
(
deployment
.
getId
());
}
}
// TODO
// @Test public void testActivitiApi() {
// SpringProcessManagerFactory springProcessSessionFactory =
// (SpringProcessManagerFactory) ProcessConfiguration.create()
// .configureResource("org/activiti/test/cfg/spring/activiti.properties")
// .buildProcessSessionFactory();
//
// AbstractApplicationContext applicationContext =
// (AbstractApplicationContext)
// springProcessSessionFactory.getApplicationContext();
//
// UserBean userBean = (UserBean) applicationContext.getBean("userBean");
//
// userBean.doTransactional();
//
// applicationContext.close();
// }
}
modules/activiti-engine-test-cfg/src/test/resources/org/activiti/test/cfg/spring/
applicationC
ontext.xml
→
modules/activiti-engine-test-cfg/src/test/resources/org/activiti/test/cfg/spring/
SpringTest-c
ontext.xml
浏览文件 @
d4ccafe5
文件已移动
modules/activiti-engine-test-cfg/src/test/resources/org/activiti/test/cfg/spring/testProcess.bpmn20.xml
0 → 100755
浏览文件 @
d4ccafe5
<?xml version="1.0" encoding="UTF-8"?>
<definitions
id=
"taskAssigneeExample"
xmlns=
"http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"
typeLanguage=
"http://www.w3.org/2001/XMLSchema"
expressionLanguage=
"http://www.w3.org/1999/XPath"
targetNamespace=
"http://www.activiti.org/bpmn2.0"
>
<process
id=
'taskAssigneeProcess'
name=
"Task Assignee example"
>
<startEvent
id=
'theStart'
/>
<sequenceFlow
id=
'flow1'
sourceRef=
'theStart'
targetRef=
'theTask'
/>
<userTask
id=
'theTask'
name=
'Schedule meeting'
>
<documentation>
Schedule an engineering meeting for next week with the new hire.
</documentation>
<humanPerformer>
<resourceAssignmentExpression>
<formalExpression>
kermit
</formalExpression>
</resourceAssignmentExpression>
</humanPerformer>
</userTask>
<sequenceFlow
id=
'flow2'
sourceRef=
'theTask'
targetRef=
'theEnd'
/>
<endEvent
id=
'theEnd'
/>
</process>
</definitions>
pom.xml
浏览文件 @
d4ccafe5
...
...
@@ -53,6 +53,12 @@
<version>
1.7.1
</version>
<scope>
provided
</scope>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-test
</artifactId>
<version>
2.5.6
</version>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
org.springframework
</groupId>
<artifactId>
spring-core
</artifactId>
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录