diff options
author | Bala.FA <barumuga@redhat.com> | 2014-04-16 17:07:34 +0530 |
---|---|---|
committer | Sahina Bose <sabose@redhat.com> | 2014-05-16 03:55:21 -0700 |
commit | 272b5c54c3ab0f3c7117feec2bfdeb5d62cfdead (patch) | |
tree | 225081012d0cb943127deca9cd76634062ab81c5 /tests/test_network.py | |
parent | aa44342bc8ddc2e24b66542ff07118cb416fcc93 (diff) |
network: show only interfaces having IP addresses
Network plugin for Nagios provides status and performance data of
network interfaces. By default, it provides details of all the
interfaces having IP addresses
The plugin can be used to
get status of specific interface:
$ python network.py -i em1
get status except specific interface:
$ python network.py -e em1
get status of all interfaces:
$ python network.py -a
Change-Id: If3cc2e4c00c866ce1a3c839a643d63b1e23ff8ea
Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1085237
Signed-off-by: Bala.FA <barumuga@redhat.com>
Reviewed-on: http://review.gluster.org/7588
Reviewed-by: Sahina Bose <sabose@redhat.com>
Tested-by: Sahina Bose <sabose@redhat.com>
Diffstat (limited to 'tests/test_network.py')
-rw-r--r-- | tests/test_network.py | 184 |
1 files changed, 128 insertions, 56 deletions
diff --git a/tests/test_network.py b/tests/test_network.py index 8cb4552..13a5925 100644 --- a/tests/test_network.py +++ b/tests/test_network.py @@ -18,69 +18,141 @@ # Refer to the README and COPYING files for full details of the license # +import mock + from testrunner import PluginsTestCase as TestCaseBase -from plugins import network -import test_network_dataFile +import plugins + + +stat = {'date': '2014-04-17', + 'interval': '60', + 'network': {'net-dev': [{'iface': 'tun0', + 'rxcmp': '0.00', + 'rxkB': '0.01', + 'rxmcst': '0.00', + 'rxpck': '0.10', + 'txcmp': '0.00', + 'txkB': '0.01', + 'txpck': '0.08'}, + {'iface': 'wlp3s0', + 'rxcmp': '0.00', + 'rxkB': '0.00', + 'rxmcst': '0.00', + 'rxpck': '0.00', + 'txcmp': '0.00', + 'txkB': '0.00', + 'txpck': '0.00'}, + {'iface': 'lo', + 'rxcmp': '0.00', + 'rxkB': '0.00', + 'rxmcst': '0.00', + 'rxpck': '0.00', + 'txcmp': '0.00', + 'txkB': '0.00', + 'txpck': '0.00'}, + {'iface': 'virbr0-nic', + 'rxcmp': '0.00', + 'rxkB': '0.00', + 'rxmcst': '0.00', + 'rxpck': '0.00', + 'txcmp': '0.00', + 'txkB': '0.00', + 'txpck': '0.00'}, + {'iface': 'virbr0', + 'rxcmp': '0.00', + 'rxkB': '0.00', + 'rxmcst': '0.00', + 'rxpck': '0.00', + 'txcmp': '0.00', + 'txkB': '0.00', + 'txpck': '0.00'}, + {'iface': 'enp0s29u1u2', + 'rxcmp': '0.00', + 'rxkB': '0.09', + 'rxmcst': '0.00', + 'rxpck': '1.15', + 'txcmp': '0.00', + 'txkB': '0.25', + 'txpck': '1.65'}, + {'iface': 'em1', + 'rxcmp': '0.00', + 'rxkB': '0.00', + 'rxmcst': '0.00', + 'rxpck': '0.00', + 'txcmp': '0.00', + 'txkB': '0.00', + 'txpck': '0.00'}], + 'per': 'second'}, + 'time': '02:36:01', + 'utc': '1'} + +interfaces = {'em1': {'flags': None, 'ipaddr': None}, + 'enp0s29u1u2': {'flags': 4163, 'ipaddr': '192.168.42.182'}, + 'lo': {'flags': 73, 'ipaddr': '127.0.0.1'}, + 'tun0': {'flags': 4305, 'ipaddr': '10.10.63.201'}, + 'virbr0': {'flags': 4099, 'ipaddr': '192.168.122.1'}, + 'wlp3s0': {'flags': None, 'ipaddr': None}} class networkTests(TestCaseBase): + @mock.patch('plugins.network._getNetworkInterfaces') + def test_network_default(self, _getNetworkInterfaces_mock): + expected = (0, "OK: tun0:UP,virbr0:UP,enp0s29u1u2:UP |" + "tun0.rxpck=0.10 tun0.txpck=0.08 " + "tun0.rxkB=0.01 tun0.txkB=0.01 " + "virbr0.rxpck=0.00 virbr0.txpck=0.00 " + "virbr0.rxkB=0.00 virbr0.txkB=0.00 " + "enp0s29u1u2.rxpck=1.15 enp0s29u1u2.txpck=1.65 " + "enp0s29u1u2.rxkB=0.09 enp0s29u1u2.txkB=0.25") + _getNetworkInterfaces_mock.return_value = interfaces + + actual = plugins.network._getStatMessage(stat) + self.assertEquals(expected, actual) - def _showNetStatus_unknown_test(self): - actual = network.showNetStat( - test_network_dataFile.SHOW_NETWORK_STATUS_UNKNOWN_IP - ) - self.assertEquals( - actual, - test_network_dataFile.SHOW_NETWORK_STATUS_UNKNOWN_OP - ) + @mock.patch('plugins.network._getNetworkInterfaces') + def test_network_all(self, _getNetworkInterfaces_mock): + expected = (0, "OK: tun0:UP,wlp3s0:DOWN,lo:UP,virbr0-nic:DOWN," + "virbr0:UP,enp0s29u1u2:UP,em1:DOWN |" + "tun0.rxpck=0.10 tun0.txpck=0.08 " + "tun0.rxkB=0.01 tun0.txkB=0.01 " + "wlp3s0.rxpck=0.00 wlp3s0.txpck=0.00 " + "wlp3s0.rxkB=0.00 wlp3s0.txkB=0.00 " + "lo.rxpck=0.00 lo.txpck=0.00 lo.rxkB=0.00 lo.txkB=0.00 " + "virbr0-nic.rxpck=0.00 virbr0-nic.txpck=0.00 " + "virbr0-nic.rxkB=0.00 virbr0-nic.txkB=0.00 " + "virbr0.rxpck=0.00 virbr0.txpck=0.00 " + "virbr0.rxkB=0.00 virbr0.txkB=0.00 " + "enp0s29u1u2.rxpck=1.15 enp0s29u1u2.txpck=1.65 " + "enp0s29u1u2.rxkB=0.09 enp0s29u1u2.txkB=0.25 " + "em1.rxpck=0.00 em1.txpck=0.00 " + "em1.rxkB=0.00 em1.txkB=0.00") + _getNetworkInterfaces_mock.return_value = interfaces - def _showNetStatus_ok_test(self): - actual = network.showNetStat( - test_network_dataFile.SHOW_NETWORK_STATUS_OK_IP - ) - self.assertEquals( - actual, - test_network_dataFile.SHOW_NETWORK_STATUS_OK_OP - ) + actual = plugins.network._getStatMessage(stat, all=True) + self.assertEquals(expected, actual) - def _showNetStatus_include_test(self): - in_list = ["lo"] - list_type = "include" - actual = network.showNetStat( - test_network_dataFile.SHOW_NETWORK_STATUS_INCLUDE_IP, - in_list, - list_type - ) - self.assertEquals( - actual, - test_network_dataFile.SHOW_NETWORK_STATUS_INCLUDE_OP - ) + @mock.patch('plugins.network._getNetworkInterfaces') + def test_network_includes(self, _getNetworkInterfaces_mock): + expected = (1, "WARNING: tun0:UP,em1:DOWN |" + "tun0.rxpck=0.10 tun0.txpck=0.08 " + "tun0.rxkB=0.01 tun0.txkB=0.01 " + "em1.rxpck=0.00 em1.txpck=0.00 " + "em1.rxkB=0.00 em1.txkB=0.00") + _getNetworkInterfaces_mock.return_value = interfaces - def _showNetStatus_exclude_test(self): - ex_list = ["lo"] - list_type = "exclude" - actual = network.showNetStat( - test_network_dataFile.SHOW_NETWORK_STATUS_EXCLUDE_IP, - ex_list, - list_type - ) - self.assertEquals( - actual, - test_network_dataFile.SHOW_NETWORK_STATUS_EXCLUDE_OP - ) + actual = plugins.network._getStatMessage(stat, + includes=('tun0', 'em1')) + self.assertEquals(expected, actual) - def _showNetStatus_exception_test(self): - actual = network.showNetStat( - test_network_dataFile.SHOW_NETWORK_STATUS_EXCEPTION_IP - ) - self.assertEquals( - actual, - test_network_dataFile.SHOW_NETWORK_STATUS_EXCEPTION_OP - ) + @mock.patch('plugins.network._getNetworkInterfaces') + def test_network_excludes(self, _getNetworkInterfaces_mock): + expected = (0, "OK: virbr0:UP,enp0s29u1u2:UP |" + "virbr0.rxpck=0.00 virbr0.txpck=0.00 " + "virbr0.rxkB=0.00 virbr0.txkB=0.00 " + "enp0s29u1u2.rxpck=1.15 enp0s29u1u2.txpck=1.65 " + "enp0s29u1u2.rxkB=0.09 enp0s29u1u2.txkB=0.25") + _getNetworkInterfaces_mock.return_value = interfaces - def test_showNetStatus(self): - self._showNetStatus_unknown_test() - self._showNetStatus_ok_test() - self._showNetStatus_include_test() - self._showNetStatus_exclude_test() - self._showNetStatus_exception_test() + actual = plugins.network._getStatMessage(stat, + excludes=('tun0', )) + self.assertEquals(expected, actual) |