From d55af50722c66950c5022bf3d28383ef680603f3 Mon Sep 17 00:00:00 2001 From: danibrutal Date: Thu, 18 Jun 2015 15:05:04 +0200 Subject: [PATCH] Throws InfluxDBClientError if there was an error after quering --- src/Leaseweb/InfluxDB/ResultSet.php | 7 +++++++ tests/unit/ResultSetTest.php | 21 +++++++++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/src/Leaseweb/InfluxDB/ResultSet.php b/src/Leaseweb/InfluxDB/ResultSet.php index fedcbe3bee..6a5a1deb84 100644 --- a/src/Leaseweb/InfluxDB/ResultSet.php +++ b/src/Leaseweb/InfluxDB/ResultSet.php @@ -73,11 +73,18 @@ class ResultSet * results is an array of objects, one for each query, * each containing the keys for a series * + * @throws InfluxDBClientError + * * @return array $series */ public function getSeries() { $pickSeries = function ($object) { + + if (isset($object['error'])) { + throw new InfluxDBClientError($object['error']); + } + return $object['series']; }; diff --git a/tests/unit/ResultSetTest.php b/tests/unit/ResultSetTest.php index 0d0aee18cc..ce1471d10e 100644 --- a/tests/unit/ResultSetTest.php +++ b/tests/unit/ResultSetTest.php @@ -40,6 +40,27 @@ EOD; new ResultSet($errorResult); } + /** + * Throws Exception if something went wrong with influxDB after processing the query + * @expectedException \Leaseweb\InfluxDB\InfluxDBClientError + */ + public function testThrowsInfluxDBExceptionIfAnyErrorInSeries() + { + + $errorResult = <<getSeries(); + } + /** * We can get points from measurement */