@@ -128,6 +128,27 @@ BOOST_AUTO_TEST_CASE(TestDeviceMetricsInfo)
128128 BOOST_CHECK_EQUAL (result, true );
129129 result = DeviceMetricsHelper::processMetric (match, info);
130130 BOOST_CHECK_EQUAL (result, true );
131+ BOOST_CHECK_EQUAL (info.metricLabelsIdx .size (), 4 );
132+ BOOST_CHECK_EQUAL (info.metrics .size (), 4 );
133+ BOOST_CHECK_EQUAL (info.stringMetrics .size (), 1 );
134+ BOOST_CHECK_EQUAL (info.metrics [3 ].type , MetricType::String);
135+ BOOST_CHECK_EQUAL (info.metrics [3 ].storeIdx , 0 );
136+ BOOST_CHECK_EQUAL (info.metrics [3 ].pos , 1 );
137+
138+ // Parse a string metric with a file description in it
139+ memset (&match, 0 , sizeof (match));
140+ metric = " [METRIC] alien-file-name,1 alien:///alice/data/2015/LHC15o/000244918/pass5_lowIR/PWGZZ/Run3_Conversion/96_20201013-1346_child_1/0028/AO2D.root:/,631838549,ALICE::CERN::EOS 1789372895 hostname=test.cern.ch" ;
141+ result = DeviceMetricsHelper::parseMetric (metric, match);
142+ BOOST_CHECK_EQUAL (result, true );
143+ result = DeviceMetricsHelper::processMetric (match, info);
144+ BOOST_CHECK_EQUAL (result, true );
145+ BOOST_CHECK_EQUAL (info.metricLabelsIdx .size (), 5 );
146+ BOOST_CHECK_EQUAL (info.metrics .size (), 5 );
147+ BOOST_CHECK_EQUAL (info.stringMetrics .size (), 2 );
148+ BOOST_CHECK_EQUAL (info.metrics [4 ].type , MetricType::String);
149+ BOOST_CHECK_EQUAL (info.metrics [4 ].storeIdx , 1 );
150+ BOOST_CHECK_EQUAL (info.metrics [4 ].pos , 1 );
151+ BOOST_CHECK_EQUAL (std::string (info.stringMetrics [1 ][0 ].data ), std::string (" alien:///alice/data/2015/LHC15o/000244918/pass5_lowIR/PWGZZ/Run3_Conversion/96_20201013-1346_child_1/0028/AO2D.root:/,631838549,ALICE::CERN::EOS" ));
131152}
132153
133154BOOST_AUTO_TEST_CASE (TestDeviceMetricsInfo2)
0 commit comments