def test_two_shells(self): conf_pars = ConfigParameters(_rpath + 'parse_shells_4.cfg') conf_pars.parse_shells() res = conf_pars.shells expected = [{ 'user_index': 1, 'lshell': 2, 'ion_list': np.array([4, 5, 6, 7]) }, { 'user_index': 2, 'lshell': 1, 'ion_list': np.array([0, 1, 2, 3]), 'tmatrix': np.array([[0., 1., 0.], [1., 0., 0.], [0., 0., 1.]]) }] # ...lousy way to test equality of two dictionaries containing numpy arrays self.assertEqual(len(res), len(expected)) arr = res[0].pop('ion_list') arr_exp = expected[0].pop('ion_list') self.assertEqual(arr, arr_exp) arr = res[1].pop('ion_list') arr_exp = expected[1].pop('ion_list') self.assertEqual(arr, arr_exp) arr = res[1].pop('tmatrix') arr_exp = expected[1].pop('tmatrix') self.assertEqual(arr, arr_exp) self.assertListEqual(res, expected)
def test_bad_indices(self): conf_pars = ConfigParameters(_rpath + 'parse_shells_2.cfg') err_mess = "Failed to extract shell indices" with self.assertRaisesRegexp(ValueError, err_mess): conf_pars.parse_shells()
def test_sh_required(self): conf_pars = ConfigParameters(_rpath + 'parse_shells_3.cfg') err_mess = "Required parameter" with self.assertRaisesRegexp(Exception, err_mess): conf_pars.parse_shells()
def test_no_shell(self): conf_pars = ConfigParameters(_rpath + 'parse_shells_1.cfg') err_mess = "No projected shells" with self.assertRaisesRegexp(AssertionError, err_mess): conf_pars.parse_shells()