class ZipkinDjangoRequestProcessorTestCase(DjangoZipkinTestHelpers, TestCase): def setUp(self): self.request_factory = RequestFactory() self.processor = ZipkinDjangoRequestParser() def test_header_keys(self): transform = lambda s: 'HTTP_' + s.upper().replace('-', '_') self.assertEqual(ZipkinDjangoRequestParser.trace_id_hdr_name, transform("X-B3-TraceId")) self.assertEqual(ZipkinDjangoRequestParser.span_id_hdr_name, transform("X-B3-SpanId")) self.assertEqual(ZipkinDjangoRequestParser.parent_span_id_hdr_name, transform("X-B3-ParentSpanId")) self.assertEqual(ZipkinDjangoRequestParser.sampled_hdr_name, transform("X-B3-Sampled")) self.assertEqual(ZipkinDjangoRequestParser.flags_hdr_name, transform("X-B3-Flags")) def test_all_fields_filled(self): trace_id = ZipkinId.from_binary(42) span_id = ZipkinId.from_binary(-42) parent_span_id = ZipkinId.from_binary(53) request = self.request_factory.get( '/', **{ ZipkinDjangoRequestParser.trace_id_hdr_name: trace_id.get_hex(), ZipkinDjangoRequestParser.span_id_hdr_name: span_id.get_hex(), ZipkinDjangoRequestParser.parent_span_id_hdr_name: parent_span_id.get_hex(), ZipkinDjangoRequestParser.sampled_hdr_name: 'true', ZipkinDjangoRequestParser.flags_hdr_name: '0' }) self.assertZipkinDataEquals( self.processor.get_zipkin_data(request), ZipkinData(trace_id=trace_id, span_id=span_id, parent_span_id=parent_span_id, sampled=True, flags=False)) def test_no_fields_filled(self): self.assertZipkinDataEquals( self.processor.get_zipkin_data(self.request_factory.get('/')), ZipkinData())
class ZipkinDjangoRequestProcessorTestCase(DjangoZipkinTestHelpers, TestCase): def setUp(self): self.request_factory = RequestFactory() self.processor = ZipkinDjangoRequestParser() def test_header_keys(self): transform = lambda s: 'HTTP_' + s.upper().replace('-', '_') self.assertEqual(ZipkinDjangoRequestParser.trace_id_hdr_name, transform("X-B3-TraceId")) self.assertEqual(ZipkinDjangoRequestParser.span_id_hdr_name, transform("X-B3-SpanId")) self.assertEqual(ZipkinDjangoRequestParser.parent_span_id_hdr_name, transform("X-B3-ParentSpanId")) self.assertEqual(ZipkinDjangoRequestParser.sampled_hdr_name, transform("X-B3-Sampled")) self.assertEqual(ZipkinDjangoRequestParser.flags_hdr_name, transform("X-B3-Flags")) def test_all_fields_filled(self): trace_id = ZipkinId.from_binary(42) span_id = ZipkinId.from_binary(-42) parent_span_id = ZipkinId.from_binary(53) request = self.request_factory.get('/', **{ ZipkinDjangoRequestParser.trace_id_hdr_name: trace_id.get_hex(), ZipkinDjangoRequestParser.span_id_hdr_name: span_id.get_hex(), ZipkinDjangoRequestParser.parent_span_id_hdr_name: parent_span_id.get_hex(), ZipkinDjangoRequestParser.sampled_hdr_name: 'true', ZipkinDjangoRequestParser.flags_hdr_name: '0' }) self.assertZipkinDataEquals( self.processor.get_zipkin_data(request), ZipkinData( trace_id=trace_id, span_id=span_id, parent_span_id=parent_span_id, sampled=True, flags=False ) ) def test_no_fields_filled(self): self.assertZipkinDataEquals( self.processor.get_zipkin_data(self.request_factory.get('/')), ZipkinData() )
def setUp(self): self.request_factory = RequestFactory() self.processor = ZipkinDjangoRequestParser()
def test_incoming_span_id_to_parent_span_id(self): self.middleware.request_parser = ZipkinDjangoRequestParser() self.middleware.process_request( self.request_factory.get('/', HTTP_X_B3_SPANID='000000000000002a')) self.assertEqual( self.store.set.call_args[0][0].parent_span_id.get_binary(), 42)
def setUp(self): self.request_factory = RequestFactory() self.processor = ZipkinDjangoRequestParser()