summaryrefslogtreecommitdiffstats
path: root/storperf/tests/carbon_tests
diff options
context:
space:
mode:
authorMark Beierl <mark.beierl@emc.com>2016-07-14 16:20:44 -0400
committerMark Beierl <mark.beierl@emc.com>2016-07-14 16:20:44 -0400
commit2227414bd57f4b7f5f275d915fa8f6a2aa21f8f7 (patch)
treeb7ed9d0e356d27383396d680b059b4ab18069915 /storperf/tests/carbon_tests
parentce3f927c2bc98eaf124e96f99cbcc33fbebabeed (diff)
Separation of test and source
Moving the test files into their own top-level directory to keep things clean Change-Id: Ic50b881045bc59b003807923424345b335dd5c95 Signed-off-by: Mark Beierl <mark.beierl@emc.com>
Diffstat (limited to 'storperf/tests/carbon_tests')
-rw-r--r--storperf/tests/carbon_tests/__init__.py8
-rw-r--r--storperf/tests/carbon_tests/emitter_test.py66
-rw-r--r--storperf/tests/carbon_tests/json_to_carbon_test.py116
3 files changed, 0 insertions, 190 deletions
diff --git a/storperf/tests/carbon_tests/__init__.py b/storperf/tests/carbon_tests/__init__.py
deleted file mode 100644
index 73334c7..0000000
--- a/storperf/tests/carbon_tests/__init__.py
+++ /dev/null
@@ -1,8 +0,0 @@
-##############################################################################
-# Copyright (c) 2015 EMC and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
diff --git a/storperf/tests/carbon_tests/emitter_test.py b/storperf/tests/carbon_tests/emitter_test.py
deleted file mode 100644
index fe19ed2..0000000
--- a/storperf/tests/carbon_tests/emitter_test.py
+++ /dev/null
@@ -1,66 +0,0 @@
-##############################################################################
-# Copyright (c) 2015 EMC and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-from storperf.carbon import converter
-from storperf.carbon.emitter import CarbonMetricTransmitter
-from time import sleep
-import SocketServer
-import json
-import threading
-import unittest
-
-
-class MetricsHandler(SocketServer.BaseRequestHandler):
-
- def handle(self):
- # Echo the back to the client
- CarbonMetricTransmitterTest.response = self.request.recv(1024)
- return
-
-
-class MetricsServer(SocketServer.ThreadingMixIn, SocketServer.TCPServer):
- pass
-
-
-class CarbonMetricTransmitterTest(unittest.TestCase):
- listen_port = 0
- response = None
-
- def setUp(self):
-
- address = ('localhost', 0)
- server = MetricsServer(address, MetricsHandler)
- ip, self.listen_port = server.server_address
-
- t = threading.Thread(target=server.serve_forever)
- t.setDaemon(True)
- t.start()
-
- def test_transmit_metrics(self):
-
- testconv = converter.Converter()
- json_object = json.loads("""{"timestamp" : "12345", "key":"value" }""")
- result = testconv.convert_json_to_flat(json_object, "host.run-name")
-
- emitter = CarbonMetricTransmitter()
- emitter.carbon_port = self.listen_port
- emitter.transmit_metrics(result)
-
- count = 0
-
- while (CarbonMetricTransmitterTest.response is None and count < 10):
- count += 1
- sleep(0.1)
-
- self.assertEqual("host.run-name.key value 12345\n",
- CarbonMetricTransmitterTest.response,
- CarbonMetricTransmitterTest.response)
-
-if __name__ == '__main__':
- unittest.main()
diff --git a/storperf/tests/carbon_tests/json_to_carbon_test.py b/storperf/tests/carbon_tests/json_to_carbon_test.py
deleted file mode 100644
index 523ff77..0000000
--- a/storperf/tests/carbon_tests/json_to_carbon_test.py
+++ /dev/null
@@ -1,116 +0,0 @@
-##############################################################################
-# Copyright (c) 2015 EMC and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-
-from storperf.carbon.converter import Converter
-import json
-import unittest
-
-
-class JSONToCarbonTest(unittest.TestCase):
-
- single_json_text_element = """{ "key" : "value" }"""
- single_json_numeric_element = """{ "key" : 123 }"""
- single_json_key_with_spaces = """{ "key with spaces" : "value" }"""
- single_json_value_with_spaces = """{ "key" : "value with spaces" }"""
- json_map_name_with_spaces = \
- """{ "map with spaces" : { "key" : "value" } }"""
- json_list_name_with_spaces = \
- """{ "list with spaces" : [{ "key" : "value" }] }"""
-
- simple_fio_json = """
-{
- "fio version" : "fio-2.2.10",
- "timestamp" : 1444144664,
- "time" : "Tue Oct 6 11:17:44 2015",
- "jobs" : [
- {
- "jobname" : "random-read",
- "groupid" : 0,
- "error" : 0,
- "eta" : 0,
- "elapsed" : 26,
- "read" : {
- "io_bytes" : 7116,
- "bw" : 275,
- "iops" : 68.99,
- "runtime" : 25788,
- "total_ios" : 1779,
- "short_ios" : 0,
- "drop_ios" : 0,
- "slat" : {
- "min" : 0,
- "max" : 0,
- "mean" : 0.00,
- "stddev" : 0.00
- }
- }
- }]
-}
-"""
-
- def setUp(self):
- pass
-
- def test_to_string(self):
- testconv = Converter()
- json_object = json.loads(self.simple_fio_json)
- result = testconv.convert_json_to_flat(json_object, "host.run-name")
- self.assertEqual("7116", result[
- "host.run-name.jobs.1.read.io_bytes"],
- result["host.run-name.jobs.1.read.io_bytes"])
-
- def test_single_text_element_no_prefix(self):
- testconv = Converter()
- result = testconv.convert_json_to_flat(
- json.loads(self.single_json_text_element))
-
- self.assertEqual("value", result["key"], result["key"])
-
- def test_single_numeric_element_no_prefix(self):
- testconv = Converter()
- result = testconv.convert_json_to_flat(
- json.loads(self.single_json_numeric_element))
-
- self.assertEqual("123", result["key"], result["key"])
-
- def test_single_text_key_space_element_no_prefix(self):
- testconv = Converter()
- result = testconv.convert_json_to_flat(
- json.loads(self.single_json_key_with_spaces))
-
- self.assertEqual(
- "value", result["key_with_spaces"], result["key_with_spaces"])
-
- def test_single_text_value_space_element_no_prefix(self):
- testconv = Converter()
- result = testconv.convert_json_to_flat(
- json.loads(self.single_json_value_with_spaces))
-
- self.assertEqual("value_with_spaces", result["key"], result["key"])
-
- def test_map_name_with_space_no_prefix(self):
- testconv = Converter()
- result = testconv.convert_json_to_flat(
- json.loads(self.json_map_name_with_spaces))
-
- self.assertEqual(
- "value", result["map_with_spaces.key"],
- result["map_with_spaces.key"])
-
- def test_list_name_with_space_no_prefix(self):
- testconv = Converter()
- result = testconv.convert_json_to_flat(
- json.loads(self.json_list_name_with_spaces))
-
- self.assertEqual(
- "value", result["list_with_spaces.1.key"],
- result["list_with_spaces.1.key"])
-
-if __name__ == '__main__':
- unittest.main()