@@ -13,6 +13,16 @@ def test_validate_valid(self):
1313 traceparent = "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
1414 self .assertEqual (traceparent , self .tp .validate (traceparent ))
1515
16+ def test_validate_newer_version (self ):
17+ # Although the incoming traceparent header sports a newer version number, we should still be able to parse the
18+ # parts that we understand (and consider it valid).
19+ traceparent = "ff-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01-12345-abcd"
20+ self .assertEqual (traceparent , self .tp .validate (traceparent ))
21+
22+ def test_validate_unknown_flags (self ):
23+ traceparent = "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-ee"
24+ self .assertEqual (traceparent , self .tp .validate (traceparent ))
25+
1626 def test_validate_invalid_traceparent (self ):
1727 traceparent = "00-4bxxxxx3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01"
1828 self .assertIsNone (self .tp .validate (traceparent ))
@@ -35,6 +45,22 @@ def test_get_traceparent_fields_unsampled(self):
3545 self .assertEqual (parent_id , "00f067aa0ba902b7" )
3646 self .assertFalse (sampled_flag )
3747
48+ def test_get_traceparent_fields_newer_version (self ):
49+ # Although the incoming traceparent header sports a newer version number, we should still be able to parse the
50+ # parts that we understand (and consider it valid).
51+ traceparent = "ff-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01-12345-abcd"
52+ version , trace_id , parent_id , sampled_flag = self .tp .get_traceparent_fields (traceparent )
53+ self .assertEqual (trace_id , "4bf92f3577b34da6a3ce929d0e0e4736" )
54+ self .assertEqual (parent_id , "00f067aa0ba902b7" )
55+ self .assertTrue (sampled_flag )
56+
57+ def test_get_traceparent_fields_unknown_flags (self ):
58+ traceparent = "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-ff"
59+ version , trace_id , parent_id , sampled_flag = self .tp .get_traceparent_fields (traceparent )
60+ self .assertEqual (trace_id , "4bf92f3577b34da6a3ce929d0e0e4736" )
61+ self .assertEqual (parent_id , "00f067aa0ba902b7" )
62+ self .assertTrue (sampled_flag )
63+
3864 def test_get_traceparent_fields_None_input (self ):
3965 traceparent = None
4066 version , trace_id , parent_id , sampled_flag = self .tp .get_traceparent_fields (traceparent )
0 commit comments