MCPcopy Create free account
hub / github.com/apache/mesos / TEST_P

Function TEST_P

src/tests/default_executor_tests.cpp:124–232  ·  view source on GitHub ↗

This test verifies that the default executor can launch a task group.

Source from the content-addressed store, hash-verified

122
123// This test verifies that the default executor can launch a task group.
124TEST_P(DefaultExecutorTest, TaskRunning)
125{
126 Try<Owned<cluster::Master>> master = StartMaster();
127 ASSERT_SOME(master);
128
129 slave::Flags flags = CreateSlaveFlags();
130 flags.containerizers = GetParam();
131
132 Owned<MasterDetector> detector = master.get()->createDetector();
133 Try<Owned<cluster::Slave>> slave = StartSlave(detector.get(), flags);
134 ASSERT_SOME(slave);
135
136 auto scheduler = std::make_shared<v1::MockHTTPScheduler>();
137
138 EXPECT_CALL(*scheduler, connected(_))
139 .WillOnce(v1::scheduler::SendSubscribe(v1::DEFAULT_FRAMEWORK_INFO));
140
141 Future<v1::scheduler::Event::Subscribed> subscribed;
142 EXPECT_CALL(*scheduler, subscribed(_, _))
143 .WillOnce(FutureArg<1>(&subscribed));
144
145 Future<v1::scheduler::Event::Offers> offers;
146 EXPECT_CALL(*scheduler, offers(_, _))
147 .WillOnce(FutureArg<1>(&offers))
148 .WillRepeatedly(Return());
149
150 EXPECT_CALL(*scheduler, heartbeat(_))
151 .WillRepeatedly(Return()); // Ignore heartbeats.
152
153 v1::scheduler::TestMesos mesos(
154 master.get()->pid,
155 ContentType::PROTOBUF,
156 scheduler);
157
158 AWAIT_READY(subscribed);
159 v1::FrameworkID frameworkId(subscribed->framework_id());
160
161 v1::Resources resources =
162 v1::Resources::parse("cpus:0.1;mem:32;disk:32").get();
163
164 v1::ExecutorInfo executorInfo = v1::createExecutorInfo(
165 v1::DEFAULT_EXECUTOR_ID,
166 None(),
167 resources,
168 v1::ExecutorInfo::DEFAULT,
169 frameworkId);
170
171 AWAIT_READY(offers);
172 ASSERT_FALSE(offers->offers().empty());
173
174 const v1::Offer& offer = offers->offers(0);
175 const v1::AgentID& agentId = offer.agent_id();
176
177 Future<v1::scheduler::Event::Update> startingUpdate;
178 Future<v1::scheduler::Event::Update> runningUpdate;
179 EXPECT_CALL(*scheduler, update(_, _))
180 .WillOnce(DoAll(
181 FutureArg<1>(&startingUpdate),

Callers

nothing calls this directly

Calls 15

createExecutorInfoFunction · 0.85
NoneClass · 0.85
createCallAcceptFunction · 0.85
LAUNCH_GROUPFunction · 0.85
createTaskGroupInfoFunction · 0.85
getExecutorLatestRunPathFunction · 0.85
createBasicAuthHeadersFunction · 0.85
OKClass · 0.85
StringClass · 0.85
failureFunction · 0.85
createCallKillFunction · 0.85

Tested by

no test coverage detected