testing a few corner cases
behavior for __eq__ is now following python standard, comparing to wrong class gives False
This commit is contained in:
parent
a37178ddee
commit
6657e5c4eb
|
@ -981,7 +981,7 @@ class Result:
|
||||||
t = 'tensor'
|
t = 'tensor'
|
||||||
if o is None: o = 'fro'
|
if o is None: o = 'fro'
|
||||||
else:
|
else:
|
||||||
raise ValueError(f'invalid norm order {ord}')
|
raise ValueError(f'invalid shape of {x["label"]}')
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'data': np.linalg.norm(x['data'],ord=o,axis=axis,keepdims=True),
|
'data': np.linalg.norm(x['data'],ord=o,axis=axis,keepdims=True),
|
||||||
|
|
|
@ -81,6 +81,7 @@ class TestColormap:
|
||||||
assert Colormap.from_predefined('strain') == Colormap.from_predefined('strain')
|
assert Colormap.from_predefined('strain') == Colormap.from_predefined('strain')
|
||||||
assert Colormap.from_predefined('strain') != Colormap.from_predefined('stress')
|
assert Colormap.from_predefined('strain') != Colormap.from_predefined('stress')
|
||||||
assert Colormap.from_predefined('strain',N=128) != Colormap.from_predefined('strain',N=64)
|
assert Colormap.from_predefined('strain',N=128) != Colormap.from_predefined('strain',N=64)
|
||||||
|
assert not Colormap.from_predefined('strain',N=128) == 1
|
||||||
|
|
||||||
@pytest.mark.parametrize('low,high',[((0,0,0),(1,1,1)),
|
@pytest.mark.parametrize('low,high',[((0,0,0),(1,1,1)),
|
||||||
([0,0,0],[1,1,1])])
|
([0,0,0],[1,1,1])])
|
||||||
|
|
|
@ -40,6 +40,9 @@ class TestCrystal:
|
||||||
alpha=alpha,beta=beta,gamma=gamma)
|
alpha=alpha,beta=beta,gamma=gamma)
|
||||||
assert np.allclose(np.eye(3),np.einsum('ik,jk',c.basis_real,c.basis_reciprocal))
|
assert np.allclose(np.eye(3),np.einsum('ik,jk',c.basis_real,c.basis_reciprocal))
|
||||||
|
|
||||||
|
def test_basis_invalid(self):
|
||||||
|
with pytest.raises(KeyError):
|
||||||
|
Crystal(family='cubic').basis_real
|
||||||
|
|
||||||
@pytest.mark.parametrize('keyFrame,keyLattice',[('uvw','direction'),('hkl','plane'),])
|
@pytest.mark.parametrize('keyFrame,keyLattice',[('uvw','direction'),('hkl','plane'),])
|
||||||
@pytest.mark.parametrize('vector',np.array([
|
@pytest.mark.parametrize('vector',np.array([
|
||||||
|
|
|
@ -44,6 +44,7 @@ class TestGrid:
|
||||||
|
|
||||||
def test_equal(self,default):
|
def test_equal(self,default):
|
||||||
assert default == default
|
assert default == default
|
||||||
|
assert not default == 42
|
||||||
|
|
||||||
def test_repr(self,default):
|
def test_repr(self,default):
|
||||||
print(default)
|
print(default)
|
||||||
|
|
|
@ -364,6 +364,11 @@ class TestOrientation:
|
||||||
table.save(reference)
|
table.save(reference)
|
||||||
assert np.allclose(P,Table.load(reference).get('Schmid'))
|
assert np.allclose(P,Table.load(reference).get('Schmid'))
|
||||||
|
|
||||||
|
def test_Schmid_invalid(self):
|
||||||
|
with pytest.raises(KeyError):
|
||||||
|
Orientation(lattice='fcc').Schmid()
|
||||||
|
|
||||||
|
|
||||||
### vectorization tests ###
|
### vectorization tests ###
|
||||||
|
|
||||||
@pytest.mark.parametrize('lattice',['hP','cI','cF']) # tI not included yet
|
@pytest.mark.parametrize('lattice',['hP','cI','cF']) # tI not included yet
|
||||||
|
@ -505,3 +510,7 @@ class TestOrientation:
|
||||||
for loc in np.random.randint(0,blend,(10,len(blend))):
|
for loc in np.random.randint(0,blend,(10,len(blend))):
|
||||||
assert np.allclose(o[tuple(loc[:len(o.shape)])].to_pole(uvw=v[tuple(loc[-len(v.shape[:-1]):])]),
|
assert np.allclose(o[tuple(loc[:len(o.shape)])].to_pole(uvw=v[tuple(loc[-len(v.shape[:-1]):])]),
|
||||||
o.to_pole(uvw=v)[tuple(loc)])
|
o.to_pole(uvw=v)[tuple(loc)])
|
||||||
|
|
||||||
|
def test_mul_invalid(self):
|
||||||
|
with pytest.raises(TypeError):
|
||||||
|
Orientation.from_random(lattice='cF')*np.ones(3)
|
||||||
|
|
|
@ -102,6 +102,9 @@ class TestResult:
|
||||||
with pytest.raises(AttributeError):
|
with pytest.raises(AttributeError):
|
||||||
default.view('invalid',True)
|
default.view('invalid',True)
|
||||||
|
|
||||||
|
def test_add_invalid(self,default):
|
||||||
|
default.add_absolute('xxxx')
|
||||||
|
|
||||||
def test_add_absolute(self,default):
|
def test_add_absolute(self,default):
|
||||||
default.add_absolute('F_e')
|
default.add_absolute('F_e')
|
||||||
in_memory = np.abs(default.place('F_e'))
|
in_memory = np.abs(default.place('F_e'))
|
||||||
|
|
|
@ -792,6 +792,11 @@ class TestRotation:
|
||||||
R = Rotation.from_random(shape,rng_seed=1)
|
R = Rotation.from_random(shape,rng_seed=1)
|
||||||
assert R == R if shape is None else (R == R).all()
|
assert R == R if shape is None else (R == R).all()
|
||||||
|
|
||||||
|
@pytest.mark.parametrize('shape',[None,5,(4,6)])
|
||||||
|
def test_allclose(self,shape):
|
||||||
|
R = Rotation.from_random(shape,rng_seed=1)
|
||||||
|
assert R.allclose(R)
|
||||||
|
|
||||||
@pytest.mark.parametrize('shape',[None,5,(4,6)])
|
@pytest.mark.parametrize('shape',[None,5,(4,6)])
|
||||||
def test_unequal(self,shape):
|
def test_unequal(self,shape):
|
||||||
R = Rotation.from_random(shape,rng_seed=1)
|
R = Rotation.from_random(shape,rng_seed=1)
|
||||||
|
@ -1124,3 +1129,7 @@ class TestRotation:
|
||||||
weights_r = np.histogramdd(Eulers_r,steps,rng)[0].flatten(order='F')/N * np.sum(weights)
|
weights_r = np.histogramdd(Eulers_r,steps,rng)[0].flatten(order='F')/N * np.sum(weights)
|
||||||
|
|
||||||
assert np.sqrt(((weights_r - weights) ** 2).mean()) < 5
|
assert np.sqrt(((weights_r - weights) ** 2).mean()) < 5
|
||||||
|
|
||||||
|
def test_mul_invalid(self):
|
||||||
|
with pytest.raises(TypeError):
|
||||||
|
Rotation.from_random()*np.ones(3)
|
||||||
|
|
Loading…
Reference in New Issue