From 3dbc3601732a5caab0eb7eaa17c9356014a708ba Mon Sep 17 00:00:00 2001 From: "Gernot J. Kraberger" Date: Tue, 27 Feb 2018 17:45:25 +0100 Subject: [PATCH] BlockStructure: update test --- python/block_structure.py | 9 +++++---- test/blockstructure.ref.h5 | Bin 218432 -> 248384 bytes 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/python/block_structure.py b/python/block_structure.py index 5bb5f823..2dcd7c81 100644 --- a/python/block_structure.py +++ b/python/block_structure.py @@ -376,10 +376,10 @@ class BlockStructure(object): if not compare(x,y): return False return True - elif isinstance(one,int): - return one==two - elif isinstance(one,str): + elif isinstance(one,(int,bool, str, np.bool_)): return one==two + elif isinstance(one,np.ndarray): + return np.all(one==two) elif isinstance(one,dict): if set(one.keys()) != set(two.keys()): return False @@ -391,7 +391,8 @@ class BlockStructure(object): return False for prop in [ "gf_struct_sumk", "gf_struct_solver", - "solver_to_sumk", "sumk_to_solver", "solver_to_sumk_block"]: + "solver_to_sumk", "sumk_to_solver", "solver_to_sumk_block", + "deg_shells"]: if not compare(getattr(self,prop),getattr(other,prop)): return False return True diff --git a/test/blockstructure.ref.h5 b/test/blockstructure.ref.h5 index b290411c9b9158fdd02a1ae0497281b9a0bf8a9c..c9eb42303698a3aad0d5067b8d916f9d52d8ea7b 100644 GIT binary patch literal 248384 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 h`X1N6xySWy?Q#9q>%}tYS&8Q9^9$SM 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