Ejemplo n.º 1
0
    def test_fetch_multigraph(self):
        class MockFetchHandler(SocketServer.BaseRequestHandler):
            def handle(self):
                f = self.request.makefile()

                self.request.sendall("mock\n")
                f.readline()
                self.request.sendall("cap multigraph\n")
                f.readline()
                self.request.sendall("multigraph foo_1\n")
                self.request.sendall("x.value 1\n")
                self.request.sendall("multigraph foo_2\n")
                self.request.sendall("y.value 2\n")
                self.request.sendall(".\n")

        self._mock(MockFetchHandler)

        c = Client('localhost', port=9998)
        c.connect()

        self.assertEqual(c.fetch("foo"), {
            'foo_1': {
                'x': 1.0
            },
            'foo_2': {
                'y': 2.0
            }
        })
Ejemplo n.º 2
0
    def test_config(self):
        class MockConfigHandler(SocketServer.BaseRequestHandler):
            def handle(self):
                f = self.request.makefile()

                self.request.sendall("mock\n")
                f.readline()
                self.request.sendall("cap multigraph\n")
                f.readline()
                self.request.sendall("graph_info foo\n")
                self.request.sendall("x.info bar\n")
                self.request.sendall(".\n")

        self._mock(MockConfigHandler)

        c = Client('localhost', port=9998)
        c.connect()

        self.assertEqual(c.config("foo"),
                         {'foo': {
                             'graph_info': 'foo',
                             'x': {
                                 'info': 'bar'
                             }
                         }})
Ejemplo n.º 3
0
    def test_list(self):
        class MockListHandler(SocketServer.BaseRequestHandler):
            def handle(self):
                f = self.request.makefile()

                self.request.sendall("mock\n")
                f.readline()
                self.request.sendall("cap multigraph\n")
                f.readline()
                self.request.sendall("foo bar\n")

        self._mock(MockListHandler)

        c = Client('localhost', port=9998)
        c.connect()

        self.assertEqual(c.list(), ['foo', 'bar'])
Ejemplo n.º 4
0
    def test_list(self):
        class MockListHandler(SocketServer.BaseRequestHandler):
            def handle(self):
                f = self.request.makefile()

                self.request.sendall("mock\n")
                f.readline()
                self.request.sendall("cap multigraph\n")
                f.readline()
                self.request.sendall("foo bar\n")

        self._mock(MockListHandler)

        c = Client('localhost', port=9998)
        c.connect()

        self.assertEqual(c.list(), ['foo', 'bar'])
Ejemplo n.º 5
0
    def test_fetch(self):
        class MockFetchHandler(SocketServer.BaseRequestHandler):
            def handle(self):
                f = self.request.makefile()

                self.request.sendall("mock\n")
                f.readline()
                self.request.sendall("cap multigraph\n")
                f.readline()
                self.request.sendall("x.value 1\n")
                self.request.sendall(".\n")

        self._mock(MockFetchHandler)

        c = Client('localhost', port=9998)
        c.connect()

        self.assertEqual(c.fetch("foo"), {'foo': {'x': 1.0}})
Ejemplo n.º 6
0
    def test_config(self):
        class MockConfigHandler(SocketServer.BaseRequestHandler):
            def handle(self):
                f = self.request.makefile()

                self.request.sendall("mock\n")
                f.readline()
                self.request.sendall("cap multigraph\n")
                f.readline()
                self.request.sendall("graph_info foo\n")
                self.request.sendall("x.info bar\n")
                self.request.sendall(".\n")

        self._mock(MockConfigHandler)

        c = Client('localhost', port=9998)
        c.connect()

        self.assertEqual(c.config("foo"), {'foo': {'graph_info': 'foo', 'x': {'info': 'bar'}}})
Ejemplo n.º 7
0
    def test_denied(self):
        # Munin node just closes connection if source address is not
        # allowed access.

        class MockDeniedHandler(SocketServer.BaseRequestHandler):
            def handle(self):
                self.request.close()

        self._mock(MockDeniedHandler)

        c = Client('localhost', port=9998)
        self.assertRaises(ClientError, c.connect)