def test__build_header_with_context(self, mockgci): procmock = Mock() procmock.get_context.return_value = { "ion-actor-id": sentinel.ion_actor_id, "ion-actor-roles": sentinel.ion_actor_roles, "ion-actor-tokens": sentinel.ion_actor_tokens, "expiry": sentinel.expiry, "origin-container-id": sentinel.container_id, } ep = ProcessEndpointUnitMixin(process=procmock) ep.channel = Mock(spec=SendChannel) header = ep._build_header(sentinel.raw_msg) self.assertIn("ion-actor-id", header) self.assertIn("ion-actor-roles", header) self.assertIn("ion-actor-tokens", header) self.assertIn("expiry", header) self.assertIn("origin-container-id", header) self.assertEquals(header["ion-actor-id"], sentinel.ion_actor_id) self.assertEquals(header["ion-actor-roles"], sentinel.ion_actor_roles) self.assertEquals(header["ion-actor-tokens"], sentinel.ion_actor_tokens) self.assertEquals(header["expiry"], sentinel.expiry) self.assertEquals(header["origin-container-id"], sentinel.container_id)
def test__intercept_msg_out(self, mockpi): mockpi.return_value = sentinel.inv2 ep = ProcessEndpointUnitMixin(process=sentinel.proc) ep._intercept_msg_out(sentinel.inv) # order is important here! proc first, then msg mockpi.assert_has_calls([call(sentinel.proc_outgoing, sentinel.inv), call(sentinel.msg_outgoing, sentinel.inv2)])
def test__intercept_msg_in(self, mockpi): mockpi.return_value = sentinel.inv2 ep = ProcessEndpointUnitMixin(process=sentinel.proc) ep._intercept_msg_in(sentinel.inv) # order is important here! msg first, then proc mockpi.assert_has_calls( [call(sentinel.msg_incoming, sentinel.inv), call(sentinel.proc_incoming, sentinel.inv2)] )
def test__build_header_no_context(self, mockgci): ep = ProcessEndpointUnitMixin(process=Mock()) header = ep._build_header(sentinel.raw_msg) self.assertIn('sender-name', header) self.assertIn('sender', header) self.assertIn('sender-type', header) self.assertNotIn('sender-service', header) self.assertIn('origin-container-id', header) self.assertEquals(header['sender-name'], ep._process.name) self.assertEquals(header['sender'], ep._process.id) self.assertEquals(header['sender-type'], ep._process.process_type) self.assertEquals(header['origin-container-id'], mockgci().id)
def test__build_header_no_context(self, mockgci): ep = ProcessEndpointUnitMixin(process=Mock()) header = ep._build_header(sentinel.raw_msg) self.assertIn("sender-name", header) self.assertIn("sender", header) self.assertIn("sender-type", header) self.assertNotIn("sender-service", header) self.assertIn("origin-container-id", header) self.assertEquals(header["sender-name"], ep._process.name) self.assertEquals(header["sender"], ep._process.id) self.assertEquals(header["sender-type"], ep._process.process_type) self.assertEquals(header["origin-container-id"], mockgci().id)
def test__build_header_service(self, mockgci): procmock = Mock() procmock.process_type = 'service' ep = ProcessEndpointUnitMixin(process=procmock) ep.channel = Mock(spec=SendChannel) header = ep._build_header(sentinel.raw_msg) self.assertIn('sender-name', header) self.assertIn('sender', header) self.assertIn('sender-type', header) self.assertIn('sender-service', header) self.assertIn('origin-container-id', header) self.assertEquals(header['sender-name'], ep._process.name) self.assertEquals(header['sender'], ep._process.id) self.assertEquals(header['sender-type'], ep._process.process_type) self.assertEquals(header['sender-service'], "%s,%s" % (ep.channel._send_name.exchange, procmock.name)) self.assertEquals(header['origin-container-id'], mockgci().id)
def test__build_header_service(self, mockgci): procmock = Mock() procmock.process_type = "service" ep = ProcessEndpointUnitMixin(process=procmock) ep.channel = Mock(spec=SendChannel) header = ep._build_header(sentinel.raw_msg) self.assertIn("sender-name", header) self.assertIn("sender", header) self.assertIn("sender-type", header) self.assertIn("sender-service", header) self.assertIn("origin-container-id", header) self.assertEquals(header["sender-name"], ep._process.name) self.assertEquals(header["sender"], ep._process.id) self.assertEquals(header["sender-type"], ep._process.process_type) self.assertEquals(header["sender-service"], "%s,%s" % (ep.channel._send_name.exchange, procmock.name)) self.assertEquals(header["origin-container-id"], mockgci().id)
def test__build_header_with_context(self, mockgci): procmock = Mock() procmock.get_context.return_value={'ion-actor-id': sentinel.ion_actor_id, 'ion-actor-roles': sentinel.ion_actor_roles, 'ion-actor-tokens': sentinel.ion_actor_tokens, 'expiry': sentinel.expiry, 'origin-container-id': sentinel.container_id} ep = ProcessEndpointUnitMixin(process=procmock) ep.channel = Mock(spec=SendChannel) header = ep._build_header(sentinel.raw_msg) self.assertIn('ion-actor-id', header) self.assertIn('ion-actor-roles', header) self.assertIn('ion-actor-tokens', header) self.assertIn('expiry', header) self.assertIn('origin-container-id', header) self.assertEquals(header['ion-actor-id'], sentinel.ion_actor_id) self.assertEquals(header['ion-actor-roles'], sentinel.ion_actor_roles) self.assertEquals(header['ion-actor-tokens'], sentinel.ion_actor_tokens) self.assertEquals(header['expiry'], sentinel.expiry) self.assertEquals(header['origin-container-id'], sentinel.container_id)
def test__get_sflow_manager(self): ep = ProcessEndpointUnitMixin(process=Mock()) self.assertEquals(ep._get_sflow_manager(), ep._process.container.sflow_manager)
def test__get_sample_name(self): ep = ProcessEndpointUnitMixin(process=Mock()) self.assertEquals(ep._get_sample_name(), str(ep._process.id))
def test__build_invocation(self, mockbi): ep = ProcessEndpointUnitMixin(process=sentinel.proc) ep._build_invocation(invother=sentinel.anything) mockbi.assert_called_once_with(ep, process=sentinel.proc, invother=sentinel.anything)
def test_init(self, mockep): ep = ProcessEndpointUnitMixin(process=sentinel.proc, other=sentinel.other) self.assertEquals(ep._process, sentinel.proc) mockep.assert_called_once_with(ep, other=sentinel.other)
def test__build_invocation(self, mockbi): ep = ProcessEndpointUnitMixin(process=sentinel.proc) ep._build_invocation(invother=sentinel.anything) mockbi.assert_called_once_with(ep, process=sentinel.proc, invother=sentinel.anything)
def test__get_sflow_manager(self): ep = ProcessEndpointUnitMixin(process=Mock()) self.assertEquals(ep._get_sflow_manager(), ep._process.container.sflow_manager)
def test__get_sample_name(self): ep = ProcessEndpointUnitMixin(process=Mock()) self.assertEquals(ep._get_sample_name(), str(ep._process.id))