@patch('trainingmgr.trainingmgr_main.create_dme_filtered_data_job', return_value=the_response1)
@patch('trainingmgr.trainingmgr_main.TRAININGMGR_CONFIG_OBJ', return_value = mocked_TRAININGMGR_CONFIG_OBJ)
@patch('trainingmgr.trainingmgr_main.delete_feature_group_by_name')
- def test_create_featuregroup_2(self, mock1, mock2, mock3,mock4,mock5, mock6):
+ def test_create_featuregroup_2(self, mock1, mock2, mock3, mock4, mock5, mock6):
create_featuregroup_req={
"featureGroupName": "testing_hash",
"feature_list": "pdcpBytesDl,pdcpBytesUl",
@patch('trainingmgr.trainingmgr_main.create_dme_filtered_data_job', return_value=the_response2)
@patch('trainingmgr.trainingmgr_main.TRAININGMGR_CONFIG_OBJ', return_value = mocked_TRAININGMGR_CONFIG_OBJ)
@patch('trainingmgr.trainingmgr_main.delete_feature_group_by_name')
- def test_negative_create_featuregroup_1(self, mock1, mock2, mock3,mock4,mock5, mock6):
+ def test_negative_create_featuregroup_1(self, mock1, mock2, mock3, mock4, mock5, mock6):
create_featuregroup_req={
"featureGroupName": "testing_hash",
"feature_list": "pdcpBytesDl,pdcpBytesUl",
feature_group_data3=('testing_hash','pdcpBytesDl,pdcpBytesUl','InfluxSource',True,'127.0.0.1','31823','pm-bucket','','','')
@patch('trainingmgr.trainingmgr_main.check_feature_group_data', return_value=feature_group_data3)
+ @patch('trainingmgr.trainingmgr_main.get_feature_group_by_name_db', return_value=False)
@patch('trainingmgr.trainingmgr_main.add_featuregroup',side_effect = Exception('Mocked error'))
@patch('trainingmgr.trainingmgr_main.delete_feature_group_by_name')
- def test_neagtive_create_featuregroup_2(self, mock1, mock2, mock3):
+ def test_neagtive_create_featuregroup_2(self, mock1, mock2, mock3, mock4):
create_featuregroup_req={
"featureGroupName": "testing_hash",
"feature_list": "pdcpBytesDl,pdcpBytesUl",
assert response.data==expected_response
assert response.status_code ==status.HTTP_500_INTERNAL_SERVER_ERROR, "Return status code not equal"
+ feature_group_data3=('testing_hash!@','pdcpBytesDl,pdcpBytesUl','InfluxSource',True,'127.0.0.1','31823','pm-bucket','','','')
+ @patch('trainingmgr.trainingmgr_main.check_feature_group_data', return_value=feature_group_data3)
+ @patch('trainingmgr.trainingmgr_main.get_feature_group_by_name_db', return_value=True)
+ def test_neagtive_create_featuregroup_3(self, mock1, mock2):
+ create_featuregroup_req={
+ "featureGroupName": "testing_hash!@",
+ "feature_list": "pdcpBytesDl,pdcpBytesUl",
+ "datalake_source": "InfluxSource",
+ "enable_Dme": False,
+ "DmeHost": "",
+ "DmePort": "",
+ "bucket": "",
+ "token": "",
+ "source_name": "",
+ "dbOrg": ""
+ }
+ expected_response=b'{"Exception": "Failed to create the feature group since feature group not valid or already present"}'
+ response=self.client.post("/featureGroup", data=json.dumps(create_featuregroup_req),
+ content_type="application/json")
+ trainingmgr_main.LOGGER.debug(response.data)
+ assert response.data==expected_response
+ assert response.status_code==status.HTTP_400_BAD_REQUEST, "Return status code not equal"
+
class Test_get_feature_group:
def setup_method(self):
self.client = trainingmgr_main.APP.test_client(self)
from requests.models import Response
from trainingmgr import trainingmgr_main
from trainingmgr.common.tmgr_logger import TMLogger
+from trainingmgr.common.exceptions_utls import APIException,TMException,DBException
trainingmgr_main.LOGGER = pytest.logger
class Test_response_for_training:
expected_data = True
assert validate_trainingjob_name(trainingjob_name,ps_db_obj) == expected_data,"data not equal"
- @patch('trainingmgr.common.trainingmgr_util.get_all_versions_info_by_name', return_value = Exception("Could not get info from db for "))
+ @patch('trainingmgr.common.trainingmgr_util.get_all_versions_info_by_name', side_effect = DBException)
def test_validate_trainingjob_name_2(self,mock1):
trainingjob_name = "usecase8"
ps_db_obj = ()
- expected_data = True
try:
validate_trainingjob_name(trainingjob_name,ps_db_obj)
- assert validate_trainingjob_name(trainingjob_name,ps_db_obj) == expected_data,"data not equal"
- assert False
- except Exception:
- assert True
+ except DBException as err:
+ assert 'Could not get info from db for ' + trainingjob_name in str(err)
def test_negative_validate_trainingjob_name(self):
- trainingjob_name = "usecase8"
+ short_name = "__"
+ long_name = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
+ not_allowed_symbol_name = "case@#"
ps_db_obj = ()
- expected_data = True
try:
- validate_trainingjob_name(trainingjob_name,ps_db_obj)
- assert validate_trainingjob_name(trainingjob_name,ps_db_obj) == expected_data,"data not equal"
- assert False
- except Exception:
- assert True
+ validate_trainingjob_name(short_name,ps_db_obj)
+ except TMException as err:
+ assert str(err) == "The name of training job is invalid."
+ try:
+ validate_trainingjob_name(long_name,ps_db_obj)
+ except TMException as err:
+ assert str(err) == "The name of training job is invalid."
+ try:
+ validate_trainingjob_name(not_allowed_symbol_name,ps_db_obj)
+ except TMException as err:
+ assert str(err) == "The name of training job is invalid."
class Test_get_all_pipeline_names_svc:
# testing the get_all_pipeline service
assert check_feature_group_data(json_data)==expected_data, 'data not equal'
assert False
except:
- assert True
\ No newline at end of file
+ assert True