Description
Say I create a simple 1d mesh
topo, geom = mesh.rectilinear([[0,1,2]])
this then has the default boundary tags 'left' and 'right', these can then be called by
domain.boundary['right']
which returns
StructuredTopology<>
If I make a typo and e.g. call
domain.boundary['rigth']
or would call any non-existent boundary, this returns the error message
KeyError: ('right',)
So far so good, but if I would now call both boundaries, including the typo,
domain.boundary['left,rigth']
this throws no error message, and it simply returns the correctly spelled boundary, ignoring the typo-related boundary. This means I can also do operations like
domain.boundary['left,rigth,SomeBoundaryThatDoesNotExist'].integral(myfunction,degree=1234)
and the only way for me to figure out that I have made the typo is by hoping the simulation will not crash and returns a solution where the error is observable near the correct boundary.
I'm using nutils version 6.2, in case that's relevant.
I think this is a bug.