Skip to content

Instantly share code, notes, and snippets.

@atidix

atidix/Test.diff Secret

Created June 16, 2015 16:34
Show Gist options
  • Save atidix/8d1de11f28744e934496 to your computer and use it in GitHub Desktop.
Save atidix/8d1de11f28744e934496 to your computer and use it in GitHub Desktop.
diff --git a/src/examples/test_framework.cpp b/src/examples/test_framework.cpp
index 99b981d..d342617 100644
--- a/src/examples/test_framework.cpp
+++ b/src/examples/test_framework.cpp
@@ -54,6 +54,8 @@ using mesos::Resources;
const int32_t CPUS_PER_TASK = 1;
const int32_t MEM_PER_TASK = 128;
+static Option<FrameworkID> FrameworkId;
+
class TestScheduler : public Scheduler
{
public:
@@ -71,10 +73,11 @@ public:
virtual ~TestScheduler() {}
virtual void registered(SchedulerDriver*,
- const FrameworkID&,
+ const FrameworkID& frameworkId,
const MasterInfo&)
{
- cout << "Registered!" << endl;
+ FrameworkId = frameworkId;
+ cout << "Registered with id " << frameworkId.value() << "!" << endl;
}
virtual void reregistered(SchedulerDriver*, const MasterInfo& masterInfo) {}
@@ -153,7 +156,7 @@ public:
}
if (tasksFinished == totalTasks) {
- driver->stop();
+ driver->stop(true);
}
}
@@ -237,9 +240,15 @@ int main(int argc, char** argv)
executor.set_name("Test Executor (C++)");
executor.set_source("cpp_test");
+ int status = 0;
+
+ for (size_t r = 0; r < 2; ++r) {
FrameworkInfo framework;
+ if (FrameworkId.isSome()) {
+ framework.mutable_id()->set_value(FrameworkId.get().value());
+ }
framework.set_user(""); // Have Mesos fill in the current user.
- framework.set_name("Test Framework (C++)");
+ framework.set_name("Test Framework [" + stringify(r + 1) + "] (C++)");
framework.set_role(role);
value = os::getenv("MESOS_CHECKPOINT");
@@ -294,11 +303,13 @@ int main(int argc, char** argv)
implicitAcknowledgements);
}
- int status = driver->run() == DRIVER_STOPPED ? 0 : 1;
+ status = driver->run() == DRIVER_STOPPED ? 0 : 1;
// Ensure that the driver process terminates.
- driver->stop();
+ driver->stop(true);
delete driver;
+ }
+
return status;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment