The it cost too much argument is bogus to me. How many grant dollars do we give to colleges to teach parrots how to talk, monkeys how to sign language, to study ant colonies etc?
Clearly the government has the money, it's about priorities. If you want to get an entitlement check every month that comes from citizens taxes you should have to take a drug test to prove you are not blowing it on drugs. These are benefits are a privilege not a right. If that's too hard there is a simple solution, don't collect a check from the government.
The cost certainly hasn't prevented those of us in the military from getting drug tested multiple times per year.