Add test for AttackTechnique
Issue with `_check_status` function since it tries to fetch from mongodb which doesn't exist in testing env
This commit is contained in:
parent
740dc43727
commit
6456564cae
|
@ -1,7 +1,10 @@
|
||||||
|
import json
|
||||||
from unittest import TestCase
|
from unittest import TestCase
|
||||||
|
|
||||||
from common.utils.attack_utils import ScanStatus
|
from common.utils.attack_utils import ScanStatus
|
||||||
|
from monkey_island.cc.database import mongo
|
||||||
|
|
||||||
|
from . import AttackTechnique
|
||||||
from .pba_technique import PostBreachTechnique
|
from .pba_technique import PostBreachTechnique
|
||||||
|
|
||||||
|
|
||||||
|
@ -13,27 +16,27 @@ class T9999(PostBreachTechnique):
|
||||||
pba_names = ["PBA Name"]
|
pba_names = ["PBA Name"]
|
||||||
|
|
||||||
|
|
||||||
# config =\
|
config =\
|
||||||
# {
|
{
|
||||||
# 'category': {
|
'category': {
|
||||||
# 'link': '',
|
'link': '',
|
||||||
# 'properties': {
|
'properties': {
|
||||||
# 'T9999': {
|
'T9999': {
|
||||||
# 'description': '',
|
'description': '',
|
||||||
# 'link': '',
|
'link': '',
|
||||||
# 'necessary': False,
|
'necessary': False,
|
||||||
# 'title': '',
|
'title': '',
|
||||||
# 'type': 'bool',
|
'type': 'bool',
|
||||||
# 'value': False # this field denotes whether technique is enabled or disabled in config
|
'value': False # this field denotes whether technique is enabled or disabled in config
|
||||||
# }
|
}
|
||||||
# }
|
}
|
||||||
# }
|
}
|
||||||
# }
|
}
|
||||||
|
|
||||||
|
|
||||||
# def set_config(value: bool):
|
def set_config(value: bool):
|
||||||
# config['category']['properties']['T9999']['value'] = value
|
config['category']['properties']['T9999']['value'] = value
|
||||||
# return config
|
return config
|
||||||
|
|
||||||
|
|
||||||
param_list = [
|
param_list = [
|
||||||
|
@ -45,8 +48,7 @@ param_list = [
|
||||||
'status': 0,
|
'status': 0,
|
||||||
'title': 'Unscanned technique'
|
'title': 'Unscanned technique'
|
||||||
},
|
},
|
||||||
# set_config(True), # configuration
|
set_config(True), # configuration
|
||||||
True, # configuration
|
|
||||||
ScanStatus.UNSCANNED.value # expected status
|
ScanStatus.UNSCANNED.value # expected status
|
||||||
),
|
),
|
||||||
|
|
||||||
|
@ -58,8 +60,7 @@ param_list = [
|
||||||
'status': 1,
|
'status': 1,
|
||||||
'title': 'Scanned technique'
|
'title': 'Scanned technique'
|
||||||
},
|
},
|
||||||
# set_config(True), # configuration
|
set_config(True), # configuration
|
||||||
True, # configuration
|
|
||||||
ScanStatus.SCANNED.value # expected status
|
ScanStatus.SCANNED.value # expected status
|
||||||
),
|
),
|
||||||
|
|
||||||
|
@ -71,8 +72,7 @@ param_list = [
|
||||||
'status': 2,
|
'status': 2,
|
||||||
'title': 'Used technique'
|
'title': 'Used technique'
|
||||||
},
|
},
|
||||||
# set_config(True), # configuration
|
set_config(True), # configuration
|
||||||
True, # configuration
|
|
||||||
ScanStatus.USED.value # expected status
|
ScanStatus.USED.value # expected status
|
||||||
),
|
),
|
||||||
|
|
||||||
|
@ -84,8 +84,7 @@ param_list = [
|
||||||
'status': 0,
|
'status': 0,
|
||||||
'title': 'Disabled technique'
|
'title': 'Disabled technique'
|
||||||
},
|
},
|
||||||
# set_config(False), # configuration
|
set_config(False), # configuration
|
||||||
False, # configuration
|
|
||||||
ScanStatus.DISABLED.value # expected status
|
ScanStatus.DISABLED.value # expected status
|
||||||
)
|
)
|
||||||
]
|
]
|
||||||
|
@ -95,6 +94,4 @@ class TestAttackTechnique(TestCase):
|
||||||
def test__check_status(self):
|
def test__check_status(self):
|
||||||
for telem_data, config, expected_status in param_list:
|
for telem_data, config, expected_status in param_list:
|
||||||
with self.subTest(msg=f"Checking if correct status is returned (status: {telem_data['message']})"):
|
with self.subTest(msg=f"Checking if correct status is returned (status: {telem_data['message']})"):
|
||||||
# self.assertEqual(T9999._check_status(telem_data['status']), expected_status)
|
self.assertEqual(T9999._check_status(telem_data['status']), expected_status)
|
||||||
self.assertEqual(T9999._check_status(telem_data['status'], config),
|
|
||||||
expected_status)
|
|
||||||
|
|
Loading…
Reference in New Issue