Ejemplo n.º 1
0
    def test_mesos_executor_driver_init(self):
        os.environ['MESOS_SLAVE_PID'] = str(self.slave.pid)

        executor = Executor()
        driver = PesosExecutorDriver(executor, context=self.context)
        assert driver.start() == mesos_pb2.DRIVER_RUNNING
        assert driver.stop() == mesos_pb2.DRIVER_STOPPED
        assert driver.join() == mesos_pb2.DRIVER_STOPPED
Ejemplo n.º 2
0
  def test_mesos_executor_driver_init(self):
    os.environ['MESOS_SLAVE_PID'] = str(self.slave.pid)

    executor = Executor()
    driver = PesosExecutorDriver(executor, context=self.context)
    assert driver.start() == mesos_pb2.DRIVER_RUNNING
    assert driver.stop() == mesos_pb2.DRIVER_STOPPED
    assert driver.join() == mesos_pb2.DRIVER_STOPPED
Ejemplo n.º 3
0
def test_mesos_executor_driver_init():
  context = Context()
  context.start()

  # spawn slave
  slave = MockSlave()
  context.spawn(slave)

  os.environ['MESOS_SLAVE_PID'] = str(slave.pid)

  executor = Executor()
  driver = PesosExecutorDriver(executor, context=context)
  assert driver.start() == mesos.DRIVER_RUNNING
  assert driver.stop() == mesos.DRIVER_STOPPED
  assert driver.join() == mesos.DRIVER_STOPPED

  context.stop()
Ejemplo n.º 4
0
  def test_mesos_executor_register(self):
    os.environ['MESOS_SLAVE_PID'] = str(self.slave.pid)

    registered_event, registered_call, registered_side_effect = self.mock_method()
    executor = mock.create_autospec(Executor, spec_set=True)
    executor.registered = mock.Mock(side_effect=registered_side_effect)

    driver = PesosExecutorDriver(executor, context=self.context)
    assert driver.start() == mesos_pb2.DRIVER_RUNNING

    driver.executor_process.connected.wait(timeout=MAX_TIMEOUT)
    assert driver.executor_process.connected.is_set()

    registered_event.wait(timeout=MAX_TIMEOUT)
    assert registered_event.is_set()
    assert registered_call.mock_calls == [
        mock.call(driver, self.executor_info, self.framework_info, self.slave.slave_info)]

    assert driver.stop() == mesos_pb2.DRIVER_STOPPED
Ejemplo n.º 5
0
def test_mesos_executor_register():
  context = Context()
  context.start()

  # spawn slave
  slave = MockSlave()
  context.spawn(slave)

  os.environ['MESOS_SLAVE_PID'] = str(slave.pid)

  executor = mock.MagicMock()
  executor.registered = mock.MagicMock()

  driver = PesosExecutorDriver(executor, context=context)
  assert driver.start() == mesos.DRIVER_RUNNING

  command_info = mesos.CommandInfo(value='wat')
  framework_id = mesos.FrameworkID(value='fake_framework_id')
  executor_id = mesos.ExecutorID(value='fake_executor_id')
  executor_info = mesos.ExecutorInfo(
    executor_id=executor_id,
    framework_id=framework_id,
    command=command_info
  )
  framework_info = mesos.FrameworkInfo(user='******', name='fake_framework_name')

  slave.send_registered(
    driver.executor_process.pid,
    executor_info,
    framework_id,
    framework_info
  )

  driver.executor_process.connected.wait(timeout=1)
  assert driver.executor_process.connected.is_set()

  executor.registered.assert_called_with(driver, executor_info, framework_info, slave.slave_info)

  assert driver.stop() == mesos.DRIVER_STOPPED

  context.stop()
Ejemplo n.º 6
0
    def test_mesos_executor_register(self):
        os.environ['MESOS_SLAVE_PID'] = str(self.slave.pid)

        registered_event, registered_call, registered_side_effect = self.mock_method(
        )
        executor = mock.create_autospec(Executor, spec_set=True)
        executor.registered = mock.Mock(side_effect=registered_side_effect)

        driver = PesosExecutorDriver(executor, context=self.context)
        assert driver.start() == mesos_pb2.DRIVER_RUNNING

        driver.executor_process.connected.wait(timeout=MAX_TIMEOUT)
        assert driver.executor_process.connected.is_set()

        registered_event.wait(timeout=MAX_TIMEOUT)
        assert registered_event.is_set()
        assert registered_call.mock_calls == [
            mock.call(driver, self.executor_info, self.framework_info,
                      self.slave.slave_info)
        ]

        assert driver.stop() == mesos_pb2.DRIVER_STOPPED