The account system has basically a tree structure. I suggest creating a name for the root, instead of using an empty string, i.e. so that the root account has the name “base” for example (“root” could be confused with user access rights). Empty strings are not a good choice for representing data.
So instead of this
{u'': Decimal('1.01000000'), u'test': Decimal('0E-8')}
one would have this
{u'base': Decimal('1.01000000'), u'test': Decimal('0E-8')}