Put the class init in the setup function

Change-Id: I10ea453f356513f485620b67d4831503ff04d72f
This commit is contained in:
songwenping 2022-06-15 18:07:30 +08:00
parent e01a91a2b6
commit abf7eb1ec5

View File

@ -21,17 +21,16 @@ from venus.modules.search.action import SearchCore
class TestSearchAction(unittest.TestCase):
def setUp(self):
self.action = SearchCore()
super(TestSearchAction, self).setUp()
def test_get_interval(self):
action = SearchCore()
want1 = "1s"
want2 = "1秒"
want3 = "1second"
end_time = 100000000
start_time = end_time - 50
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -40,7 +39,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "10秒"
want3 = "10seconds"
start_time = end_time - 500
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -49,7 +48,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "30秒"
want3 = "30seconds"
start_time = end_time - 1500
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -58,7 +57,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "1分钟"
want3 = "1minute"
start_time = end_time - 50 * 60
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -67,7 +66,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "10分钟"
want3 = "10minutes"
start_time = end_time - 500 * 60
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -76,7 +75,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "30分钟"
want3 = "30minutes"
start_time = end_time - 1500 * 60
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -85,7 +84,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "1小时"
want3 = "1hour"
start_time = end_time - 50 * 3600
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -94,7 +93,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "3小时"
want3 = "3hours"
start_time = end_time - 150 * 3600
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -103,7 +102,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "6小时"
want3 = "6hours"
start_time = end_time - 300 * 3600
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -112,7 +111,7 @@ class TestSearchAction(unittest.TestCase):
want2 = "12小时"
want3 = "12hours"
start_time = end_time - 700 * 3600
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@ -121,59 +120,53 @@ class TestSearchAction(unittest.TestCase):
want2 = "1天"
want3 = "1day"
start_time = end_time - 50 * 86400
res1, res2, res3 = action.get_interval(start_time, end_time)
res1, res2, res3 = self.action.get_interval(start_time, end_time)
self.assertEqual(want1, res1)
self.assertEqual(want2, res2)
self.assertEqual(want3, res3)
@mock.patch('venus.common.utils.request_es')
def test_get_all_index_empty(self, mock_req_es):
action = SearchCore()
mock_req_es.return_value = (400, '')
index_names = action.get_all_index('test_index')
index_names = self.action.get_all_index('test_index')
self.assertEqual("", index_names)
@mock.patch('venus.common.utils.request_es')
def test_get_all_index(self, mock_req_es):
action = SearchCore()
mock_req_es.return_value = (
200, '[{"index":"index1"},{"index":"index2"}]')
index_names = action.get_all_index('test_index')
index_names = self.action.get_all_index('test_index')
self.assertEqual(["index1", "index2"], index_names)
@mock.patch('venus.modules.search.action.SearchCore.get_all_index')
def test_get_index_names_none(self, mock_get_all_index):
action = SearchCore()
names = ["test_index-2021.01.03", "test_index-2021.01.04"]
mock_get_all_index.return_value = names
end_time = datetime.datetime(2021, 1, 2)
start_time = datetime.datetime(2021, 1, 1)
index_names = action.get_index_names(
index_names = self.action.get_index_names(
'test_index', start_time, end_time)
self.assertIsNone(index_names)
@mock.patch('venus.modules.search.action.SearchCore.get_all_index')
def test_get_index_names(self, mock_get_all_index):
action = SearchCore()
names = ["test_index-2021.01.01", "test_index-2021.01.02"]
mock_get_all_index.return_value = names
end_time = datetime.datetime(2021, 1, 2)
start_time = datetime.datetime(2021, 1, 1)
index_names = action.get_index_names(
index_names = self.action.get_index_names(
'test_index', start_time, end_time)
self.assertEqual(",".join(names), index_names)
def test_params_invalid_param(self):
action = SearchCore()
result = action.params('', '', None)
result = self.action.params('', '', None)
expected = {"code": -1, "msg": "invalid param"}
self.assertEqual(expected, result)
result = action.params('host_name', '', '')
result = self.action.params('host_name', '', '')
self.assertEqual(expected, result)
def test_params_no_index_data(self):
action = SearchCore()
result = action.params('host_name', '', None)
result = self.action.params('host_name', '', None)
expected = {'code': 0, 'msg': 'no data, no index'}
self.assertEqual(expected, result)
@ -184,8 +177,7 @@ class TestSearchAction(unittest.TestCase):
self, mock_req_es, mock_get_index_names, mock_search_params):
mock_get_index_names.return_value = 'flog-2021.01.03,flog-2021.01.04'
mock_req_es.return_value = (400, {})
action = SearchCore()
result = action.params('host_name', '', None)
result = self.action.params('host_name', '', None)
expected = {"code": -1, "msg": "internal error, bad request"}
self.assertEqual(expected, result)
@ -196,8 +188,7 @@ class TestSearchAction(unittest.TestCase):
self, mock_req_es, mock_get_index_names, mock_search_params):
mock_get_index_names.return_value = 'flog-2021.01.03,flog-2021.01.04'
mock_req_es.return_value = (200, '{}')
action = SearchCore()
result = action.params('host_name', '', None)
result = self.action.params('host_name', '', None)
expected = {"code": 0, "msg": "no data, no aggregations"}
self.assertEqual(expected, result)
@ -210,8 +201,7 @@ class TestSearchAction(unittest.TestCase):
200, '{"aggregations": {"search_values": '
'{"buckets": [{"key": "val1"}, {"key": "val2"}]}}}')
mock_get_index_names.return_value = 'flog-2021.01.03,flog-2021.01.04'
action = SearchCore()
result = action.params('level', '', None)
result = self.action.params('level', '', None)
expected = {'code': 1, 'msg': 'OK',
"values": ['VAL1', 'VAL2', 'NO EXIST']}
self.assertEqual(expected, result)
@ -225,8 +215,7 @@ class TestSearchAction(unittest.TestCase):
200, '{"aggregations": {"search_values": '
'{"buckets": [{"key": "val1"}, {"key": "val2"}]}}}')
mock_get_index_names.return_value = 'flog-2021.01.03,flog-2021.01.04'
action = SearchCore()
result = action.params('program_name', '', None)
result = self.action.params('program_name', '', None)
expected = {'code': 1, 'msg': 'OK', "values": ['val1', 'val2']}
self.assertEqual(expected, result)