You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by gi...@apache.org on 2017/10/30 20:33:13 UTC
[02/11] mesos-site git commit: Updated the website built from mesos
SHA: 6ecbf02.
http://git-wip-us.apache.org/repos/asf/mesos-site/blob/c260c286/content/api/latest/c++/src_2tests_2mesos_8hpp_source.html
----------------------------------------------------------------------
diff --git a/content/api/latest/c++/src_2tests_2mesos_8hpp_source.html b/content/api/latest/c++/src_2tests_2mesos_8hpp_source.html
index ec05c04..9b0824f 100644
--- a/content/api/latest/c++/src_2tests_2mesos_8hpp_source.html
+++ b/content/api/latest/c++/src_2tests_2mesos_8hpp_source.html
@@ -2235,804 +2235,810 @@
<div class="line"><a name="l02181"></a><span class="lineno"> 2181</span>  rescindInverseOffers,</div>
<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span>  <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::RescindInverseOffer&));</div>
<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span>  MOCK_METHOD2_T(<a class="code" href="namespacerouting_1_1filter_1_1basic.html#a088d88712e011acb0673da92045b365b">update</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Update&));</div>
-<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>  MOCK_METHOD2_T(message, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Message&));</div>
-<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>  MOCK_METHOD2_T(failure, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Failure&));</div>
-<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>  MOCK_METHOD2_T(<a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Error&));</div>
-<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span> </div>
-<div class="line"><a name="l02188"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html#ac5e370a283e9cb37142f56affd88f192"> 2188</a></span>  <span class="keywordtype">void</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html#ac5e370a283e9cb37142f56affd88f192">event</a>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>* mesos, <span class="keyword">const</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>& event)</div>
-<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>  {</div>
-<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>  <span class="keywordflow">switch</span> (event.type()) {</div>
-<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>  <span class="keywordflow">case</span> Event::SUBSCRIBED:</div>
-<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>  subscribed(mesos, event.subscribed());</div>
-<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>  <span class="keywordflow">case</span> Event::OFFERS:</div>
-<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>  offers(mesos, event.offers());</div>
+<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span>  MOCK_METHOD2_T(</div>
+<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span>  offerOperationUpdate,</div>
+<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>  <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::OfferOperationUpdate&));</div>
+<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>  MOCK_METHOD2_T(message, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Message&));</div>
+<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>  MOCK_METHOD2_T(failure, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Failure&));</div>
+<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>  MOCK_METHOD2_T(<a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Error&));</div>
+<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span> </div>
+<div class="line"><a name="l02191"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html#ac5e370a283e9cb37142f56affd88f192"> 2191</a></span>  <span class="keywordtype">void</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html#ac5e370a283e9cb37142f56affd88f192">event</a>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>* mesos, <span class="keyword">const</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>& event)</div>
+<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>  {</div>
+<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>  <span class="keywordflow">switch</span> (event.type()) {</div>
+<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>  <span class="keywordflow">case</span> Event::SUBSCRIBED:</div>
+<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span>  subscribed(mesos, event.subscribed());</div>
<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>  <span class="keywordflow">case</span> Event::INVERSE_OFFERS:</div>
-<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>  inverseOffers(mesos, event.inverse_offers());</div>
+<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span>  <span class="keywordflow">case</span> Event::OFFERS:</div>
+<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span>  offers(mesos, event.offers());</div>
<div class="line"><a name="l02199"></a><span class="lineno"> 2199</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>  <span class="keywordflow">case</span> Event::RESCIND:</div>
-<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>  rescind(mesos, event.rescind());</div>
+<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span>  <span class="keywordflow">case</span> Event::INVERSE_OFFERS:</div>
+<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span>  inverseOffers(mesos, event.inverse_offers());</div>
<div class="line"><a name="l02202"></a><span class="lineno"> 2202</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>  <span class="keywordflow">case</span> Event::RESCIND_INVERSE_OFFER:</div>
-<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>  rescindInverseOffers(mesos, event.rescind_inverse_offer());</div>
+<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span>  <span class="keywordflow">case</span> Event::RESCIND:</div>
+<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span>  rescind(mesos, event.rescind());</div>
<div class="line"><a name="l02205"></a><span class="lineno"> 2205</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>  <span class="keywordflow">case</span> Event::UPDATE:</div>
-<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>  <a class="code" href="namespacerouting_1_1filter_1_1basic.html#a088d88712e011acb0673da92045b365b">update</a>(mesos, event.update());</div>
+<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>  <span class="keywordflow">case</span> Event::RESCIND_INVERSE_OFFER:</div>
+<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>  rescindInverseOffers(mesos, event.rescind_inverse_offer());</div>
<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>  <span class="keywordflow">case</span> Event::MESSAGE:</div>
-<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>  message(mesos, event.message());</div>
+<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>  <span class="keywordflow">case</span> Event::UPDATE:</div>
+<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>  <a class="code" href="namespacerouting_1_1filter_1_1basic.html#a088d88712e011acb0673da92045b365b">update</a>(mesos, event.update());</div>
<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>  <span class="keywordflow">case</span> Event::FAILURE:</div>
-<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>  failure(mesos, event.failure());</div>
+<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>  <span class="keywordflow">case</span> Event::OFFER_OPERATION_UPDATE:</div>
+<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>  offerOperationUpdate(mesos, event.offer_operation_update());</div>
<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>  <span class="keywordflow">case</span> Event::ERROR:</div>
-<div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>  <a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>(mesos, event.error());</div>
+<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>  <span class="keywordflow">case</span> Event::MESSAGE:</div>
+<div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>  message(mesos, event.message());</div>
<div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>  <span class="keywordflow">case</span> Event::HEARTBEAT:</div>
-<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>  heartbeat(mesos);</div>
+<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>  <span class="keywordflow">case</span> Event::FAILURE:</div>
+<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>  failure(mesos, event.failure());</div>
<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerouting_1_1diagnosis_1_1socket_1_1state.html#a4cceb5a8a4b3f5e1323fdf4a14c5d2a6">Event::UNKNOWN</a>:</div>
-<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>  LOG(FATAL) << <span class="stringliteral">"Received unexpected UNKNOWN event"</span>;</div>
+<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>  <span class="keywordflow">case</span> Event::ERROR:</div>
+<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>  <a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>(mesos, event.error());</div>
<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>  }</div>
-<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>  }</div>
-<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span> };</div>
-<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span> </div>
-<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span> </div>
-<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span> <span class="comment">// A generic testing interface for the scheduler library that can be used to</span></div>
-<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span> <span class="comment">// test the library across various versions.</span></div>
-<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Mesos, <span class="keyword">typename</span> Event></div>
-<div class="line"><a name="l02232"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html"> 2232</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">TestMesos</a> : <span class="keyword">public</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a></div>
-<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span> {</div>
-<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span> <span class="keyword">public</span>:</div>
-<div class="line"><a name="l02235"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#ab02fe8f9cda498e7f5fe1b07fc1802d9"> 2235</a></span>  <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#ab02fe8f9cda498e7f5fe1b07fc1802d9">TestMesos</a>(</div>
-<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>  <span class="keyword">const</span> std::string& master,</div>
-<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>  <a class="code" href="namespacemesos.html#a13035ce0cc66cca4a467787b4716039e">ContentType</a> contentType,</div>
-<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>  <span class="keyword">const</span> std::shared_ptr<<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">MockHTTPScheduler<Mesos, Event></a>>& _scheduler,</div>
-<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>  <span class="keyword">const</span> <a class="code" href="classOption.html">Option</a><std::shared_ptr<mesos::master::detector::MasterDetector>>&</div>
-<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span>  detector = <a class="code" href="structNone.html">None</a>())</div>
-<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>  : <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>(</div>
-<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>  master,</div>
-<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>  contentType,</div>
-<div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>  <span class="comment">// We don't pass the `_scheduler` shared pointer as the library</span></div>
-<div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>  <span class="comment">// interface expects a `std::function` object.</span></div>
-<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">MockHTTPScheduler</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::connected,</div>
-<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span>  _scheduler.<a class="code" href="namespacecgroups.html#a2c47b0af7c71e02482e485f116c4dba2">get</a>(),</div>
-<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>  this),</div>
-<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">MockHTTPScheduler</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::disconnected,</div>
-<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>  _scheduler.<a class="code" href="namespacecgroups.html#a2c47b0af7c71e02482e485f116c4dba2">get</a>(),</div>
-<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>  this),</div>
-<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">TestMesos</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::events,</div>
-<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>  this,</div>
-<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>  lambda::_1),</div>
-<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>  v1::<a class="code" href="src_2tests_2mesos_8hpp.html#a8ce2d5ef94438df84d022911a1dfc223">DEFAULT_CREDENTIAL</a>,</div>
-<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>  detector),</div>
-<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>  scheduler(_scheduler) {}</div>
-<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span> </div>
-<div class="line"><a name="l02259"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a177712569cda360ba3e8636280744362"> 2259</a></span>  <span class="keyword">virtual</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a177712569cda360ba3e8636280744362">~TestMesos</a>()</div>
-<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>  {</div>
-<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>  <span class="comment">// Since the destructor for `TestMesos` is invoked first, the library can</span></div>
-<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>  <span class="comment">// make more callbacks to the `scheduler` object before the `Mesos` (base</span></div>
-<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>  <span class="comment">// class) destructor is invoked. To prevent this, we invoke `stop()` here</span></div>
-<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>  <span class="comment">// to explicitly stop the library.</span></div>
-<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>  this->stop();</div>
-<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span> </div>
-<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>  <span class="keywordtype">bool</span> paused = <a class="code" href="classprocess_1_1Clock.html#aaba2025cf9ac7b264f113d6a3bf4364c">process::Clock::paused</a>();</div>
-<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span> </div>
-<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>  <span class="comment">// Need to settle the Clock to ensure that all the pending async callbacks</span></div>
-<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>  <span class="comment">// with references to `this` and `scheduler` queued on libprocess are</span></div>
-<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>  <span class="comment">// executed before the object is destructed.</span></div>
-<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>  <a class="code" href="classprocess_1_1Clock.html#a7edd2e5d09094c5a3613211828fe0f42">process::Clock::pause</a>();</div>
-<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>  <a class="code" href="classprocess_1_1Clock.html#a4fd154ded1943f0b442bb88151adb758">process::Clock::settle</a>();</div>
+<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>  <span class="keywordflow">case</span> Event::HEARTBEAT:</div>
+<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>  heartbeat(mesos);</div>
+<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>  <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerouting_1_1diagnosis_1_1socket_1_1state.html#a4cceb5a8a4b3f5e1323fdf4a14c5d2a6">Event::UNKNOWN</a>:</div>
+<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>  LOG(FATAL) << <span class="stringliteral">"Received unexpected UNKNOWN event"</span>;</div>
+<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>  <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>  }</div>
+<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>  }</div>
+<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span> };</div>
+<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span> </div>
+<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span> </div>
+<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span> <span class="comment">// A generic testing interface for the scheduler library that can be used to</span></div>
+<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span> <span class="comment">// test the library across various versions.</span></div>
+<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Mesos, <span class="keyword">typename</span> Event></div>
+<div class="line"><a name="l02238"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html"> 2238</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">TestMesos</a> : <span class="keyword">public</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a></div>
+<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span> {</div>
+<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l02241"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#ab02fe8f9cda498e7f5fe1b07fc1802d9"> 2241</a></span>  <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#ab02fe8f9cda498e7f5fe1b07fc1802d9">TestMesos</a>(</div>
+<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>  <span class="keyword">const</span> std::string& master,</div>
+<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>  <a class="code" href="namespacemesos.html#a13035ce0cc66cca4a467787b4716039e">ContentType</a> contentType,</div>
+<div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>  <span class="keyword">const</span> std::shared_ptr<<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">MockHTTPScheduler<Mesos, Event></a>>& _scheduler,</div>
+<div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>  <span class="keyword">const</span> <a class="code" href="classOption.html">Option</a><std::shared_ptr<mesos::master::detector::MasterDetector>>&</div>
+<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>  detector = <a class="code" href="structNone.html">None</a>())</div>
+<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span>  : <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>(</div>
+<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>  master,</div>
+<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>  contentType,</div>
+<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>  <span class="comment">// We don't pass the `_scheduler` shared pointer as the library</span></div>
+<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>  <span class="comment">// interface expects a `std::function` object.</span></div>
+<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">MockHTTPScheduler</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::connected,</div>
+<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>  _scheduler.<a class="code" href="namespacecgroups.html#a2c47b0af7c71e02482e485f116c4dba2">get</a>(),</div>
+<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span>  this),</div>
+<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">MockHTTPScheduler</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::disconnected,</div>
+<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span>  _scheduler.<a class="code" href="namespacecgroups.html#a2c47b0af7c71e02482e485f116c4dba2">get</a>(),</div>
+<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span>  this),</div>
+<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">TestMesos</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::events,</div>
+<div class="line"><a name="l02259"></a><span class="lineno"> 2259</span>  this,</div>
+<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>  lambda::_1),</div>
+<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>  v1::<a class="code" href="src_2tests_2mesos_8hpp.html#a8ce2d5ef94438df84d022911a1dfc223">DEFAULT_CREDENTIAL</a>,</div>
+<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>  detector),</div>
+<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>  scheduler(_scheduler) {}</div>
+<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span> </div>
+<div class="line"><a name="l02265"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a177712569cda360ba3e8636280744362"> 2265</a></span>  <span class="keyword">virtual</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a177712569cda360ba3e8636280744362">~TestMesos</a>()</div>
+<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>  {</div>
+<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>  <span class="comment">// Since the destructor for `TestMesos` is invoked first, the library can</span></div>
+<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>  <span class="comment">// make more callbacks to the `scheduler` object before the `Mesos` (base</span></div>
+<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>  <span class="comment">// class) destructor is invoked. To prevent this, we invoke `stop()` here</span></div>
+<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>  <span class="comment">// to explicitly stop the library.</span></div>
+<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>  this->stop();</div>
+<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span> </div>
+<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>  <span class="keywordtype">bool</span> paused = <a class="code" href="classprocess_1_1Clock.html#aaba2025cf9ac7b264f113d6a3bf4364c">process::Clock::paused</a>();</div>
<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span> </div>
-<div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>  <span class="comment">// Return the Clock to its original state.</span></div>
-<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>  <span class="keywordflow">if</span> (!paused) {</div>
-<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>  <a class="code" href="classprocess_1_1Clock.html#ae3ea265163df2de286e185914265f538">process::Clock::resume</a>();</div>
-<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>  }</div>
-<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>  }</div>
+<div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>  <span class="comment">// Need to settle the Clock to ensure that all the pending async callbacks</span></div>
+<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>  <span class="comment">// with references to `this` and `scheduler` queued on libprocess are</span></div>
+<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>  <span class="comment">// executed before the object is destructed.</span></div>
+<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>  <a class="code" href="classprocess_1_1Clock.html#a7edd2e5d09094c5a3613211828fe0f42">process::Clock::pause</a>();</div>
+<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>  <a class="code" href="classprocess_1_1Clock.html#a4fd154ded1943f0b442bb88151adb758">process::Clock::settle</a>();</div>
<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span> </div>
-<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span> <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l02282"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a0c13e21b516e11eac40f5a70cef9882b"> 2282</a></span>  <span class="keywordtype">void</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a0c13e21b516e11eac40f5a70cef9882b">events</a>(std::queue<Event> events)</div>
-<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>  {</div>
-<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>  <span class="keywordflow">while</span> (!events.empty()) {</div>
-<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a> <span class="keyword">event</span> = std::move(events.front());</div>
-<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>  events.pop();</div>
-<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span>  scheduler->event(<span class="keyword">this</span>, event);</div>
-<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>  }</div>
-<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>  }</div>
-<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span> </div>
-<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span> <span class="keyword">private</span>:</div>
-<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>  std::shared_ptr<MockHTTPScheduler<Mesos, Event>> scheduler;</div>
-<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span> };</div>
-<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span> </div>
-<div class="line"><a name="l02295"></a><span class="lineno"> 2295</span> } <span class="comment">// namespace scheduler {</span></div>
+<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>  <span class="comment">// Return the Clock to its original state.</span></div>
+<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>  <span class="keywordflow">if</span> (!paused) {</div>
+<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>  <a class="code" href="classprocess_1_1Clock.html#ae3ea265163df2de286e185914265f538">process::Clock::resume</a>();</div>
+<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>  }</div>
+<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>  }</div>
+<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span> </div>
+<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span> <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l02288"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a0c13e21b516e11eac40f5a70cef9882b"> 2288</a></span>  <span class="keywordtype">void</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html#a0c13e21b516e11eac40f5a70cef9882b">events</a>(std::queue<Event> events)</div>
+<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>  {</div>
+<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span>  <span class="keywordflow">while</span> (!events.empty()) {</div>
+<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a> <span class="keyword">event</span> = std::move(events.front());</div>
+<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>  events.pop();</div>
+<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span>  scheduler->event(<span class="keyword">this</span>, event);</div>
+<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span>  }</div>
+<div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>  }</div>
<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span> </div>
-<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span> </div>
-<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span> <span class="keyword">namespace </span>v1 {</div>
-<div class="line"><a name="l02299"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html"> 2299</a></span> <span class="keyword">namespace </span>scheduler {</div>
+<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>  std::shared_ptr<MockHTTPScheduler<Mesos, Event>> scheduler;</div>
+<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span> };</div>
<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span> </div>
-<div class="line"><a name="l02301"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79"> 2301</a></span> <span class="keyword">using</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">Call</a> = <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">mesos::v1::scheduler::Call</a>;</div>
-<div class="line"><a name="l02302"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79"> 2302</a></span> <span class="keyword">using</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a> = <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">mesos::v1::scheduler::Event</a>;</div>
-<div class="line"><a name="l02303"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df"> 2303</a></span> <span class="keyword">using</span> <a class="code" href="classmesos_1_1v1_1_1scheduler_1_1Mesos.html">Mesos</a> = <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">mesos::v1::scheduler::Mesos</a>;</div>
-<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span> </div>
-<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span> </div>
-<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span> <span class="keyword">using</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">TestMesos</a> = <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">tests::scheduler::TestMesos</a><</div>
-<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">mesos::v1::scheduler::Mesos</a>,</div>
-<div class="line"><a name="l02308"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ad501fde9ba8e054ecbfc6991b5e5200a"> 2308</a></span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">mesos::v1::scheduler::Event</a>>;</div>
-<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span> </div>
+<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span> } <span class="comment">// namespace scheduler {</span></div>
+<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span> </div>
+<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span> </div>
+<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span> <span class="keyword">namespace </span>v1 {</div>
+<div class="line"><a name="l02305"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html"> 2305</a></span> <span class="keyword">namespace </span>scheduler {</div>
+<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span> </div>
+<div class="line"><a name="l02307"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79"> 2307</a></span> <span class="keyword">using</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">Call</a> = <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">mesos::v1::scheduler::Call</a>;</div>
+<div class="line"><a name="l02308"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79"> 2308</a></span> <span class="keyword">using</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a> = <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">mesos::v1::scheduler::Event</a>;</div>
+<div class="line"><a name="l02309"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df"> 2309</a></span> <span class="keyword">using</span> <a class="code" href="classmesos_1_1v1_1_1scheduler_1_1Mesos.html">Mesos</a> = <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">mesos::v1::scheduler::Mesos</a>;</div>
<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span> </div>
-<div class="line"><a name="l02311"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#a8e89b9cea175d555034b042fee28d6b8"> 2311</a></span> <a class="code" href="namespacemesos_1_1internal_1_1tests.html#aedefb539485255be5a1e684d2c35513e">ACTION_P</a>(SendSubscribe, frameworkInfo)</div>
-<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span> {</div>
-<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">Call</a> call;</div>
-<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>  call.set_type(Call::SUBSCRIBE);</div>
-<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span>  call.mutable_subscribe()->mutable_framework_info()->CopyFrom(frameworkInfo);</div>
-<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span>  <a class="code" href="namespaceos_1_1Shell.html#adeacb41dacfa03ad5ceebd9a53582997">arg0</a>->send(call);</div>
-<div class="line"><a name="l02317"></a><span class="lineno"> 2317</span> }</div>
-<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span> </div>
-<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span> </div>
-<div class="line"><a name="l02320"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#a40fd3e7758ec76572e04e78901f492f7"> 2320</a></span> <a class="code" href="namespacemesos_1_1internal_1_1tests.html#a929cdb1abef64e4976a6f6a51d3c5d73">ACTION_P2</a>(SendAcknowledge, frameworkId, agentId)</div>
-<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span> {</div>
-<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">Call</a> call;</div>
-<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span>  call.set_type(Call::ACKNOWLEDGE);</div>
-<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span>  call.mutable_framework_id()->CopyFrom(frameworkId);</div>
+<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span> </div>
+<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span> <span class="keyword">using</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">TestMesos</a> = <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1TestMesos.html">tests::scheduler::TestMesos</a><</div>
+<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">mesos::v1::scheduler::Mesos</a>,</div>
+<div class="line"><a name="l02314"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ad501fde9ba8e054ecbfc6991b5e5200a"> 2314</a></span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">mesos::v1::scheduler::Event</a>>;</div>
+<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span> </div>
+<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span> </div>
+<div class="line"><a name="l02317"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#a8e89b9cea175d555034b042fee28d6b8"> 2317</a></span> <a class="code" href="namespacemesos_1_1internal_1_1tests.html#aedefb539485255be5a1e684d2c35513e">ACTION_P</a>(SendSubscribe, frameworkInfo)</div>
+<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span> {</div>
+<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">Call</a> call;</div>
+<div class="line"><a name="l02320"></a><span class="lineno"> 2320</span>  call.set_type(Call::SUBSCRIBE);</div>
+<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span>  call.mutable_subscribe()->mutable_framework_info()->CopyFrom(frameworkInfo);</div>
+<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span>  <a class="code" href="namespaceos_1_1Shell.html#adeacb41dacfa03ad5ceebd9a53582997">arg0</a>->send(call);</div>
+<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span> }</div>
+<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span> </div>
<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span> </div>
-<div class="line"><a name="l02326"></a><span class="lineno"> 2326</span>  Call::Acknowledge* acknowledge = call.mutable_acknowledge();</div>
-<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span>  acknowledge->mutable_task_id()->CopyFrom(<a class="code" href="namespaceos_1_1Shell.html#a44f50f66f2a231de974b53c9f4384ba5">arg1</a>.status().task_id());</div>
-<div class="line"><a name="l02328"></a><span class="lineno"> 2328</span>  acknowledge->mutable_agent_id()->CopyFrom(agentId);</div>
-<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>  acknowledge->set_uuid(<a class="code" href="namespaceos_1_1Shell.html#a44f50f66f2a231de974b53c9f4384ba5">arg1</a>.status().uuid());</div>
-<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span> </div>
-<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>  <a class="code" href="namespaceos_1_1Shell.html#adeacb41dacfa03ad5ceebd9a53582997">arg0</a>->send(call);</div>
-<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span> }</div>
-<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span> </div>
-<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span> } <span class="comment">// namespace scheduler {</span></div>
-<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span> </div>
-<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span> <span class="keyword">using</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1.html#ace393e1853ea8e2d46aec8db2312d7e4">MockHTTPScheduler</a> = <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">tests::scheduler::MockHTTPScheduler</a><</div>
-<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">mesos::v1::scheduler::Mesos</a>,</div>
-<div class="line"><a name="l02338"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1.html#ace393e1853ea8e2d46aec8db2312d7e4"> 2338</a></span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">mesos::v1::scheduler::Event</a>>;</div>
+<div class="line"><a name="l02326"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#a40fd3e7758ec76572e04e78901f492f7"> 2326</a></span> <a class="code" href="namespacemesos_1_1internal_1_1tests.html#a929cdb1abef64e4976a6f6a51d3c5d73">ACTION_P2</a>(SendAcknowledge, frameworkId, agentId)</div>
+<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span> {</div>
+<div class="line"><a name="l02328"></a><span class="lineno"> 2328</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acb18ceaa5f6f2338f2a9727af398eb79">Call</a> call;</div>
+<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>  call.set_type(Call::ACKNOWLEDGE);</div>
+<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>  call.mutable_framework_id()->CopyFrom(frameworkId);</div>
+<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span> </div>
+<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>  Call::Acknowledge* acknowledge = call.mutable_acknowledge();</div>
+<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span>  acknowledge->mutable_task_id()->CopyFrom(<a class="code" href="namespaceos_1_1Shell.html#a44f50f66f2a231de974b53c9f4384ba5">arg1</a>.status().task_id());</div>
+<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span>  acknowledge->mutable_agent_id()->CopyFrom(agentId);</div>
+<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span>  acknowledge->set_uuid(<a class="code" href="namespaceos_1_1Shell.html#a44f50f66f2a231de974b53c9f4384ba5">arg1</a>.status().uuid());</div>
+<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span> </div>
+<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span>  <a class="code" href="namespaceos_1_1Shell.html#adeacb41dacfa03ad5ceebd9a53582997">arg0</a>->send(call);</div>
+<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span> }</div>
<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span> </div>
-<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span> } <span class="comment">// namespace v1 {</span></div>
+<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span> } <span class="comment">// namespace scheduler {</span></div>
<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span> </div>
-<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span> </div>
-<div class="line"><a name="l02343"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1executor.html"> 2343</a></span> <span class="keyword">namespace </span>executor {</div>
-<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span> </div>
-<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span> <span class="comment">// A generic mock HTTP executor to be used in tests with gmock.</span></div>
-<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Mesos, <span class="keyword">typename</span> Event></div>
-<div class="line"><a name="l02347"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html"> 2347</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html">MockHTTPExecutor</a></div>
-<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span> {</div>
-<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span> <span class="keyword">public</span>:</div>
-<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>  MOCK_METHOD1_T(connected, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*));</div>
-<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span>  MOCK_METHOD1_T(disconnected, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*));</div>
-<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span>  MOCK_METHOD2_T(subscribed, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Subscribed&));</div>
-<div class="line"><a name="l02353"></a><span class="lineno"> 2353</span>  MOCK_METHOD2_T(<a class="code" href="namespacemesos_1_1internal_1_1local.html#a49af0f1418069661970870214d98d0c4">launch</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Launch&));</div>
-<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span>  MOCK_METHOD2_T(launchGroup, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::LaunchGroup&));</div>
-<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span>  MOCK_METHOD2_T(<a class="code" href="namespacecgroups.html#ab75e1e2d1be63eec907bf12306a7c8a7">kill</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Kill&));</div>
-<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>  MOCK_METHOD2_T(message, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Message&));</div>
-<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>  MOCK_METHOD1_T(<a class="code" href="namespacemesos_1_1internal_1_1local.html#a7d7b8de28b47a3753dcd4b094d5e6c6e">shutdown</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*));</div>
-<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>  MOCK_METHOD2_T(<a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Error&));</div>
-<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>  MOCK_METHOD2_T(acknowledged,</div>
-<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span>  <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Acknowledged&));</div>
-<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span> </div>
-<div class="line"><a name="l02362"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html#a7a0163866d61cdfb213b30ad46c7221a"> 2362</a></span>  <span class="keywordtype">void</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html#a7a0163866d61cdfb213b30ad46c7221a">event</a>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>* mesos, <span class="keyword">const</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>& event)</div>
-<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span>  {</div>
-<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>  <span class="keywordflow">switch</span> (event.type()) {</div>
-<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>  <span class="keywordflow">case</span> Event::SUBSCRIBED:</div>
-<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>  subscribed(mesos, event.subscribed());</div>
-<div class="line"><a name="l02367"></a><span class="lineno"> 2367</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>  <span class="keywordflow">case</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1common.html#a5e5ce150a3e1b42ffcc0fd9e5ed659ab">Event::LAUNCH</a>:</div>
-<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>  <a class="code" href="namespacemesos_1_1internal_1_1local.html#a49af0f1418069661970870214d98d0c4">launch</a>(mesos, event.launch());</div>
-<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>  <span class="keywordflow">case</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1common.html#ac32a101c068371a2114b0f63a0c45db2">Event::LAUNCH_GROUP</a>:</div>
-<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span>  launchGroup(mesos, event.launch_group());</div>
+<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span> <span class="keyword">using</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1.html#ace393e1853ea8e2d46aec8db2312d7e4">MockHTTPScheduler</a> = <a class="code" href="classmesos_1_1internal_1_1tests_1_1scheduler_1_1MockHTTPScheduler.html">tests::scheduler::MockHTTPScheduler</a><</div>
+<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">mesos::v1::scheduler::Mesos</a>,</div>
+<div class="line"><a name="l02344"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1.html#ace393e1853ea8e2d46aec8db2312d7e4"> 2344</a></span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">mesos::v1::scheduler::Event</a>>;</div>
+<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span> </div>
+<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span> } <span class="comment">// namespace v1 {</span></div>
+<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span> </div>
+<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span> </div>
+<div class="line"><a name="l02349"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1executor.html"> 2349</a></span> <span class="keyword">namespace </span>executor {</div>
+<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span> </div>
+<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span> <span class="comment">// A generic mock HTTP executor to be used in tests with gmock.</span></div>
+<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Mesos, <span class="keyword">typename</span> Event></div>
+<div class="line"><a name="l02353"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html"> 2353</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html">MockHTTPExecutor</a></div>
+<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span> {</div>
+<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span>  MOCK_METHOD1_T(connected, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*));</div>
+<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span>  MOCK_METHOD1_T(disconnected, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*));</div>
+<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span>  MOCK_METHOD2_T(subscribed, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Subscribed&));</div>
+<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span>  MOCK_METHOD2_T(<a class="code" href="namespacemesos_1_1internal_1_1local.html#a49af0f1418069661970870214d98d0c4">launch</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Launch&));</div>
+<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span>  MOCK_METHOD2_T(launchGroup, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::LaunchGroup&));</div>
+<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span>  MOCK_METHOD2_T(<a class="code" href="namespacecgroups.html#ab75e1e2d1be63eec907bf12306a7c8a7">kill</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Kill&));</div>
+<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span>  MOCK_METHOD2_T(message, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Message&));</div>
+<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span>  MOCK_METHOD1_T(<a class="code" href="namespacemesos_1_1internal_1_1local.html#a7d7b8de28b47a3753dcd4b094d5e6c6e">shutdown</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*));</div>
+<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>  MOCK_METHOD2_T(<a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>, <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Error&));</div>
+<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>  MOCK_METHOD2_T(acknowledged,</div>
+<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>  <span class="keywordtype">void</span>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>*, <span class="keyword">const</span> <span class="keyword">typename</span> Event::Acknowledged&));</div>
+<div class="line"><a name="l02367"></a><span class="lineno"> 2367</span> </div>
+<div class="line"><a name="l02368"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html#a7a0163866d61cdfb213b30ad46c7221a"> 2368</a></span>  <span class="keywordtype">void</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html#a7a0163866d61cdfb213b30ad46c7221a">event</a>(<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>* mesos, <span class="keyword">const</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>& event)</div>
+<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span>  {</div>
+<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span>  <span class="keywordflow">switch</span> (event.type()) {</div>
+<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span>  <span class="keywordflow">case</span> Event::SUBSCRIBED:</div>
+<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span>  subscribed(mesos, event.subscribed());</div>
<div class="line"><a name="l02373"></a><span class="lineno"> 2373</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>  <span class="keywordflow">case</span> <a class="code" href="namespacemesos_1_1internal_1_1capabilities.html#abf44ee3490d4ec99e8549060bb8c9f58aa496820d9b769075ac3f2e157145f7d9">Event::KILL</a>:</div>
-<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>  <a class="code" href="namespacecgroups.html#ab75e1e2d1be63eec907bf12306a7c8a7">kill</a>(mesos, event.kill());</div>
+<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span>  <span class="keywordflow">case</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1common.html#a5e5ce150a3e1b42ffcc0fd9e5ed659ab">Event::LAUNCH</a>:</div>
+<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span>  <a class="code" href="namespacemesos_1_1internal_1_1local.html#a49af0f1418069661970870214d98d0c4">launch</a>(mesos, event.launch());</div>
<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>  <span class="keywordflow">case</span> Event::ACKNOWLEDGED:</div>
-<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>  acknowledged(mesos, event.acknowledged());</div>
+<div class="line"><a name="l02377"></a><span class="lineno"> 2377</span>  <span class="keywordflow">case</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1common.html#ac32a101c068371a2114b0f63a0c45db2">Event::LAUNCH_GROUP</a>:</div>
+<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span>  launchGroup(mesos, event.launch_group());</div>
<div class="line"><a name="l02379"></a><span class="lineno"> 2379</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>  <span class="keywordflow">case</span> Event::MESSAGE:</div>
-<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>  message(mesos, event.message());</div>
+<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span>  <span class="keywordflow">case</span> <a class="code" href="namespacemesos_1_1internal_1_1capabilities.html#abf44ee3490d4ec99e8549060bb8c9f58aa496820d9b769075ac3f2e157145f7d9">Event::KILL</a>:</div>
+<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span>  <a class="code" href="namespacecgroups.html#ab75e1e2d1be63eec907bf12306a7c8a7">kill</a>(mesos, event.kill());</div>
<div class="line"><a name="l02382"></a><span class="lineno"> 2382</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>  <span class="keywordflow">case</span> Event::SHUTDOWN:</div>
-<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>  <a class="code" href="namespacemesos_1_1internal_1_1local.html#a7d7b8de28b47a3753dcd4b094d5e6c6e">shutdown</a>(mesos);</div>
+<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span>  <span class="keywordflow">case</span> Event::ACKNOWLEDGED:</div>
+<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span>  acknowledged(mesos, event.acknowledged());</div>
<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>  <span class="keywordflow">case</span> Event::ERROR:</div>
-<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span>  <a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>(mesos, event.error());</div>
+<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span>  <span class="keywordflow">case</span> Event::MESSAGE:</div>
+<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span>  message(mesos, event.message());</div>
<div class="line"><a name="l02388"></a><span class="lineno"> 2388</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02389"></a><span class="lineno"> 2389</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerouting_1_1diagnosis_1_1socket_1_1state.html#a4cceb5a8a4b3f5e1323fdf4a14c5d2a6">Event::UNKNOWN</a>:</div>
-<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>  LOG(FATAL) << <span class="stringliteral">"Received unexpected UNKNOWN event"</span>;</div>
+<div class="line"><a name="l02389"></a><span class="lineno"> 2389</span>  <span class="keywordflow">case</span> Event::SHUTDOWN:</div>
+<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>  <a class="code" href="namespacemesos_1_1internal_1_1local.html#a7d7b8de28b47a3753dcd4b094d5e6c6e">shutdown</a>(mesos);</div>
<div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>  <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>  }</div>
-<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>  }</div>
-<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span> };</div>
-<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span> </div>
-<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span> </div>
-<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span> <span class="comment">// A generic testing interface for the executor library that can be used to</span></div>
-<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span> <span class="comment">// test the library across various versions.</span></div>
-<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Mesos, <span class="keyword">typename</span> Event></div>
-<div class="line"><a name="l02400"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html"> 2400</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html">TestMesos</a> : <span class="keyword">public</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a></div>
-<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span> {</div>
-<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span> <span class="keyword">public</span>:</div>
-<div class="line"><a name="l02403"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html#a471ed4b7b92ec0c3a61e75b6accc3e91"> 2403</a></span>  <a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html#a471ed4b7b92ec0c3a61e75b6accc3e91">TestMesos</a>(</div>
-<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>  <a class="code" href="namespacemesos.html#a13035ce0cc66cca4a467787b4716039e">ContentType</a> contentType,</div>
-<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>  <span class="keyword">const</span> std::shared_ptr<<a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html">MockHTTPExecutor<Mesos, Event></a>>& _executor)</div>
-<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>  : <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>(</div>
-<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span>  contentType,</div>
-<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html">MockHTTPExecutor</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::connected,</div>
-<div class="line"><a name="l02409"></a><span class="lineno"> 2409</span>  _executor,</div>
-<div class="line"><a name="l02410"></a><span class="lineno"> 2410</span>  this),</div>
-<div class="line"><a name="l02411"></a><span class="lineno"> 2411</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1MockHTTPExecutor.html">MockHTTPExecutor</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::disconnected,</div>
-<div class="line"><a name="l02412"></a><span class="lineno"> 2412</span>  _executor,</div>
-<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span>  this),</div>
-<div class="line"><a name="l02414"></a><span class="lineno"> 2414</span>  lambda::<a class="code" href="namespaceprocess_1_1network.html#ad067110a4b38cc83785a43f49bf6c8e2">bind</a>(&<a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html">TestMesos</a><<a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a>, <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a>>::events,</div>
-<div class="line"><a name="l02415"></a><span class="lineno"> 2415</span>  this,</div>
-<div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>  lambda::_1)),</div>
-<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>  executor(_executor) {}</div>
-<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span> </div>
-<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span> <span class="keyword">protected</span>:</div>
-<div class="line"><a name="l02420"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html#a228e6f122e4674340978f1e8381ab62b"> 2420</a></span>  <span class="keywordtype">void</span> <a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html#a228e6f122e4674340978f1e8381ab62b">events</a>(std::queue<Event> events)</div>
-<div class="line"><a name="l02421"></a><span class="lineno"> 2421</span>  {</div>
-<div class="line"><a name="l02422"></a><span class="lineno"> 2422</span>  <span class="keywordflow">while</span> (!events.empty()) {</div>
-<div class="line"><a name="l02423"></a><span class="lineno"> 2423</span>  <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#acd3fa8addac36f513726743665631d79">Event</a> <span class="keyword">event</span> = std::move(events.front());</div>
-<div class="line"><a name="l02424"></a><span class="lineno"> 2424</span>  events.pop();</div>
-<div class="line"><a name="l02425"></a><span class="lineno"> 2425</span>  executor->event(<span class="keyword">this</span>, event);</div>
-<div class="line"><a name="l02426"></a><span class="lineno"> 2426</span>  }</div>
-<div class="line"><a name="l02427"></a><span class="lineno"> 2427</span>  }</div>
-<div class="line"><a name="l02428"></a><span class="lineno"> 2428</span> </div>
-<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span> <span class="keyword">private</span>:</div>
-<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>  <span class="comment">// TODO(bmahler): This is a shared pointer because the `Mesos`</span></div>
-<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span>  <span class="comment">// library copies the pointer into callbacks that can execute</span></div>
-<div class="line"><a name="l02432"></a><span class="lineno"> 2432</span>  <span class="comment">// after `Mesos` is destructed. We can avoid this by ensuring</span></div>
-<div class="line"><a name="l02433"></a><span class="lineno"> 2433</span>  <span class="comment">// that `~Mesos()` blocks until deferred callbacks are cleared</span></div>
-<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>  <span class="comment">// (merely grabbing the `process::Mutex` lock is sufficient).</span></div>
-<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>  <span class="comment">// The `Mesos` library can also provide a `Future<Nothing> stop()`</span></div>
-<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>  <span class="comment">// to allow callers to wait for all events to be flushed.</span></div>
-<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>  std::shared_ptr<MockHTTPExecutor<Mesos, Event>> executor;</div>
-<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span> };</div>
-<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span> </div>
-<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span> } <span class="comment">// namespace executor {</span></div>
-<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span> </div>
-<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span> </div>
-<div class="line"><a name="l02443"></a><span class="lineno"> 2443</span> <span class="keyword">namespace </span>v1 {</div>
-<div class="line"><a name="l02444"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1executor.html"> 2444</a></span> <span class="keyword">namespace </span>executor {</div>
+<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>  <span class="keywordflow">case</span> Event::ERROR:</div>
+<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>  <a class="code" href="namespacemesos_1_1internal_1_1slave_1_1cni_1_1spec.html#ae58e703656ab4a1bd5d9870441236727">error</a>(mesos, event.error());</div>
+<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>  <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span>  <span class="keywordflow">case</span> <a class="code" href="namespacerouting_1_1diagnosis_1_1socket_1_1state.html#a4cceb5a8a4b3f5e1323fdf4a14c5d2a6">Event::UNKNOWN</a>:</div>
+<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>  LOG(FATAL) << <span class="stringliteral">"Received unexpected UNKNOWN event"</span>;</div>
+<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>  <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>  }</div>
+<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>  }</div>
+<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span> };</div>
+<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span> </div>
+<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span> </div>
+<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span> <span class="comment">// A generic testing interface for the executor library that can be used to</span></div>
+<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span> <span class="comment">// test the library across various versions.</span></div>
+<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span> <span class="keyword">template</span> <<span class="keyword">typename</span> Mesos, <span class="keyword">typename</span> Event></div>
+<div class="line"><a name="l02406"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html"> 2406</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1tests_1_1executor_1_1TestMesos.html">TestMesos</a> : <span class="keyword">public</span> <a class="code" href="namespacemesos_1_1internal_1_1tests_1_1v1_1_1scheduler.html#ab87ee31e10bdc282bae31a2c973602df">Mesos</a></div>
+<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span> {</div>
+<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span> <span class="keyword">public
<TRUNCATED>