See, that is the problem. You mention a voting test and everyone flips out and because of that, there is no way to solve the "idiot voter" problem. I'm sorry, but if a person knows nothing of the functions of government, then they should not vote.
It depends whether voting is a right or a priviledge. If voting is a right then the people can do whatever the hell they want with it, including not voting or voting not in their interests. If it is a priviledge then it can be revoked for the common good. Shrug.