def test_material_getparameters_validate(parameter_types, error_count): material = Material("TiCrCu", {22: 0.2, 24: 0.2, 29: 0.6}) parameters = material.get_parameters(lambda options: material) # Set parameter types for parameter, parameter_type in zip(parameters, parameter_types): parameter.type_ = parameter_type errors = parameters[0].validate(None) assert len(errors) == error_count
def test_material_getparameters_parametertype(parameter_types, expected_composition): material = Material("TiCrCu", {22: 0.2, 24: 0.2, 29: 0.6}) parameters = material.get_parameters(lambda options: material) # Set parameter types for parameter, parameter_type in zip(parameters, parameter_types): parameter.type_ = parameter_type # Set titanium concentration parameters[0].set_value(None, 0.5) # Test for z, expected_wf in expected_composition.items(): assert material.composition[z] == pytest.approx(expected_wf, abs=1e-6)