mirror of
https://github.com/triqs/dft_tools
synced 2024-08-17 09:41:43 +02:00
![Oleg E. Peil](/assets/img/avatar_default.png)
All imports inside the test cases refer now to paths relative to TRIQS python library path. For example, `import vaspio` is replaced with `import applications.dft.converters.plovasp.vasio` In this way all tests can be executed wtih `build_pytriqs` provided that the package is installed (the same practice as with other 'dft_tools' tests). Also, the underscore can now be removed from subdirectory names because there is no more conflict with module names.
28 lines
732 B
Python
28 lines
732 B
Python
r"""
|
|
Module defining a custom TestCase with extra functionality.
|
|
"""
|
|
|
|
import unittest
|
|
import numpy as np
|
|
|
|
class ArrayTestCase(unittest.TestCase):
|
|
"""
|
|
Custom TestCase class supporting array equality.
|
|
"""
|
|
def __init__(self, *args, **kwargs):
|
|
"""
|
|
Initializes a custom equality function for comparing numpy arrays.
|
|
"""
|
|
super(ArrayTestCase, self).__init__(*args, **kwargs)
|
|
self.addTypeEqualityFunc(np.ndarray, self.is_arrays_equal)
|
|
|
|
def is_arrays_equal(self, arr1, arr2, msg=None):
|
|
"""
|
|
Raises self.failureException is arrays arr1 and arr2
|
|
are not equal.
|
|
"""
|
|
if not np.allclose(arr1, arr2):
|
|
raise self.failureException(msg)
|
|
|
|
|