Ejemplo n.º 1
0
class TsdbStatsTestCase(unittest.TestCase):
    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url_stats(self, _):
        GeneralUrlTestCase.test_url(self, "/api/stats/", "stats")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url_jvm_stats(self, _):
        GeneralUrlTestCase.test_url(self, "/api/stats/jvm/", "jvm_stats")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url_query_stats(self, _):
        GeneralUrlTestCase.test_url(self, "/api/stats/query/", "query_stats")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url_region_clients_stats(self, _):
        GeneralUrlTestCase.test_url(self, "/api/stats/region_clients/",
                                    "region_clients")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url_threads_stats(self, _):
        GeneralUrlTestCase.test_url(self, "/api/stats/threads/", "threads")
Ejemplo n.º 2
0
class TsdbVersionTestCase(unittest.TestCase):
    __TEST_VERSION__ = {
        "short_revision": "",
        "repo": "/root/rpmbuild/BUILD/opentsdb-2.4.0RC2",
        "host": "centos.localhost",
        "version": "2.4.0RC2",
        "full_revision": "",
        "repo_status": "MODIFIED",
        "user": "******",
        "branch": "",
        "timestamp": "1507524798"
    }

    def setUp(self):
        self._host = 'mockhttp://*****:*****@mock.patch('requests.Session.get', side_effect=get_mock_requests_get(None))
    def test_url(self, _):
        GeneralUrlTestCase.test_url(self, "/api/version/", "version")

    @mock.patch('requests.Session.get', side_effect=get_mock_requests_get(__TEST_VERSION__))
    def test_version(self, _):
        return_value = self._c.version()
        self.assertEqual(sorted(return_value), sorted(TsdbVersionTestCase.__TEST_VERSION__))
Ejemplo n.º 3
0
class AggregatorsTestCase(unittest.TestCase):
    __TEST_AGGREGATORS__ = [
        "mult", "p90", "zimsum", "mimmax", "sum", "p50", "none", "p95",
        "ep99r7"
    ]

    def setUp(self):
        self._host = 'mockhttp://*****:*****@mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url(self, _):
        GeneralUrlTestCase.test_url(self, "/api/aggregators/", "aggregators")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(__TEST_AGGREGATORS__))
    def test_aggregators(self, _):
        response = self._c.aggregators()
        self.assertEqual(sorted(response),
                         sorted(AggregatorsTestCase.__TEST_AGGREGATORS__))

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(response_content={
                    "error": {
                        "message": "Response code differ 200"
                    }
                },
                                                  status_code=403))
    def test_aggregators_403(self, _):
        with self.assertRaises(Exception) as context:
            self._c.aggregators()
        self.assertTrue(isinstance(context.exception, errors.UncaughtError))

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(response_content={
                    "error": {
                        "message": "Response code differ 200"
                    }
                },
                                                  status_code=400))
    def test_aggregators_403(self, _):
        with self.assertRaises(Exception) as context:
            self._c.aggregators()
        self.assertTrue(isinstance(context.exception, errors.ArgumentError))

    @mock.patch('requests.Session.get', side_effect=mock_tsdb_error_get)
    def test_aggregators_tsdberror(self, _):
        with self.assertRaises(Exception) as context:
            self._c.aggregators()
        self.assertTrue(isinstance(context.exception, errors.TsdbError))

    @mock.patch('requests.Session.get', side_effect=mock_unexpected_error_get)
    def test_aggregators_unexpectederror(self, _):
        with self.assertRaises(Exception) as context:
            self._c.aggregators()
        self.assertTrue(isinstance(context.exception, errors.UncaughtError))
Ejemplo n.º 4
0
class TsdbConfigTestCase(unittest.TestCase):
    __TEST_CONFIG__ = {
        "Ansible": "managed",
        "tsd.core.authentication.enable": "false",
        "tsd.core.authentication.plugin": "",
        "tsd.core.auto_create_metrics": "true",
        "tsd.core.auto_create_tagks": "true",
        "tsd.core.auto_create_tagvs": "true"
    }

    __TEST_FILTERS__ = {
        "regexp": {
            "examples":
            "host=regexp(.*)  {\"type\":\"regexp\",\"tagk\":\"host\",\"filter\":\".*\",\"groupBy\":false}",
            "description":
            "Provides full, POSIX compliant regular expression using the built in Java"
        },
        "iwildcard": {
            "examples":
            "host=iwildcard(web*),  host=iwildcard(web*.tsdb.net)  "
            "{\"type\":\"iwildcard\",\"tagk\":\"host\",\"filter\":\"web*.tsdb.net\",\"groupBy\":false}",
            "description":
            "Performs pre, post and in-fix glob matching of values. The globs are case"
        }
    }

    __TETS_DROPCACHES__ = {"message": "Caches dropped", "status": "200"}

    def setUp(self):
        self._host = 'mockhttp://*****:*****@mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url_config(self, _):
        GeneralUrlTestCase.test_url(self, "/api/config/", "config")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url_filters(self, _):
        GeneralUrlTestCase.test_url(self, "/api/config/filters/", "filters")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(__TEST_CONFIG__))
    def test_config(self, _):
        response = self._c.config()
        self.assertEqual(sorted(response),
                         sorted(TsdbConfigTestCase.__TEST_CONFIG__))

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(__TEST_FILTERS__))
    def test_filters(self, _):
        response = self._c.filters()
        self.assertEqual(sorted(response),
                         sorted(TsdbConfigTestCase.__TEST_FILTERS__))
Ejemplo n.º 5
0
class TsdbDopcachesTestCase(unittest.TestCase):
    __TETS_DROPCACHES__ = {"message": "Caches dropped", "status": "200"}

    def setUp(self):
        self._host = 'mockhttp://*****:*****@mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(None))
    def test_url(self, _):
        GeneralUrlTestCase.test_url(self, "/api/dropcaches/", "dropcaches")

    @mock.patch('requests.Session.get',
                side_effect=get_mock_requests_get(__TETS_DROPCACHES__))
    def test_config(self, _):
        response = self._c.dropcaches()
        self.assertEqual(sorted(response),
                         sorted(TsdbDopcachesTestCase.__TETS_DROPCACHES__))
Ejemplo n.º 6
0
class TsdbSerializersTestCase(unittest.TestCase):
    @mock.patch('requests.Session.get', side_effect=get_mock_requests_get(None))
    def test_url(self, _):
        GeneralUrlTestCase.test_url(self, "/api/serializers/", "serializers")