Merge "NSB test: remove vld_id it is not needed"
[yardstick.git] / tests / unit / dispatcher / test_influxdb.py
index 5553c86..7ebe8c9 100644 (file)
 
 # Unittest for yardstick.dispatcher.influxdb
 
-import mock
+from __future__ import absolute_import
 import unittest
 
+
+try:
+    from unittest import mock
+except ImportError:
+    import mock
+
+from yardstick import _init_logging
+_init_logging()
+
 from yardstick.dispatcher.influxdb import InfluxdbDispatcher
 
+
 class InfluxdbDispatcherTestCase(unittest.TestCase):
 
     def setUp(self):
@@ -24,7 +34,9 @@ class InfluxdbDispatcherTestCase(unittest.TestCase):
             "context_cfg": {
                 "host": {
                     "ip": "10.229.43.154",
-                    "key_filename": "/root/yardstick/yardstick/resources/files/yardstick_key",
+                    "key_filename":
+                        "/root/yardstick/yardstick/resources/files"
+                        "/yardstick_key",
                     "name": "kvm.LF",
                     "user": "root"
                 },
@@ -35,7 +47,8 @@ class InfluxdbDispatcherTestCase(unittest.TestCase):
             "scenario_cfg": {
                 "runner": {
                     "interval": 1,
-                    "object": "yardstick.benchmark.scenarios.networking.ping.Ping",
+                    "object": "yardstick.benchmark.scenarios.networking.ping"
+                              ".Ping",
                     "output_filename": "/tmp/yardstick.out",
                     "runner_id": 8921,
                     "duration": 10,
@@ -63,62 +76,44 @@ class InfluxdbDispatcherTestCase(unittest.TestCase):
             },
             "runner_id": 8921
         }
-        self.data3 ={
-            "benchmark": {
-                "data": {
-                    "mpstat": {
-                        "cpu0": {
-                            "%sys": "0.00",
-                            "%idle": "99.00"
-                        },
-                        "loadavg": [
-                            "1.09",
-                            "0.29"
-                        ]
-                    },
-                    "rtt": "1.03"
-                }
-            }
-        }
-
-    def test_record_result_data_no_target(self):
-        influxdb = InfluxdbDispatcher(None)
-        influxdb.target = ''
-        self.assertEqual(influxdb.record_result_data(self.data1), -1)
 
-    def test_record_result_data_no_case_name(self):
-        influxdb = InfluxdbDispatcher(None)
-        self.assertEqual(influxdb.record_result_data(self.data2), -1)
+        self.yardstick_conf = {'dispatcher_influxdb': {}}
 
     @mock.patch('yardstick.dispatcher.influxdb.requests')
     def test_record_result_data(self, mock_requests):
         type(mock_requests.post.return_value).status_code = 204
-        influxdb = InfluxdbDispatcher(None)
-        self.assertEqual(influxdb.record_result_data(self.data1), 0)
-        self.assertEqual(influxdb.record_result_data(self.data2), 0)
-        self.assertEqual(influxdb.flush_result_data(), 0)
-
-    def test__dict_key_flatten(self):
-        line = 'mpstat.loadavg1=0.29,rtt=1.03,mpstat.loadavg0=1.09,mpstat.cpu0.%idle=99.00,mpstat.cpu0.%sys=0.00'
-        influxdb = InfluxdbDispatcher(None)
-        flattened_data = influxdb._dict_key_flatten(self.data3['benchmark']['data'])
-        result = ",".join([k+"="+v for k, v in flattened_data.items()])
-        self.assertEqual(result, line)
+        influxdb = InfluxdbDispatcher(self.yardstick_conf)
+        data = {
+            'status': 1,
+            'result': {
+                'criteria': 'PASS',
+                'info': {
+                },
+                'task_id': 'b9e2bbc2-dfd8-410d-8c24-07771e9f7979',
+                'testcases': {
+                }
+            }
+        }
+        self.assertEqual(influxdb.flush_result_data(data), 0)
 
     def test__get_nano_timestamp(self):
-        influxdb = InfluxdbDispatcher(None)
-        results = {'benchmark': {'timestamp': '1451461248.925574'}}
-        self.assertEqual(influxdb._get_nano_timestamp(results), '1451461248925574144')
+        influxdb = InfluxdbDispatcher(self.yardstick_conf)
+        results = {'timestamp': '1451461248.925574'}
+        self.assertEqual(influxdb._get_nano_timestamp(results),
+                         '1451461248925574144')
 
     @mock.patch('yardstick.dispatcher.influxdb.time')
     def test__get_nano_timestamp_except(self, mock_time):
         results = {}
-        influxdb = InfluxdbDispatcher(None)
+        influxdb = InfluxdbDispatcher(self.yardstick_conf)
         mock_time.time.return_value = 1451461248.925574
-        self.assertEqual(influxdb._get_nano_timestamp(results), '1451461248925574144')
+        self.assertEqual(influxdb._get_nano_timestamp(results),
+                         '1451461248925574144')
+
 
 def main():
     unittest.main()
 
+
 if __name__ == '__main__':
     main()