Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
doujutun3207
flink
提交
20fdcfb4
F
flink
项目概览
doujutun3207
/
flink
与 Fork 源项目一致
从无法访问的项目Fork
通知
24
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
flink
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
20fdcfb4
编写于
6月 26, 2014
作者:
U
uce
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Reeenable tryLocalExecution() test in ClientTest
上级
69589fa9
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
66 addition
and
80 deletion
+66
-80
stratosphere-clients/src/test/java/eu/stratosphere/client/program/ClientTest.java
.../test/java/eu/stratosphere/client/program/ClientTest.java
+66
-80
未找到文件。
stratosphere-clients/src/test/java/eu/stratosphere/client/program/ClientTest.java
浏览文件 @
20fdcfb4
...
...
@@ -12,23 +12,9 @@
**********************************************************************************************************************/
package
eu.stratosphere.client.program
;
import
static
org
.
mockito
.
Matchers
.
any
;
import
static
org
.
mockito
.
Mockito
.
times
;
import
static
org
.
mockito
.
Mockito
.
verify
;
import
static
org
.
mockito
.
Mockito
.
when
;
import
static
org
.
mockito
.
MockitoAnnotations
.
initMocks
;
import
static
org
.
powermock
.
api
.
mockito
.
PowerMockito
.
whenNew
;
import
java.io.IOException
;
import
org.junit.Before
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.mockito.Mock
;
import
org.powermock.core.classloader.annotations.PrepareForTest
;
import
org.powermock.modules.junit4.PowerMockRunner
;
import
eu.stratosphere.api.common.InvalidProgramException
;
import
eu.stratosphere.api.common.Plan
;
import
eu.stratosphere.api.java.ExecutionEnvironment
;
import
eu.stratosphere.compiler.DataStatistics
;
import
eu.stratosphere.compiler.PactCompiler
;
import
eu.stratosphere.compiler.costs.CostEstimator
;
...
...
@@ -40,107 +26,107 @@ import eu.stratosphere.nephele.client.AbstractJobResult.ReturnCode;
import
eu.stratosphere.nephele.client.JobClient
;
import
eu.stratosphere.nephele.client.JobSubmissionResult
;
import
eu.stratosphere.nephele.jobgraph.JobGraph
;
import
org.junit.Before
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.mockito.Mock
;
import
org.mockito.invocation.InvocationOnMock
;
import
org.mockito.stubbing.Answer
;
import
org.powermock.core.classloader.annotations.PrepareForTest
;
import
org.powermock.modules.junit4.PowerMockRunner
;
import
java.io.IOException
;
import
static
org
.
mockito
.
Matchers
.
any
;
import
static
org
.
mockito
.
Mockito
.
mock
;
import
static
org
.
mockito
.
Mockito
.
times
;
import
static
org
.
mockito
.
Mockito
.
verify
;
import
static
org
.
mockito
.
Mockito
.
when
;
import
static
org
.
mockito
.
MockitoAnnotations
.
initMocks
;
import
static
org
.
powermock
.
api
.
mockito
.
PowerMockito
.
doAnswer
;
import
static
org
.
powermock
.
api
.
mockito
.
PowerMockito
.
whenNew
;
/**
* Simple and maybe stupid test to check the {@link Client} class.
* However, the use of mocks can be copied copied easily from this example.
*
*/
@RunWith
(
PowerMockRunner
.
class
)
@PrepareForTest
(
Client
.
class
)
public
class
ClientTest
{
@Mock
Configuration
configMock
;
@Mock
PackagedProgram
program
;
@Mock
JobWithJars
planWithJarsMock
;
@Mock
Plan
planMock
;
@Mock
PactCompiler
compilerMock
;
@Mock
OptimizedPlan
optimizedPlanMock
;
@Mock
NepheleJobGraphGenerator
generatorMock
;
@Mock
JobGraph
jobGraphMock
;
@Mock
JobClient
jobClientMock
;
@Mock
JobSubmissionResult
jobSubmissionResultMock
;
@Mock
Configuration
configMock
;
@Mock
PackagedProgram
program
;
@Mock
JobWithJars
planWithJarsMock
;
@Mock
Plan
planMock
;
@Mock
PactCompiler
compilerMock
;
@Mock
OptimizedPlan
optimizedPlanMock
;
@Mock
NepheleJobGraphGenerator
generatorMock
;
@Mock
JobGraph
jobGraphMock
;
@Mock
JobClient
jobClientMock
;
@Mock
JobSubmissionResult
jobSubmissionResultMock
;
@Before
public
void
setUp
()
throws
Exception
{
public
void
setUp
()
throws
Exception
{
initMocks
(
this
);
when
(
configMock
.
getString
(
ConfigConstants
.
JOB_MANAGER_IPC_ADDRESS_KEY
,
null
)).
thenReturn
(
"localhost"
);
when
(
configMock
.
getInteger
(
ConfigConstants
.
JOB_MANAGER_IPC_PORT_KEY
,
ConfigConstants
.
DEFAULT_JOB_MANAGER_IPC_PORT
)).
thenReturn
(
6123
);
when
(
planMock
.
getJobName
()).
thenReturn
(
"MockPlan"
);
// when(mockJarFile.getAbsolutePath()).thenReturn("mockFilePath");
when
(
program
.
getPlanWithJars
()).
thenReturn
(
planWithJarsMock
);
when
(
planWithJarsMock
.
getPlan
()).
thenReturn
(
planMock
);
whenNew
(
PactCompiler
.
class
).
withArguments
(
any
(
DataStatistics
.
class
),
any
(
CostEstimator
.
class
)).
thenReturn
(
this
.
compilerMock
);
when
(
compilerMock
.
compile
(
planMock
)).
thenReturn
(
optimizedPlanMock
);
whenNew
(
NepheleJobGraphGenerator
.
class
).
withNoArguments
().
thenReturn
(
generatorMock
);
when
(
generatorMock
.
compileJobGraph
(
optimizedPlanMock
)).
thenReturn
(
jobGraphMock
);
whenNew
(
JobClient
.
class
).
withArguments
(
any
(
JobGraph
.
class
),
any
(
Configuration
.
class
)).
thenReturn
(
this
.
jobClientMock
);
when
(
this
.
jobClientMock
.
submitJob
()).
thenReturn
(
jobSubmissionResultMock
);
}
@Test
public
void
shouldSubmitToJobClient
()
throws
ProgramInvocationException
,
IOException
{
public
void
shouldSubmitToJobClient
()
throws
ProgramInvocationException
,
IOException
{
when
(
jobSubmissionResultMock
.
getReturnCode
()).
thenReturn
(
ReturnCode
.
SUCCESS
);
Client
out
=
new
Client
(
configMock
);
out
.
run
(
program
.
getPlanWithJars
(),
-
1
,
false
);
program
.
deleteExtractedLibraries
();
verify
(
this
.
compilerMock
,
times
(
1
)).
compile
(
planMock
);
verify
(
this
.
generatorMock
,
times
(
1
)).
compileJobGraph
(
optimizedPlanMock
);
verify
(
this
.
jobClientMock
,
times
(
1
)).
submitJob
();
}
/**
* @throws Exception
*/
@Test
(
expected
=
ProgramInvocationException
.
class
)
public
void
shouldThrowException
()
throws
Exception
{
@Test
(
expected
=
ProgramInvocationException
.
class
)
public
void
shouldThrowException
()
throws
Exception
{
when
(
jobSubmissionResultMock
.
getReturnCode
()).
thenReturn
(
ReturnCode
.
ERROR
);
Client
out
=
new
Client
(
configMock
);
out
.
run
(
program
.
getPlanWithJars
(),
-
1
,
false
);
program
.
deleteExtractedLibraries
();
verify
(
this
.
jobClientMock
).
submitJob
();
}
//
// @Test(expected=InvalidProgramException.class)
// public void tryLocalExecution() throws Exception {
// new Client(configMock);
// LocalExecutor.execute(planMock);
// }
//
// @Test(expected=InvalidProgramException.class)
// public void tryLocalEnvironmentExecution() throws Exception {
// new Client(configMock);
// new LocalEnvironment();
// }
}
\ No newline at end of file
@Test
(
expected
=
InvalidProgramException
.
class
)
public
void
tryLocalExecution
()
throws
Exception
{
PackagedProgram
packagedProgramMock
=
mock
(
PackagedProgram
.
class
);
when
(
packagedProgramMock
.
isUsingInteractiveMode
()).
thenReturn
(
true
);
doAnswer
(
new
Answer
<
Void
>()
{
@Override
public
Void
answer
(
InvocationOnMock
invocation
)
throws
Throwable
{
ExecutionEnvironment
.
createLocalEnvironment
();
return
null
;
}
}).
when
(
packagedProgramMock
).
invokeInteractiveModeForExecution
();
new
Client
(
configMock
).
run
(
packagedProgramMock
,
1
,
true
);
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录