Beispiel #1
0
def test_json_keywords_no_datafile(mocked_init, session, session_maker, pds_label):
    logger = logging.getLogger('UPC_Process')
    upc_id = cam_info_dict['upcid']

    with pytest.raises(sqlalchemy.exc.IntegrityError),\
    patch('pds_pipelines.upc_keywords.UPCkeywords.label', new_callable=PropertyMock) as mocked_label:
        mocked_label.return_value = pds_label
        create_json_keywords_record(pds_label, upc_id, '/Path/to/my/cube.cub', 'No Failures', session_maker, logger)
Beispiel #2
0
def test_json_keywords_exception(session, session_maker):
    logger = logging.getLogger('UPC_Process')
    upc_id = cam_info_dict['upcid']
    models.DataFiles.create(session, upcid = upc_id)

    input_cube = '/Path/to/my/cube.cub'
    error_message = 'Got to exception.'
    create_json_keywords_record("", upc_id, input_cube, error_message, session_maker, logger)
    resp = session.query(JsonKeywords).filter(JsonKeywords.upcid == upc_id).first()
    resp_json = resp.jsonkeywords
    assert resp_json['errortype'] == error_message
    assert resp_json['file'] == input_cube
    assert resp_json['errormessage'] == f'Error running {error_message} on file {input_cube}'
    assert resp_json['error'] == True
Beispiel #3
0
def test_json_keywords_insert(mocked_init, session, session_maker, pds_label):
    logger = logging.getLogger('UPC_Process')
    upc_id = cam_info_dict['upcid']

    models.DataFiles.create(session, upcid = upc_id)

    with patch('pds_pipelines.upc_keywords.UPCkeywords.label', new_callable=PropertyMock) as mocked_label:
        mocked_label.return_value = pds_label
        create_json_keywords_record(pds_label, upc_id, '/Path/to/my/cube.cub', 'No Failures', session_maker, logger)

    resp = session.query(JsonKeywords).filter(JsonKeywords.upcid == upc_id).first()
    resp_json = resp.jsonkeywords
    assert resp_json['^IMAGE'][0] == pds_label['^IMAGE'][0]
    assert resp_json['TARGET_NAME'] == pds_label['TARGET_NAME']
    assert resp_json['INSTRUMENT_NAME'] == pds_label['INSTRUMENT_NAME']
    assert resp_json['SPACECRAFT_NAME'] == pds_label['SPACECRAFT_NAME']