mirror of https://github.com/ANL-CEEESA/LLEPE
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.9 KiB
52 lines
1.9 KiB
import json
|
|
from llepe import LLEPE
|
|
import pkg_resources
|
|
|
|
validation_parameters_filename = pkg_resources.resource_filename(
|
|
'llepe',
|
|
r'..\tests\validation_parameters.txt')
|
|
validation_values_filename = pkg_resources.resource_filename(
|
|
'llepe',
|
|
r'..\tests\validation_values.txt')
|
|
|
|
with open(validation_parameters_filename) as file:
|
|
validation_params = json.load(file)
|
|
with open(validation_values_filename) as file:
|
|
validation_values = json.load(file)
|
|
searcher = LLEPE(**validation_params)
|
|
|
|
|
|
def array_to_list_in_dict(dictionary):
|
|
new_dictionary = {}
|
|
for key, value in dictionary.items():
|
|
new_dictionary[key] = list(value)
|
|
return new_dictionary
|
|
|
|
|
|
def test_init():
|
|
searcher.update_xml(validation_params['opt_dict'])
|
|
predicted_dict1 = searcher.get_predicted_dict()
|
|
predicted_dict1 = array_to_list_in_dict(predicted_dict1)
|
|
in_moles = searcher.get_in_moles().to_dict('list')
|
|
assert predicted_dict1 == validation_values['predicted_dict1'], \
|
|
"Prediction dicts are not equal. Error with set_in_moles, "
|
|
"update_predicted_dict, or changed xmls, or changed data"
|
|
assert in_moles == validation_values['in_moles'], \
|
|
"In_moles are different. Error with set_in_moles or data"
|
|
return None
|
|
|
|
|
|
def test_fit():
|
|
est_enthalpy, obj_value = searcher.fit()
|
|
searcher.update_xml(est_enthalpy)
|
|
predicted_dict2 = searcher.get_predicted_dict()
|
|
predicted_dict2 = array_to_list_in_dict(predicted_dict2)
|
|
r2 = searcher.r_squared()
|
|
assert est_enthalpy == validation_values['est_enthalpy'], \
|
|
"estimated enthalpy is not equal. Check fit method"
|
|
assert predicted_dict2 == validation_values['predicted_dict2'], \
|
|
"Prediction dicts are not equal. Error with set_in_moles, "
|
|
"update_predicted_dict, or changed xmls, or changed data"
|
|
assert r2 == validation_values['r2'], "r-squared value is off, check " \
|
|
"r_squared method"
|