@@ -53,6 +53,22 @@ def test_float_gauge(self):
53
53
""" )
54
54
self .assertEqual ([GaugeMetricFamily ("a" , "help" , value = 1.2 )], list (families ))
55
55
56
+ def test_leading_zeros_simple_gauge (self ):
57
+ families = text_string_to_metric_families ("""# TYPE a gauge
58
+ # HELP a help
59
+ a 0000000000000000000000000000000000000000001
60
+ # EOF
61
+ """ )
62
+ self .assertEqual ([GaugeMetricFamily ("a" , "help" , value = 1 )], list (families ))
63
+
64
+ def test_leading_zeros_float_gauge (self ):
65
+ families = text_string_to_metric_families ("""# TYPE a gauge
66
+ # HELP a help
67
+ a 0000000000000000000000000000000000000000001.2e-1
68
+ # EOF
69
+ """ )
70
+ self .assertEqual ([GaugeMetricFamily ("a" , "help" , value = .12 )], list (families ))
71
+
56
72
def test_nan_gauge (self ):
57
73
families = text_string_to_metric_families ("""# TYPE a gauge
58
74
# HELP a help
@@ -610,14 +626,25 @@ def test_invalid_input(self):
610
626
('a 1\n # EOF\n ' ),
611
627
('a 1\t \n # EOF\n ' ),
612
628
('a 1 \n # EOF\n ' ),
629
+ ('a 1_2\n # EOF\n ' ),
630
+ ('a 0x1p-3\n # EOF\n ' ),
631
+ ('a 0x1P-3\n # EOF\n ' ),
632
+ ('a 0b1\n # EOF\n ' ),
633
+ ('a 0B1\n # EOF\n ' ),
634
+ ('a 0x1\n # EOF\n ' ),
635
+ ('a 0X1\n # EOF\n ' ),
636
+ ('a 0o1\n # EOF\n ' ),
637
+ ('a 0O1\n # EOF\n ' ),
613
638
# Bad timestamp.
614
639
('a 1 z\n # EOF\n ' ),
615
640
('a 1 1z\n # EOF\n ' ),
641
+ ('a 1 1_2\n # EOF\n ' ),
616
642
('a 1 1.1.1\n # EOF\n ' ),
617
643
('a 1 NaN\n # EOF\n ' ),
618
644
('a 1 Inf\n # EOF\n ' ),
619
645
('a 1 +Inf\n # EOF\n ' ),
620
646
('a 1 -Inf\n # EOF\n ' ),
647
+ ('a 1 0x1p-3\n # EOF\n ' ),
621
648
# Bad exemplars.
622
649
('# TYPE a histogram\n a_bucket{le="+Inf"} 1 #\n # EOF\n ' ),
623
650
('# TYPE a histogram\n a_bucket{le="+Inf"} 1# {} 1\n # EOF\n ' ),
@@ -627,6 +654,8 @@ def test_invalid_input(self):
627
654
('# TYPE a histogram\n a_bucket{le="+Inf"} 1 # {} 1 1 \n # EOF\n ' ),
628
655
('# TYPE a histogram\n a_bucket{le="+Inf"} 1 # '
629
656
'{a="2345678901234567890123456789012345678901234567890123456789012345"} 1 1\n # EOF\n ' ),
657
+ ('# TYPE a histogram\n a_bucket{le="+Inf"} 1 # {} 0x1p-3\n # EOF\n ' ),
658
+ ('# TYPE a histogram\n a_bucket{le="+Inf"} 1 # {} 1 0x1p-3\n # EOF\n ' ),
630
659
# Exemplars on unallowed samples.
631
660
('# TYPE a histogram\n a_sum 1 # {a="b"} 0.5\n # EOF\n ' ),
632
661
('# TYPE a gaugehistogram\n a_sum 1 # {a="b"} 0.5\n # EOF\n ' ),
@@ -695,7 +724,7 @@ def test_invalid_input(self):
695
724
('# TYPE a gauge\n a 0\n a 0 0\n # EOF\n ' ),
696
725
('# TYPE a gauge\n a 0 0\n a 0\n # EOF\n ' ),
697
726
]:
698
- with self .assertRaises (ValueError ):
727
+ with self .assertRaises (ValueError , msg = case ):
699
728
list (text_string_to_metric_families (case ))
700
729
701
730
@unittest .skipIf (sys .version_info < (2 , 7 ), "float repr changed from 2.6 to 2.7" )
0 commit comments