Module: check_mk
Branch: master
Commit: f9e9001ad7231205926d643df4bd9f0e91a1072d
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=f9e9001ad72312…
Author: Moritz Kiemer <mo(a)mathias-kettner.de>
Date: Wed Apr 10 12:48:39 2019 +0200
mysql: add tests
Change-Id: I9182f83a2872b6d1160b94f556e54a52ebcbaeda
---
checks/mysql_ping | 5 -
.../generictests/datasets/mysql_1_regression.py | 229 +++++++++++++++++++++
.../datasets/mysql_capacity_1_regression.py | 25 +++
.../datasets/mysql_ping_1_regression.py | 27 +++
4 files changed, 281 insertions(+), 5 deletions(-)
diff --git a/checks/mysql_ping b/checks/mysql_ping
index 8304440..3cb6a57 100644
--- a/checks/mysql_ping
+++ b/checks/mysql_ping
@@ -29,11 +29,6 @@
# mysqladmin: connect to server at 'localhost' failed
# error: 'Access denied for user 'root'@'localhost' (using password:
NO)'
#
-# parsed = {
-# "instance1" : [ "mysqld is alive" ],
-# "instance2" : [ "mysqladmin: connect to server at 'localhost'
failed",
-# "error: 'Access denied for user
'root'@'localhost' (using password: NO)'" ]
-# }
# FIXME: Crapy copy n paste! Consolidate with other mysql_* parse functions
diff --git a/tests/unit/checks/generictests/datasets/mysql_1_regression.py
b/tests/unit/checks/generictests/datasets/mysql_1_regression.py
new file mode 100644
index 0000000..82b77de
--- /dev/null
+++ b/tests/unit/checks/generictests/datasets/mysql_1_regression.py
@@ -0,0 +1,229 @@
+# yapf: disable
+
+
+checkname = 'mysql'
+
+
+info = [['[[mysql]]'],
+ ['version', 'Cheesgrater Edition'],
+ ['Aborted_clients', '0'],
+ ['Aborted_connects', '15'],
+ ['Binlog_cache_disk_use', '0'],
+ ['Binlog_cache_use', '0'],
+ ['Binlog_stmt_cache_disk_use', '0'],
+ ['Binlog_stmt_cache_use', '0'],
+ ['Bytes_received', '7198841'],
+ ['Bytes_sent', '19266624'],
+ ['Com_admin_commands', '200'],
+ ['Com_assign_to_keycache', '0'],
+ ['Com_alter_db', '0'],
+ ['Com_alter_db_upgrade', '0'],
+ ['Threads_connected', '42'],
+ ['Connections', '2'],
+ ['Threads_running', '23'],
+ ['0', '0'],
+ ['1', '1'],
+ ['2', '2'],
+ ['3', '3'],
+ ['4', '4'],
+ ['5', '5'],
+ ['6', '6'],
+ ['7', '7'],
+ ['8', '8'],
+ ['9', '9'],
+ ['10', '10'],
+ ['11', '11'],
+ ['12', '12'],
+ ['13', '13'],
+ ['14', '14'],
+ ['15', '15'],
+ ['16', '16'],
+ ['17', '17'],
+ ['18', '18'],
+ ['19', '19'],
+ ['20', '20'],
+ ['21', '21'],
+ ['22', '22'],
+ ['23', '23'],
+ ['24', '24'],
+ ['25', '25'],
+ ['26', '26'],
+ ['27', '27'],
+ ['28', '28'],
+ ['29', '29'],
+ ['30', '30'],
+ ['31', '31'],
+ ['32', '32'],
+ ['33', '33'],
+ ['34', '34'],
+ ['35', '35'],
+ ['36', '36'],
+ ['37', '37'],
+ ['38', '38'],
+ ['39', '39'],
+ ['40', '40'],
+ ['41', '41'],
+ ['42', '42'],
+ ['43', '43'],
+ ['44', '44'],
+ ['45', '45'],
+ ['46', '46'],
+ ['47', '47'],
+ ['48', '48'],
+ ['49', '49'],
+ ['50', '50'],
+ ['51', '51'],
+ ['52', '52'],
+ ['53', '53'],
+ ['54', '54'],
+ ['55', '55'],
+ ['56', '56'],
+ ['57', '57'],
+ ['58', '58'],
+ ['59', '59'],
+ ['60', '60'],
+ ['61', '61'],
+ ['62', '62'],
+ ['63', '63'],
+ ['64', '64'],
+ ['65', '65'],
+ ['66', '66'],
+ ['67', '67'],
+ ['68', '68'],
+ ['69', '69'],
+ ['70', '70'],
+ ['71', '71'],
+ ['72', '72'],
+ ['73', '73'],
+ ['74', '74'],
+ ['75', '75'],
+ ['76', '76'],
+ ['77', '77'],
+ ['78', '78'],
+ ['79', '79'],
+ ['80', '80'],
+ ['81', '81'],
+ ['82', '82'],
+ ['83', '83'],
+ ['84', '84'],
+ ['85', '85'],
+ ['86', '86'],
+ ['87', '87'],
+ ['88', '88'],
+ ['89', '89'],
+ ['90', '90'],
+ ['91', '91'],
+ ['92', '92'],
+ ['93', '93'],
+ ['94', '94'],
+ ['95', '95'],
+ ['96', '96'],
+ ['97', '97'],
+ ['98', '98'],
+ ['99', '99'],
+ ['100', '100'],
+ ['101', '101'],
+ ['102', '102'],
+ ['103', '103'],
+ ['104', '104'],
+ ['105', '105'],
+ ['106', '106'],
+ ['107', '107'],
+ ['108', '108'],
+ ['109', '109'],
+ ['110', '110'],
+ ['111', '111'],
+ ['112', '112'],
+ ['113', '113'],
+ ['114', '114'],
+ ['115', '115'],
+ ['116', '116'],
+ ['117', '117'],
+ ['118', '118'],
+ ['119', '119'],
+ ['120', '120'],
+ ['121', '121'],
+ ['122', '122'],
+ ['123', '123'],
+ ['124', '124'],
+ ['125', '125'],
+ ['126', '126'],
+ ['127', '127'],
+ ['128', '128'],
+ ['129', '129'],
+ ['130', '130'],
+ ['131', '131'],
+ ['132', '132'],
+ ['133', '133'],
+ ['134', '134'],
+ ['135', '135'],
+ ['136', '136'],
+ ['137', '137'],
+ ['138', '138'],
+ ['139', '139'],
+ ['140', '140'],
+ ['141', '141'],
+ ['142', '142'],
+ ['143', '143'],
+ ['144', '144'],
+ ['145', '145'],
+ ['146', '146'],
+ ['147', '147'],
+ ['148', '148'],
+ ['149', '149'],
+ ['150', '150'],
+ ['151', '151'],
+ ['152', '152'],
+ ['153', '153'],
+ ['154', '154'],
+ ['155', '155'],
+ ['156', '156'],
+ ['157', '157'],
+ ['158', '158'],
+ ['159', '159'],
+ ['160', '160'],
+ ['161', '161'],
+ ['162', '162'],
+ ['163', '163'],
+ ['164', '164'],
+ ['165', '165'],
+ ['166', '166'],
+ ['167', '167'],
+ ['168', '168'],
+ ['169', '169'],
+ ['170', '170'],
+ ['171', '171'],
+ ['172', '172'],
+ ['173', '173'],
+ ['174', '174'],
+ ['175', '175'],
+ ['176', '176'],
+ ['177', '177'],
+ ['178', '178'],
+ ['179', '179'],
+ ['180', '180'],
+ ['181', '181'],
+ ['182', '182'],
+ ['183', '183'],
+ ['184', '184'],
+ ['185', '185'],
+ ['186', '186'],
+ ['187', '187'],
+ ['188', '188'],
+ ['189', '189']]
+
+
+discovery = {'': [('mysql', {})],
+ 'connections': [],
+ 'innodb_io': [],
+ 'sessions': [('mysql', {})]}
+
+
+checks = {'': [('mysql', {}, [(0, 'Version: Cheesgrater Edition',
[])])],
+ 'sessions': [('mysql',
+ {},
+ [(0,
+ '42 total, 23 running, 0.00 connections/s',
+ [('total_sessions', 42, None, None, None, None),
+ ('running_sessions', 23, None, None, None, None),
+ ('connect_rate', 0.0, None, None, None, None)])])]}
\ No newline at end of file
diff --git a/tests/unit/checks/generictests/datasets/mysql_capacity_1_regression.py
b/tests/unit/checks/generictests/datasets/mysql_capacity_1_regression.py
new file mode 100644
index 0000000..343df8d
--- /dev/null
+++ b/tests/unit/checks/generictests/datasets/mysql_capacity_1_regression.py
@@ -0,0 +1,25 @@
+# yapf: disable
+
+
+checkname = 'mysql_capacity'
+
+
+info = [['[[]]'],
+ ['information_schema', '147456', '0'],
+ ['mysql', '665902', '292'],
+ ['performance_schema', '0', '0'],
+ ['test', '409255936', '54525952']]
+
+
+discovery = {
+ '': [
+ ('mysql:test', {}),
+ ],
+}
+
+
+checks = {
+ '': [
+ ('mysql:test', {}, [(0, 'Size: 390.30 MB',
[('database_size', 409255936, None, None, None, None)])]),
+ ],
+}
diff --git a/tests/unit/checks/generictests/datasets/mysql_ping_1_regression.py
b/tests/unit/checks/generictests/datasets/mysql_ping_1_regression.py
new file mode 100644
index 0000000..4fe7bce
--- /dev/null
+++ b/tests/unit/checks/generictests/datasets/mysql_ping_1_regression.py
@@ -0,0 +1,27 @@
+# yapf: disable
+
+
+checkname = 'mysql_ping'
+
+
+info = [['this', 'line', 'is', 'ignored'],
+ ['[[elephant]]'],
+ ['mysqladmin:', 'connect', 'to', 'server',
'at', "'localhost'", 'failed'],
+ ['[[moth]]'],
+ ['mysqld', 'is', 'alive']]
+
+
+discovery = {
+ '': [
+ ('elephant', {}),
+ ('moth', {}),
+ ],
+}
+
+
+checks = {
+ '': [
+ ('elephant', {}, [(2, "mysqladmin: connect to server at
'localhost' failed", [])]),
+ ('moth', {}, [(0, 'MySQL Deamon is alive', [])]),
+ ],
+}