model.base: fix object identifier change + add tests

When changing the identifier (id_short, semantic_id, name or type) of and object, all namespace sets of the respective namespace are checked and updated. This may cause an error if the parent namespace has namespace sets that aren't structured by the attribute that is updated, causing an error in NamespaceSet.__contains__() or NamespaceSet.contains_id().

This is fixed by excepting such errors and returning False instead.

Edited by Leon Mauritz Möller

Merge request reports

Loading