why is this test (and the resulting addition of `getUserAttrs`) necessary? Could you test the generated HTML instead of inspecting the innards of the widget?

I'm hesitant to expose things on components because it inhibits future refactoring.