class_docstr: Test class for PhantomOutput
class_docstr_tok: ["Test","class","for","PhantomOutput"]
docstr: PhantomOutput - Dispatch Success, Existing Container
docstr_tok: ["PhantomOutput","-","Dispatch","Success",",","Existing","Container"]
code: def test_dispatch_existing_container(
      self, post_mock, get_mock, log_mock
  ):
      """PhantomOutput - Dispatch Success, Existing Container"""
      # _check_container_exists
      get_mock.return_value.status_code = 200
      get_mock.return_value.json.return_value = {
          "count": 1,
          "data": [{"id": 1948}],
      }
      # dispatch
      post_mock.return_value.status_code = 200
  
      assert_true(self._dispatcher.dispatch(get_alert(), self.OUTPUT))
  
      log_mock.assert_called_with(
          "Successfully sent alert to %s:%s",
          self.SERVICE,
          self.DESCRIPTOR,
      )
  
file_path: streamalert/tests/unit/streamalert/alert_processor/outputs/test_phantom.py
imports: from mock import call, patch, PropertyMock, Mock, MagicMock
  from nose.tools import assert_false, assert_true
  from streamalert.alert_processor.outputs.phantom import PhantomOutput
  from tests.unit.streamalert.alert_processor.helpers import get_alert
label_desc: Use image node_id 2 for calling the TestPhantomOutput obj's underlying member method code with example usage: obj.test_dispatch_existing_container(post_mock, get_mock, log_mock) without return types